Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I like to use "knife cloudstack server create ..." to build a new VM. My bootstrap template starts off with an "apt-get update" and "apt-get -y upgrade".

The upgrade then halts with:

10.190.113.11 Configuration file `/etc/nscd.conf'
10.190.113.11  ==> Modified (by you or by a script) since installation.
10.190.113.11  ==> Package distributor has shipped an updated version.
10.190.113.11    What would you like to do about it ?  Your options are:
10.190.113.11     Y or I  : install the package maintainer's version
10.190.113.11     N or O  : keep your currently-installed version
10.190.113.11       D     : show the differences between the versions
10.190.113.11       Z     : start a shell to examine the situation
10.190.113.11  The default action is to keep your current version.
10.190.113.11 *** nscd.conf (Y/I/N/O/D/Z) [default=N] ?

So there are really two problems:

Firstly, can I get apt-get to do something by default? Obviously there's no way to provide an answer.

Secondly, I don't even know what the right answer to the question should be. The config file it's replacing came from a template. I haven't yet looked up what "nscd" even does. (Presumably "Y" is the correct answer, but the research involved at the time of the question is daunting.)

share|improve this question

1 Answer 1

If you absolutely do not want to answer any interactive questions, then set the DEBIAN_FRONTEND front end variable to noninteractive.

This can be as easy as DEBIAN_FRONTEND=noninteractive apt-get upgrade.

You will get no messages and the defaults will be chosen. In most cases, this means your configuration files will not be changed, and you will be left with files named like *.dpkg-new for all the places where a configuration file was untouched. You can then manually resolve the changes, or push your local configuration to the system using a configuration management system or whatever.

Secondly, I don't even know what the right answer to the question should be

Hitting the D key will display the difference, which you can then inspect. If you are certain that you have never manually changed that file, choosing Y to replace it is probably safe (you have verified your backups upgrading RIGHT!!). Choosing N just keeps the old file which is also safe 95% of the time, unless the package had major changes, which are usually covered in the changelog/release notes which you also have read before you ran the upgrade/dist-upgrade command.

Past that, simply try the command first in your test environment. See if things don't work. If you are really not sure get the diff, and read the documentation for the package and research.

share|improve this answer
    
You advise DEBIAN_FRONTEND=noninteractive over --force-yes? It sounds like that defaults to NO, and "yes" is more likely correct in this instance. (I can't hit any keys since there's no stdin.) –  Mojo Aug 1 '13 at 15:26

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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