#1 Le 06/06/2010, à 10:26
- arnaud94
Envoi de mail au redemarrage/reboot/extinction
Bonjour,
J'aimerai que mon serveur m'envoie un mail lors du redemarrage, extinction, reboot, etc via l entremise d un script que j'appelerai et qui serait envoyé.
Cependant je ne sais pas où ces scripts doivent être appelés.
Merci beaucoup
Dernière modification par arnaud94 (Le 06/06/2010, à 10:27)
Hors ligne
#2 Le 06/06/2010, à 17:22
- sputnick
Re : Envoi de mail au redemarrage/reboot/extinction
Tu crèe /etc/init.d/alert_mail avec ce contenu :
#!/bin/bash
PATH=/usr/bin:$PATH
[[ $1 == stop ]] || exit 0
case $(perl -pe 's@/etc/rc(\d).d/.*@$1@' <<< $0) in
0) alert=arret ;;
6) alert=reboot ;;
esac
mail <<EOF -s "$alert de $HOSTNAME" -- foobar@petoncule.ru,martin@pecheur.fr
Bonjour,
le serveur $HOSTNAME viens de subir un $alert à $(date).
Voici les personnes connectées à cette heure :
---
$(w)
---
L'uptime et la charge du serveur :
$(uptime)
---
++, le service d'alerte.
EOF
Puis tu rends le script executable + user root et groupe root.
Ensuite tu crèe les liens symboliques qui vont bien :
update-rc.d alert_mail stop 01 0 6 .
Le principe tu l'aura surement compris, c'est que le runlevel 0 est l'arret du system et 6 le reboot, on ne fait que se servir de ce systeme de runlevel.
Attention, la commande mail doit etre installée et configurée.
Perso j'utilise postfix, mais tu peux faire plus léger. Regarde du coté de mailx.
Quand une commande simple d'envoi de mail fonctionnera, tu pourra te servir du script...
Dernière modification par sputnick (Le 06/06/2010, à 20:49)
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#3 Le 10/06/2010, à 11:07
- arnaud94
Re : Envoi de mail au redemarrage/reboot/extinction
Merci beaucoup
Hors ligne
#4 Le 10/06/2010, à 11:14
- Watael
Re : Envoi de mail au redemarrage/reboot/extinction
hmm? si cron est installé, il est possible d'utiliser @reboot dans un "script cron" dans /etc/cron.d
non?
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 10/06/2010, à 12:17
- sputnick
Re : Envoi de mail au redemarrage/reboot/extinction
hmm? cron ne gère pas les priorités comme le font les runlevels.
Ma solution permet de lancer la commande avant que le service mail soit arrêté.
Dans cron avec @reboot, il faudrait vérifier que le réseau est dispo et que le service mail est up avant de lancer la commande...
De plus, cron ne gere pas @halt alors que mon script sait quand le serveur s'arrete ou reboot et adapte le mail en fonction.
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne