Ubuntu dpkg, instalasi non-interaktif


10

Saya mencoba menginstal banyak file .deb tanpa harus berinteraksi dengannya. MySQL Server misalnya akan meminta menu interaktif untuk memasukkan kata sandi administratif pada konfigurasi dpkg.

Saya telah mencoba.

export DEBIAN_FRONTEND=noninteractive && export DEBIAN_PRIORITY=critical && sudo /usr/bin/dpkg -i ./files/*

Saya sadar bahwa saya hanya dapat mengekstrak file tanpa konfigurasi. Saya mencoba membuat skrip bash untuk menggunakan server yang sudah dikonfigurasi sebelumnya untuk instalasi standar Apache, php, mySQL, dll. Namun, "instalasi interaktif" ini menyebabkan masalah.

Ada ide tentang cara menonaktifkannya? atau bekerja?

Terima kasih


Apa yang akan Anda lakukan tentang kata sandi root server MySQL tanpa menjawab pertanyaan?
DerfK

Gunakan mysqladmin untuk mengkonfigurasi server.
james moore

Jawaban:


6

Anda berada di jalur yang benar. Anda pasti ingin menggunakannya DEBIAN_FRONTEND=noninteractive. Untuk pertanyaan-pertanyaan penting yang tidak dapat diabaikan, Anda harus memprasese debconfdatabase dengan jawaban yang diperlukan. The debconfhalaman manual memiliki semua rincian tentang bagaimana untuk mencapai itu.


1
diperlukan untuk "su -" dan menggunakan "ekspor" sebagai root.
james moore

sudo DEBIAN_FRONTEND = instal noninteraktif apt -y package_you_want
aGuegu

4

Untuk antarmuka umum noninteraktif, Anda dapat mencoba:

sudo dpkg-reconfigure debconf -f noninteractive -p critical

Untuk mengkonfigurasi kredensial MySQL, Anda dapat menggunakan file konfigurasi server (mis. ~/.my.cnf), Seperti:

[client]
user=root
password=root

Untuk memilih beberapa pilihan tertentu, gunakan debconf-set-selections, misalnya:

echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections

0

Ini seharusnya bekerja:

$ pkgadd SOMEpkg << MYINPUT

y

some text

/usr/local

n

password

MYINPUT

Saya harus meletakkan garis blnk di antara garis di atas atau diformat sebagai satu garis panjang. Dalam kasus apa pun Anda dapat menggunakan perintah "skrip" untuk menyimpan input Anda selama instalasi kompleks, dan kemudian memodifikasi output menjadi skrip untuk mengotomatiskannya untuk instalasi selanjutnya ( man script).

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.