¿Cómo puedo instalar paquetes apt de forma no interactiva?

21

Si corro:

sudo apt-get --yes install postfix 

o

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

aparece un mensaje interactivo para configurar postfix. Necesito automatizar la instalación de postfix (puedo modificar los archivos de configuración después de la instalación).

¿Hay alguna magia que me permita instalar postfix (y otro paquete) sin intervención humana?

usuario48956
fuente

Respuestas:

32

Establecer el DEBIAN_FRONTENDa noninteractive:

DEBIAN_FRONTEND=noninteractive apt-get ...

Esto también es aplicable a 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 configura noninteractive, debe considerar responder debconfpreguntas utilizando debconf-set-selections.

muru
fuente
1
tenga en cuenta que para usar man 7 debconfen ubuntu 16.04 primero debe instalar debconf-doc, por ejemplosudo apt-get install debconf-doc
the_velour_fog
@the_velour_fog o puede hacer clic en el enlace de la página de manual de arriba y luego hacer clic en 16.04 en la página que se abre.
muru