https://access.redhat.com/discussions/3106621#comment-1196821
Não esqueça que você pode precisar reiniciar por causa das atualizações da biblioteca principal, pelo menos se for glibc. (E também, os serviços podem precisar ser reiniciados após as atualizações).
Se você instalar o yum-utils
pacote, poderá usar um comando chamado needs-restarting
.
Você pode usá-lo para verificar se é necessária uma reinicialização completa devido a atualizações do kernel ou das bibliotecas principais (usando a -r
opção) ou quais serviços precisam ser reiniciados (usando a -s
opção).
needs-restarting -r
retorna 0
se a reinicialização não for necessária e, 1
se for, será perfeito para usar em um script.
Um exemplo:
root@server1:~> needs-restarting -r ; echo $?
Core libraries or services have been updated:
openssl-libs -> 1:1.0.1e-60.el7_3.1
systemd -> 219-30.el7_3.9
Reboot is required to ensure that your system benefits from these updates.
More information:
https://access.redhat.com/solutions/27943
1
-s
opção requer acesso root.needs-restarting
é um plugin DNF . Não suporta-r
ou-s
(ainda).Sobre a comparação de kernels instalados com a execução de um:
Espero que ajude!
fonte
kernel-
string está sendo removida da saída derpm -q
?kernel-
cadeia deve ser removida para compará-la com a saída deuname -r
, que não a contém.Você pode comparar a produção de uname -a com a lista de pacotes de kernel instalados
fonte
uname -a
vs.rpm -q kernel
eneeds-restarting
deyum-utils
fonte
Uma coisa que pode ser útil em termos de "é necessária uma reinicialização" é se existem ou não arquivos removidos / substituídos pela atualização, mas para os quais os arquivos antigos ainda são carregados / usados por processos ativos.
Basicamente, quando o YUM atualiza um arquivo em uso por um processo, o próprio arquivo pode ter sido marcado para exclusão, mas o processo continua usando o arquivo antigo, pois possui um descritor de arquivo aberto para o inode do arquivo antigo.
Um comando para obter uma contagem do número de arquivos antigos ainda em uso:
Esse comando fornecerá uma contagem dos arquivos.
Use isso para ver quais arquivos estão realmente em uso:
Esse comando produzirá uma saída semelhante à seguinte em uma caixa atualizada pelo YUM:
fonte
Verifique se o kernel em execução é o mais recente.
Caso contrário, verifique se o sistema foi reiniciado desde a instalação do kernel.
Caso contrário, reinicie.
fonte
Eu sei que essa pergunta já foi respondida e que as pessoas postaram informações sobre a verificação de kernels mais recentes, além de arquivos excluídos, mas recentemente escrevi um script que verifica as duas. Se qualquer uma das condições for detectada, a reinicialização será agendada para +30 minutos.
fonte
Aqui está a minha versão do código alexm. Você consegue fazer isso:
fonte
install.log install.log.syslog yum.log, você verifica este local, tudo o que tem novo rpm foi instalado
fonte