De vez em quando, vou colocar um SSH em uma caixa com atualizações autônomas e ser recebido com "** É necessário reiniciar o sistema ***" sem informações adicionais.
Meu arquivo '/var/run/reboot-required.pkgs' contém:
linux-image-3.13.0-61-generic
linux-base
linux-base
linux-base
Não me importo de reiniciar, mas não gosto de reiniciar sem ter detalhes de POR QUE devo reiniciar em primeiro lugar. Acima, vejo dois pacotes acionando a mensagem, mas não há explicação além disso.
Existe uma maneira de obter detalhes adicionais sobre o motivo da reinicialização também aparecer no login SSH?
Idealmente, eu gostaria de extrair um arquivo que contenha algo legível por humanos, "O pacote xyz foi atualizado em [data / hora]. Ele precisava modificar os arquivos a, bec, mas não podia porque o sistema bloqueava / faria bloqueie a ação. Durante a próxima reinicialização, os arquivos a, bec serão substituídos. " Mas algo que não é completamente legível por humanos provavelmente também está bem.
Respostas:
Edit: Outra, provavelmente relevante ou útil artigo .
Como você já descobriu, pode encontrar os pacotes que requerem reinicialização no
/var/run/reboot-required.pkgs
Agora você só precisa procurar no changelog do pacote para encontrar as informações que está procurando.
/usr/share/doc/${package_name}
(exemplo :)zless /usr/share/doc/linux-image-3.13.0-61-generic/changelog.Debian.gz
.apt-listchanges
para tornar isso mais conveniente ( 1 , 2 , 3 ).Outra maneira de fazer isso seria usar packages.ubuntu.com .
No seu caso:
fonte
O arquivo finalmente chamado é
/usr/lib/update-notifier/update-motd-reboot-required
(é chamado por/etc/update-motd.d/98-reboot-required
).Dentro da instrução condicional if de um desses arquivos, basta adicionar isto:
Então, por exemplo, seu
/usr/lib/update-notifier/update-motd-reboot-required
arquivo ficaria assim:fonte