Secara otomatis menginstal postfix pada Ubuntu

65

Skrip konfigurasi sistem saya melakukan "apt-get install -y postfix". Sayangnya skrip dihentikan ketika installer postfix menampilkan layar konfigurasi. Apakah ada metode untuk memaksa postfix untuk menggunakan default selama instalasi sehingga skrip otomatis dapat berlanjut sampai akhir?

Apakah penginstal postfix mungkin memeriksa konfigurasi yang ada di / etc / postfix, dan jika ada, tidak mengganggu pengguna dengan layar konfigurasi?

belanda
sumber

Jawaban:

83

Anda dapat menggunakan pra-seeding untuk ini, menggunakan debconf-set-selectionsperintah untuk pra-jawab pertanyaan yang diajukan oleh debconf sebelum menginstal paket.

Sebagai contoh:

debconf-set-selections <<< "postfix postfix/mailname string your.hostname.com"
debconf-set-selections <<< "postfix postfix/main_mailer_type string 'Internet Site'"
apt-get install -y postfix
ℝaphink
sumber
Apa opsi yang tersedia untuk main_mailer_type? Apakah ada daftar untuk referensi di suatu tempat tanpa harus menjalankannya secara interaktif dulu?
beporter
2
beporter, rupanya: No configuration, Internet site, Internet with smarthost, Satellite system, Local onlynamun sepertinya Situs Internet umumnya pilihan terbaik bagi kebanyakan orang: bugs.debian.org/cgi-bin/bugreport.cgi?bug=450787
willbradley
1
Bisakah beberapa orang menjelaskan bagaimana kita bisa mendapatkan string ini untuk paket lain? (Kerberos dalam kasus saya): "postfix postfix / mailname string your.hostname.com" Maksudku, apa yang pertama "postfix", dan yang kedua "postfix /" dan kemudian "mailfix", dll .... di mana bisa saya mendapatkan string untuk paket saya?
Mohammed Noureldin
Saya tahu pertanyaannya adalah tentang Ubuntu tetapi saya perlu ini untuk Amazon Linux (AWS) yang merupakan cabang dari RHEL ... Ada yang?
TheStoryCoder
@MohammedNoureldin Melihat man debconf-set-selections, saya melihat ada juga debconf-get-selectionsyang dump pilihan apa yang telah dibuat pada sistem saat ini, dalam format yang digunakan untuk input di sini. Anda dapat mengatur satu sistem secara manual, kemudian jalankan itu untuk melihat apa yang akan digunakan untuk kerberos.
morganwahl
25

Jika Anda menginginkan ini secara global:

dpkg-reconfigure debconf

Kemudian konfigurasikan menjadi " noninteraktif "

Jika Anda hanya menginginkannya untuk menjalankan instalasi tunggal:

DEBIAN_FRONTEND=noninteractive apt-get install PACKAGE
David Rickman
sumber
2
Anda juga dapat melakukannya export DEBIAN_FRONTEND=noninteractiveuntuk mengaturnya secara global tanpa pengawasan.
Mahn
Saya menemukan ini bekerja dengan baik di Ubuntu 14.04 untuk pengaturan default 'deliver to local / var / mail', sedangkan debconf-set-selectionsjawaban di atas tidak.
RichVel