190

I have a server build script which uses apt-get to install packages. It then puts pre-written configuration files directly in place, so the interactive post-install configuration dialog in packages such as postfix is not needed. How do I skip this stage of the installation? It creates a piece of manual intervention that I would rather avoid.

I am aware of the -qq option, but the manpage warns against using it without specifying a no-action modifier. I do want to perform an action, I just want to suppress a specific part of it.

2 Answers 2

293

You can do a couple of things for avoiding this. Setting the DEBIAN_FRONTEND variable to noninteractive and using -y flag. For example:

export DEBIAN_FRONTEND=noninteractive
apt-get -yq install [packagename]

If you need to install it via sudo, use:

sudo DEBIAN_FRONTEND=noninteractive apt-get -yq install [packagename]
2
  • 39
    This worked for me until one day it didn't. Some kind of "urgency=high" message. You need DEBIAN_FRONTEND, y AND the q flag set, i.e. DEBIAN_FRONTEND=noninteractive apt-get -yq install [packagename]
    – Jeff Mixon
    Jul 20, 2016 at 6:45
  • Did no work for me when installing iptables-persistent :/ Oct 16, 2020 at 19:11
1

I've found that setting -yqq and DEBIAN_FRONTEND=noninteractive don't work in some cases where apt-get stalls at the end with

Restarting the system to load the new kernel will not be handled automatically, so you should consider
rebooting. [Return]

It will not exit until after you press the enter key.

My solution to this is to do everything everyone else suggested, but also with yes piped to apt-get as follows

yes | sudo DEBIAN_FRONTEND=noninteractive apt-get -yqq purge 'my-package'

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.