apt-get install tanpa debconf prompt

31

Saya ingin menginstal chef melalui apt non-interaktif, tetapi secara default, instalasi apt menampilkan prompt ini:

untuk memasang chef prompt

Apakah ada cara untuk melewati langkah ini selama instalasi atau memberikan nilai untuk menginstal? Saya hanya menggunakan chef-solo, jadi sebenarnya tidak perlu komponen server, jadi cukup tekan return pada prompt ini.

ljs.dev
sumber

Jawaban:

31

Anda dapat mengkonfigurasi debconf menjadi prompt non-interaktif:

sudo DEBIAN_FRONTEND=noninteractive aptitude install -y -q chef

Jika Anda menemukan kunci lengkap, Anda juga dapat melakukan pra-konfigurasi nilai default:

echo package package/key {boolean,string} {true, some string} | sudo debconf-set-selections
sudo apt-get install package

Lebih tepatnya:

echo chef chef/chef_server_url string | sudo debconf-set-selections

Untuk menemukan kunci, setelah menginstal Anda dapat mencari:

sudo debconf-get-selections | grep chef
# URL of Chef Server (e.g., http://chef.example.com:4000):
chef    chef/chef_server_url    string  
Braiam
sumber
Dalam beberapa lingkungan debconf-get-selectionstidak mungkin tersedia, gunakan debconf-show PACKAGENAMEkemudian
Jaleks
Jika debconf-get-selectionstidak tersedia, coba instal paket debconf-utils.
daveloyall
3
Juga di Ubuntu 16.04 LTS ada debconf-show packageyang akan menampilkan semua opsi yang tersedia untuk paket yang diberikan (setelah diinstal) dengan cara yang sama seperti yang debconf-get-selectionsdilakukan (jika debconf-get-selectionshilang)
Dalibor Filus