Script vor Shutdown ausführen

  • #1
D

deb01

Aktives Mitglied
Themenersteller
Dabei seit
13.07.2001
Beiträge
38
Reaktionspunkte
0
Hallo,

ich möchte erreichen, dass unser Webserver noch eine E-Mail an unseren Administrator schickt, bevor er neugestartet wird.

Dazu habe ich ein Script geschrieben, es auf dem Server (RedHat 9) in /etc abgelegt und in /etc/rc.d/rc6.d verlinkt (Dateiname: K01adminmessage).

Leider wird das Script nicht ausgeführt. Wenn ich es von Hand mit ./K01adminmessage start oder stop starte, verschickt es die entsprechende Meldung.

Vielleicht fällt euch ja was dazu ein...

Danke, David

Hier das Script:

#!/bin/sh
#Script to Send Notification of Shutdown Initiation

# Source function library.
. /etc/rc.d/init.d/functions

[email protected]

start() {
echo Successful Startup. | mail -s Startup -c $pager root
sleep 10
}
stop() {
echo Shutdown Initiated. | mail -s Shutdown -c $pager root
sleep 10
}
test() {
echo Sending Test Page. | mail -s TestPage -c $pager root
sleep 10
}

case $1 in
start)
start
;;
stop)
stop
;;
test)
test
;;
*)
echo $Usage: $0 {start|stop|test}
esac

exit 0
 
  • #2
beim init 0, 6 oder reboot wird der befehl /sbin/killall5 -15 und 5 sekunden später /sbin/killall5 -9 abgesetzt d.h. alle aktiven dienste werden beendet, so daß dein script zu dem zeitpunkt gar keine chance hat, die mail zu versenden. d.h. du mußt dir eine andere strategie ausdenken. ich würde das ganze andersrum aufziehn und die mail versenden wenn der webserver neu gestartet wird, dann laufen alle dienste schon und die mail kommt an ...

greetz

hugo
 
  • #3
Erster Ansatzpunkt in einem solchen Fall sind die Dateirechte des Scriptes, vielleicht darf der Start/Stop Daemon ihn nicht ausführen?
Zweiter Ansatzpunkt, wird der Script überhaupt ausgeführt, dann müßte ja dank sleep 10 beim Herunterfahren eine Gedenkpause auftreten. Den sleep Befehl kannst Du übrigens auch nur einmal in den globalen Teil des Scriptes (vor die start/stop/... Befehle) setzen.
Wird die Mail beim Start gesendet? Vielleicht ist die sleep Zeit sogar noch zu kurz, um die Mail sicher zu senden, weil der MTA inzwischen schon gestoppt wurde.
Außerdem: init Scripte sollten in /etc/init.d liegen.
Die killall Theorie hat einen entscheidenden Haken: würde sie so stimmen, wären alle Links z.B. in /etc/rc.d/rc6.d überflüssig.

MfG
 
Thema:

Script vor Shutdown ausführen

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben