web-dev-qa-db-fra.com

Unattended-upgrades mail uniquement en cas d'erreur ou de redémarrage?

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!

5
Whatsisname

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.

6
azimut