Como posso saber se é necessário reiniciar após a atualização?

28

Eu tenho 4 servidores com o Debian Wheezy OS. Tenho o Apticron instalado que me informa sobre atualizações. As atualizações do Debian são realizadas com tanta frequência que, quando eu termino de atualizar o último dos 4 servidores, recebo um novo email sobre novas atualizações no primeiro servidor. Tento atualizar todos os servidores quando recebo uma notificação, mas nunca sei se é necessário reinicializar os servidores. Eu li que, se o diretório "/var/run"contiver arquivo "reboot-required", tenho que reiniciar o servidor. Mas nunca vi esse arquivo "/var/run". Como posso saber quando a reinicialização é necessária? Não quero reiniciar meus servidores sempre que instalar novas atualizações, caso não seja necessário.

Entendo que, se eu atualizar o PHP ou MySQL, etc, não preciso reiniciar o servidor, mas as atualizações geralmente contêm muitas "lib ...".

Abaixo estão 9 atualizações (recebi esta semana).

krb5-locales 1.10.1+dfsg-5+deb7u3
libdbus-1-3 1.6.8-1+deb7u6
libgssapi-krb5-2 1.10.1+dfsg-5+deb7u3
libk5crypto3 1.10.1+dfsg-5+deb7u3
libkrb5-3 1.10.1+dfsg-5+deb7u3
libkrb5support0 1.10.1+dfsg-5+deb7u3
libruby1.8 1.8.7.358-7.1+deb7u2
libxml2 2.8.0+dfsg1-7+wheezy3
ruby1.8 1.8.7.358-7.1+deb7u2

Não faço ideia do que é "libkrb, libgssapi" etc. Como posso detectar se é necessário reiniciar? Não sugerir a instalação de UnattendedUpgrades para permitir a atualização automática dos servidores, pois isso pode causar a desativação de sites na Web, se algo não estiver correto.

user1406271
fonte
Se você aplicar apenas o securityfluxo e não atualizações gerais, não receberá tantas atualizações.
poolieby

Respostas:

31

Verifique checkrestartno debian-goodiespacote. Ele mostra quais processos usam as versões antigas das bibliotecas que você atualizou. Se você não conseguir remover todos os processos dessa lista, precisará de uma reinicialização :)

Além disso (como YuKYuK disse), sempre reinicie após uma atualização do kernel!

Nat
fonte
10
Como alternativa, faça o checkout needrestart. linux-audit.com/…
ypid 31/08/2015
9

cat /var/run/reboot-required.pkgsver 'service' waiting for a reload. Nada precisa de uma reinicialização, apenas atualização do kernel (e Windows :)).

Ou no Debian: lsof | grep lib | grep DEL

YuKYuK
fonte
Esqueça de dizer: ele lista todas as bibliotecas atualizadas. Depois disso, você precisa reiniciar os aplicativos com dependências.
YuKYuK 12/02
Como escrevi na minha pergunta, nunca vi o arquivo /var/run/reboot-required.pkgs. Verifico esta pasta após cada atualização, mas nada.
User1406271
lsof | grep lib | grep DEL para ver a lib esperando para ser "atualizada"
YuKYuK 12/02/15
2
Sim e o comando mostra bibliotecas aguardando para serem "atualizadas" e algumas bibliotecas aguardam uma reinicialização de "serviço". Somente a atualização do kernel precisa reiniciar o sistema (porque o kernel é o kernel :).
YuKYuK
3
Nota sobre o Debian Jessie: reboot-notifieré um pequeno pacote que não é instalado por padrão que anexa esse arquivo quando uma reinicialização é necessária para carregar um kernel atualizado. reboot-notifierpode ser usado como alternativa para a update-notifier-commonqual foi removido no Debian Jessie. Consulte também: serverfault.com/a/92939/177172 .
ypid 21/01
2

Só para adicionar isso, tive o mesmo problema com meus servidores e escrevi um script de atualização em que verifico / var / run / como YuKYuK sugeriu:

test -f /var/run/reboot-required && echo rebooting && sudo reboot
min hundje
fonte