Estou executando um pequeno script para atualizar e atualizar algumas máquinas Debian, mas desde algumas semanas ele sempre parou devido a algumas "notícias" que o terminal está mostrando. Ao atualizar manualmente eu vejo um "fullscreen" (encontrar screenshot abaixo) de algum software, o que força a pressionar "q". Eu não quero mudar nenhum software, então eu gostaria de encontrar uma solução, que permite apenas pular todas as telas interativas, enquanto atualizo.
Geralmente eu estava bem usando:
sudo apt-get update -y
sudo apt-get upgrade -y
Depois que percebi que o processo de atualização é interrompido sem qualquer tempo limite, também tentei usar a solução desse postar :
sudo DEBIAN_FRONTEND=noninteractive apt-get -y upgrade
mas infelizmente com o mesmo resultado. Alguém tem uma solução para apenas atualizar uma máquina sem interrupções?
UPDATE:
Primeiroeuacabeideexecutar:
DEBIAN_FRONTEND=noninteractive
Secondaryeditouoarquivo/etc/dpkg/dpkg.cfgpara:
#dpkgconfigurationfile##Thisfilecancontaindefaultoptionsfordpkg.Allcommand-line#optionsareallowed.Valuescanbespecifiedbyputtingthemafter#theoption,separatedbywhitespaceand/oran'='sign.##Donotenabledebsig-verifybydefault;sincethedistributionisnotusing#embeddedsignatures,debsig-verifywouldrejectallpackages.no-debsig#Logstatuschangesandactionstoafile.log/var/log/dpkg.logforce-confoldforce-confdef
Finalmenteeuexecutei:
sudoapt-getupgrade-yq
Issofezotruquesobre"pressione q para sair" - ótimo!
Acho que também está trabalhando para combinar os comandos em execução:
DEBIAN_FRONTEND=noninteractive
sudo apt-get -o Dpkg::Options::="--force-confnew --force-confdef" --force-yes -yq upgrade
Infelizmente, outro problema semelhante aparece agora:
Também tentar editar /etc/apt/listchanges.conf não funcionou, infelizmente:
[apt]
frontend=none
email_address=root
confirm=0
save_seen=/var/lib/apt/listchanges.db
which=news
SOLUÇÃO :
Eu notei (desculpe se isso é óbvio para um usuário Linux avançado) que o bash age de forma diferente, quando você executa um comando via script do que inserindo diretamente o comando no console.
Em suma, foi suficiente para minha solução de script adicionar o parâmetro -yp e definir o DEBIAN_FRONTEND . Para garantir, eu também editei o arquivo /etc/dpkg/dpkg.cfg .
#!/bin/bash
DEBIAN_FRONTEND=noninteractive
export DEBIAN_FRONTEND
apt-get -yq update
apt-get -yq upgrade