Um sub-par caminho --- talvez específico para o Ubuntu --- é verificar a existência deste arquivo:
/var/run/reboot-required
Se existir, uma reinicialização é necessária.
Assim, uma função Bash em .bash_rc
(e co.) poderia fazer o trabalho:
function needs_reboot {
if [ -f /var/run/reboot-required ]; then
read -p "Restart needed. Reboot? (y/N) " answer;
if [ "$answer" = "y" -o "$answer" = "Y" ]; then
reboot;
fi
else
echo "No restart";
fi
}
De onde vem essa ideia? O MOTD é atualizado no momento do login pelo processo pam_motd
, lendo seu conteúdo no diretório /etc/update-motd.d
. Neste diretório, há um script /etc/update-motd.d/98-reboot-required
(no Ubuntu 12_04) que verifica a existência de nosso /var/run/reboot-required
. É aparentemente como um conselho de reinicialização é decidido. Então, a função acima apenas faz a mesma verificação, de forma interativa.
Eu realmente gostaria de obter isso diretamente do APT, mas por enquanto isso funciona ...