Como posso instalar pacotes apt não interativamente?

18

Se eu correr:

sudo apt-get --yes install postfix 

ou

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

um prompt interativo aparece para configurar o postfix. Eu preciso automatizar a instalação do postfix (eu posso modificar os arquivos de configuração após a instalação).

Existe alguma mágica que me permite instalar o postfix (e outro pacote) sem intervenção humana?

    
por user48956 04.12.2014 / 01:37

1 resposta

26

Defina DEBIAN_FRONTEND como noninteractive :

DEBIAN_FRONTEND=noninteractive apt-get ...

Isso também se aplica a dpkg --reconfigure , dpkg-configure , etc.

Em 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.

Se você definir noninteractive , deverá considerar responder debconf de perguntas usando debconf-set-selections .

    
por muru 04.12.2014 / 01:44