Força o “dpkg --configure” não interativo ao usar o apt-get install

2

Estou instalando pacotes no servidor remoto, usando ssh :

ssh root@my-host "DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true apt-get --quiet --yes install w3m"

mesmo que eu tenha definido DEBIAN_FRONTEND=noninteractive , a instalação ficará presa na pergunta a seguir e eu tenho que pressionar enter manualmente:

Configuration file '/etc/w3m/config'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** config (Y/I/N/O/D/Z) [default=N] ? 

Eu suspeito que a pergunta está sendo feita por dpkg --configure -a e não por apt-get e, portanto, não-interativo é ignorado.

Como posso automatizar isso e ter a opção padrão selecionada automaticamente, sem precisar perguntar?

    
por Martin Vegter 13.01.2018 / 14:37

1 resposta

5

Isso é tratado por dpkg , e você pode forçá-lo a escolher a opção padrão usando a opção --force-confdef . Preste atenção no aviso da documentação :

Warning: These options are mostly intended to be used by experts only. Using them without fully understanding their effects may break your whole system.

Para fornecer essa opção quando dpkg é invocado pelo APT, você precisa adicioná-lo às configurações do APT, por exemplo, adicionando a seguinte linha a /etc/apt/apt.conf :

DPkg::options { "--force-confdef"; };

ou, para uma única invocação:

apt-get -o DPkg::Options::=--force-confdef ...
    
por 13.01.2018 / 14:41

Tags