J'ai des mises à niveau sans surveillance installées sur plusieurs serveurs, certaines versions 12 ou 14. J'aimerais activer MailOnlyOnError pour eux, mais j'aimerais quand même recevoir des notifications par courrier électronique lorsqu'une mise à jour nécessite un redémarrage.
Est-ce que je recevrai toujours des avis de "redémarrage requis" avec MailOnlyOnError activé?
Merci!
Voici une solution basée sur une réponse dans cette discussion . L'astuce est que la demande de redémarrage est indiquée par la présence du fichier /var/run/reboot-required
.
Créer un fichier /usr/local/sbin/email_update_required
avec le contenu
if [ -f /var/run/reboot-required ]; then
echo "A reboot is required following updates to server `hostname`" | mail -s "Reboot Required" <mail-address>
fi
Ajustez <mail-address>
(par exemple sur root
ou votre adresse électronique personnelle). Vérifiez les autorisations et rendez le fichier exécutable.
Mettez la ligne suivante dans votre crontab racine (Sudo crontab -e
)
00 08 * * * /usr/local/sbin/email_update_required
(Il exécute le script email_update_required tous les jours à 8 heures, modifiez-le si nécessaire.)
J'ai appliqué la méthode ci-dessus à un serveur Ubuntu 14.04 avec unattended-upgrades
et MailOnlyOnError true"
, et cela fonctionne.
Néanmoins, il serait bien d’avoir un moyen plus "officiel" d’Ubuntu ou de mettre à niveau sans surveillance pour recevoir ces courriers de notification. Un commutateur similaire à MailOnlyOnError
serait génial.