web-dev-qa-db-fra.com

Comment puis-je installer les packages apt de manière non interactive?

Si je cours:

Sudo apt-get --yes install postfix 

ou

Sudo bash -c 'yes | apt-get --yes install postfix'

une invite interactive apparaît pour configurer postfix. J'ai besoin d'automatiser l'installation de postfix (je peux modifier les fichiers de configuration après l'installation).

Y at-il une magie qui me permet d’installer postfix (et un autre paquet) sans intervention humaine?

21
user48956

Définissez le DEBIAN_FRONTEND sur noninteractivename__:

DEBIAN_FRONTEND=noninteractive apt-get ...

Ceci s'applique également à dpkg --reconfigure, dpkg-configure, etc.

De man 7 debconf :

noninteractive
      This  is  the anti-frontend. It never interacts with you at all,
      and makes the default answers be  used  for  all  questions.  It
      might  mail  error messages to root, but that's it; otherwise it
      is completely silent and unobtrusive,  a  perfect  frontend  for
      automatic installs. If you are using this front-end, and require
      non-default answers to questions, you will need to  preseed  the
      debconf  database;  see  the section below on Unattended Package
      Installation for more details.

Si vous définissez noninteractivename__, vous devriez envisager de répondre aux questions debconfen utilisant debconf-set-selections .

31
muru