je n'ai jamais touche a un seul script Linux de ma vie. J'utilise Gkrellmd pour avoir un oeil sur mon serveur, mais a chaque que je redemarre mon serveur je dois relancer gkrellmd a la main. Je tente donc de creer un script de demarrage. J'ai pique un script de ez-ipupdate et j'ai remplace les commandes comme ceci:
- Code: Tout sélectionner
# Source function library.
. /etc/rc.d/init.d/functions
# See how we were called.
RETVAL=0
prog="gkrellmd"
start() {
# Start daemons.
if [ -n "`/sbin/pidof gkrellmd`" ]; then
echo -n $"$prog: already running"
return 1
fi
echo -n $"Starting $prog: "
#nice -20 gkrellmd
#gkrellmd
daemon gkrellmd
RETVAL=$?
usleep 100000
if [ -z "`/sbin/pidof gkrellmd`" ]; then
# The child processes
# have died after
# fork()ing, e.g.
# because of a
# broken
# config file
RETVAL=1
fi
[ $RETVAL -ne 0 ] && failure $"$prog startup"
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/gkrellmd && success $"$prog startup"
echo
return $RETVAL
}
stop() {
# Stop daemons.
echo -n $"Shutting down $prog: "
killproc gkrellmd
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/gkrellmd
return $RETVAL
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload)
stop
start
RETVAL=$?
;;
status)
status gkrellmd
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit $RETVAL
La commande status et stop ont l'air de marcher. Quand je la commande start, j'ai le message:
- Code: Tout sélectionner
Démarrage de gkrellmd :
Et puis ca reste comme ca. Ca attend. Ou est ma faute? J'ai juste creer un fichier /etc/init.d/gkrellmd-service contenant les lignes de codes que je viens de decrire. Ai-je oublie un truc (genre declarer gkrellmd-service dans un fichier de conf)?
Merci.