Crontab
IvyAlice
Messages postés
397
Statut
Membre
-
IvyAlice Messages postés 397 Statut Membre -
IvyAlice Messages postés 397 Statut Membre -
Bonjour à tous,
Voici mon problème, je voulais faire redémarrer samba tous les soir par le cron, mais ça ne marche pas .
J'avais fait:
- crontab -e
- 0 21 * * * /etc/init.d/samba restart
- esc : wq (pour sauvegarder)
Et ça me disait qu'il avait sauver le nouveau fichier. si je le ré-ouvre, je vois bien ma ligne.
Est-ce qu'il y aurait une erreur dans cette ligne, ou est-ce que je dois relancer un démon quelconque ou faire exécuter la ligne par un utilisateur spécifique pour que ça marche ( ça tourne sur une debian etch )
(il y a bien un 'samba' dans '/etc/init.d', et qui fonctionne lorsqu'on le lance à la main)
Merci d'avance pour votre aide.
Amicalement, Ivy
Voici mon problème, je voulais faire redémarrer samba tous les soir par le cron, mais ça ne marche pas .
J'avais fait:
- crontab -e
- 0 21 * * * /etc/init.d/samba restart
- esc : wq (pour sauvegarder)
Et ça me disait qu'il avait sauver le nouveau fichier. si je le ré-ouvre, je vois bien ma ligne.
Est-ce qu'il y aurait une erreur dans cette ligne, ou est-ce que je dois relancer un démon quelconque ou faire exécuter la ligne par un utilisateur spécifique pour que ça marche ( ça tourne sur une debian etch )
(il y a bien un 'samba' dans '/etc/init.d', et qui fonctionne lorsqu'on le lance à la main)
Merci d'avance pour votre aide.
Amicalement, Ivy
16 réponses
Je regarde dans les log du nmbd de samba, et on voit bien qu'il ne s'est pas arrêter car il n'y a plus de log depuis le dernier redémarrage, en plus on utilise nagios et quand j'arrive le matin et que je vois que samba est up depuis plusieurs jours, je me dit qu'il n'a pas redémarré.
(en plus comme tu le vois j'ai bêtement choisis 21h pour tester, et il y a encore des gens qui bossent à cette heure, s'ils avaient été coupé. même brièvement, ils me l'auraient fait savoir... enfin ... en principe ^_^ )
je peux voir ça ailleurs ? par ce que dans le log de samba log.smbd j'ai rien de relatif au reboot de samba
(en plus comme tu le vois j'ai bêtement choisis 21h pour tester, et il y a encore des gens qui bossent à cette heure, s'ils avaient été coupé. même brièvement, ils me l'auraient fait savoir... enfin ... en principe ^_^ )
je peux voir ça ailleurs ? par ce que dans le log de samba log.smbd j'ai rien de relatif au reboot de samba
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
Regarde dans les mail, pour voir ce que dit cron.
Regarde dans /var/log/syslog pour voir si le cron s'exécute.
Regarde dans les mail, pour voir ce que dit cron.
Regarde dans /var/log/syslog pour voir si le cron s'exécute.
Bonsoir,
Si tu fais un "crontab -l" (lettre l comme Lima) est-ce que tu vois bien ta tâche ?
A plus.
Si tu fais un "crontab -l" (lettre l comme Lima) est-ce que tu vois bien ta tâche ?
A plus.
Salut,
peut-être un problème d'espace...
Essaie de mettre ta commande dans un script et de l'appeler dans ton cron...
Trace également la ligne d'exécution :
0 21 * * * /home/smbrestart.sh 1 >>/home/trace.txt 2>&1
peut-être un problème d'espace...
Essaie de mettre ta commande dans un script et de l'appeler dans ton cron...
Trace également la ligne d'exécution :
0 21 * * * /home/smbrestart.sh 1 >>/home/trace.txt 2>&1
Bonjour jivef et blux,
Merci pour vos réponses.
Alors pour répondre à vos questions, non je ne vois pas de log dans le syslog par contre je vois bien ma ligne avec crontab -l
Merci pour vos réponses.
Alors pour répondre à vos questions, non je ne vois pas de log dans le syslog par contre je vois bien ma ligne avec crontab -l
Je peux faire ça comment ?
Bon c'est pratique de logger samba, mais je SAIS qu'il ne fonctionne pas( pour les raisons citées plus haut)
Donc c'est plutôt ça qui m'intéresse avant tout
Bon c'est pratique de logger samba, mais je SAIS qu'il ne fonctionne pas( pour les raisons citées plus haut)
Donc c'est plutôt ça qui m'intéresse avant tout
D'oh !!j'ai raté ce message Oo
Effectivement les autres commandes du cron appellent toutes des scriptes
donc j'ai fait un scripte restart_samba.sh avec
#!/bin/bash
/etc/init.d/samba restart
Je l'ai rendu exécutable avec
"chmod 755 restart_samba.sh"
Le l'appel (mais à 6h du matin cette fois) depuis crontab avec :
0 6 * * * /root/misc/restart_samba.sh >>/root/misc/rsSmb.txt 2>&1
Là, et maintenant il n'y à plus qu'à 'attendre' demain pour voir si ça fonctionne ou pas.
Je vous tient au courant,
Merci,
Ivy
Effectivement les autres commandes du cron appellent toutes des scriptes
donc j'ai fait un scripte restart_samba.sh avec
#!/bin/bash
/etc/init.d/samba restart
Je l'ai rendu exécutable avec
"chmod 755 restart_samba.sh"
Le l'appel (mais à 6h du matin cette fois) depuis crontab avec :
0 6 * * * /root/misc/restart_samba.sh >>/root/misc/rsSmb.txt 2>&1
Là, et maintenant il n'y à plus qu'à 'attendre' demain pour voir si ça fonctionne ou pas.
Je vous tient au courant,
Merci,
Ivy
Re,
Là, et maintenant il n'y à plus qu'à 'attendre' demain pour voir si ça fonctionne ou pas.
Pourquoi attendre demain?
Tu peux tester toute de suite (remplace H et M avec l'heure et minute désirer, par exemple après une minute selon ton horologe système)
Là, et maintenant il n'y à plus qu'à 'attendre' demain pour voir si ça fonctionne ou pas.
Pourquoi attendre demain?
Tu peux tester toute de suite (remplace H et M avec l'heure et minute désirer, par exemple après une minute selon ton horologe système)
M H * * * /root/misc/restart_samba.sh >>/root/misc/rsSmb.txt 2>&1
N'oublie pas le 1 avant >>, car des fois, ça permet de trouver des choses qui sont pas trop standard...
"Ok, j'ai pas vu, mais franchement entre 12h00 et 14h00 il faut appeller les gens au bureau, il y forte chance qu'il ne soient pas là ;-DDD "
C'est peut-être vrai chez les fonctionnaires, mais nous on est indépendant, et qui plus est avec des horaires souples, ça fait qu'entre 6h45 et 9h30, parfois même plus tard, il y a quasi toujours quelqu'un (c'est bien soulant d'ailleurs)
"Et puis un admin système peut envoyer un message en disant que entre tel et tel heure il y aura un test sur le serveur, mais bon.."
C'est vrai mais je me gène ^_^
C'est peut-être vrai chez les fonctionnaires, mais nous on est indépendant, et qui plus est avec des horaires souples, ça fait qu'entre 6h45 et 9h30, parfois même plus tard, il y a quasi toujours quelqu'un (c'est bien soulant d'ailleurs)
"Et puis un admin système peut envoyer un message en disant que entre tel et tel heure il y aura un test sur le serveur, mais bon.."
C'est vrai mais je me gène ^_^
Bonjour à tous,
bon, on a eu quelque problèmes entre temps , d'où le fait que je ne réponde que maintenant
Résultat, mon samba n'a pas redémarré, voici la ligne du crontab :
0 6 * * * /root/misc/restart_samba.sh >>/root/misc/rsSmb.txt 2>&1
et dans le rsSmb.txt:
Stopping Samba daemons: nmbd/etc/init.d/samba: line 46: start-stop-daemon: command not found
smbd/etc/init.d/samba: line 58: start-stop-daemon: command not found
.
Starting Samba daemons: nmbd/etc/init.d/samba: line 28: start-stop-daemon: command not found
failed!
Quelqu'un pourrait-il éclairé ma lanterne (rouge) ?
Merci d'avance
bon, on a eu quelque problèmes entre temps , d'où le fait que je ne réponde que maintenant
Résultat, mon samba n'a pas redémarré, voici la ligne du crontab :
0 6 * * * /root/misc/restart_samba.sh >>/root/misc/rsSmb.txt 2>&1
et dans le rsSmb.txt:
Stopping Samba daemons: nmbd/etc/init.d/samba: line 46: start-stop-daemon: command not found
smbd/etc/init.d/samba: line 58: start-stop-daemon: command not found
.
Starting Samba daemons: nmbd/etc/init.d/samba: line 28: start-stop-daemon: command not found
failed!
Quelqu'un pourrait-il éclairé ma lanterne (rouge) ?
Merci d'avance
Commence par nous afficher le contenu de :
peut être y verrons-nous un peu mieux ;-))
cat -n /etc/init.d/samba
peut être y verrons-nous un peu mieux ;-))
Bonjour jipicy et blux,
alors, /root/misc/restart_samba.sh :
#............................................................................................................................
#!/bin/bash
/etc/init.d/samba restart
#............................................................................................................................
Quand je tape cette commande à la main il me semble que ça fonctionne .
et /etc/init.d/samba :
#............................................................................................................................
#!/bin/sh
# Defaults
RUN_MODE="daemons"
# Reads config file (will override defaults above)
[ -r /etc/default/samba ] && . /etc/default/samba
NMBDPID=/var/run/samba/nmbd.pid
SMBDPID=/var/run/samba/smbd.pid
# clear conflicting settings from the environment
unset TMPDIR
# See if the daemons are there
test -x /usr/sbin/nmbd -a -x /usr/sbin/smbd || exit 0
. /lib/lsb/init-functions
case "$1" in
start)
log_daemon_msg "Starting Samba daemons" "nmbd"
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/nmbd -- -D; then
log_end_msg 1
exit 1
fi
if [ "$RUN_MODE" != "inetd" ]; then
log_progress_msg "smbd"
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D; then
log_end_msg 1
exit 1
fi
fi
log_end_msg 0
;;
stop)
log_daemon_msg "Stopping Samba daemons" "nmbd"
start-stop-daemon --stop --quiet --pidfile $NMBDPID
# Wait a little and remove stale PID file
sleep 1
if [ -f $NMBDPID ] && ! ps h `cat $NMBDPID` > /dev/null
then
# Stale PID file (nmbd was succesfully stopped),
# remove it (should be removed by nmbd itself IMHO.)
rm -f $NMBDPID
fi
if [ "$RUN_MODE" != "inetd" ]; then
log_progress_msg "smbd"
start-stop-daemon --stop --quiet --pidfile $SMBDPID
# Wait a little and remove stale PID file
sleep 1
if [ -f $SMBDPID ] && ! ps h `cat $SMBDPID` > /dev/null
then
# Stale PID file (nmbd was succesfully stopped),
# remove it (should be removed by smbd itself IMHO.)
rm -f $SMBDPID
fi
fi
log_end_msg 0
;;
reload)
log_daemon_msg "Reloading /etc/samba/smb.conf" "smbd only"
start-stop-daemon --stop --signal HUP --pidfile $SMBDPID
log_end_msg 0
;;
restart|force-reload)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: /etc/init.d/samba {start|stop|reload|restart|force-reload}"
exit 1
;;
esac
exit 0
#............................................................................................................................
Merci
alors, /root/misc/restart_samba.sh :
#............................................................................................................................
#!/bin/bash
/etc/init.d/samba restart
#............................................................................................................................
Quand je tape cette commande à la main il me semble que ça fonctionne .
et /etc/init.d/samba :
#............................................................................................................................
#!/bin/sh
# Defaults
RUN_MODE="daemons"
# Reads config file (will override defaults above)
[ -r /etc/default/samba ] && . /etc/default/samba
NMBDPID=/var/run/samba/nmbd.pid
SMBDPID=/var/run/samba/smbd.pid
# clear conflicting settings from the environment
unset TMPDIR
# See if the daemons are there
test -x /usr/sbin/nmbd -a -x /usr/sbin/smbd || exit 0
. /lib/lsb/init-functions
case "$1" in
start)
log_daemon_msg "Starting Samba daemons" "nmbd"
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/nmbd -- -D; then
log_end_msg 1
exit 1
fi
if [ "$RUN_MODE" != "inetd" ]; then
log_progress_msg "smbd"
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D; then
log_end_msg 1
exit 1
fi
fi
log_end_msg 0
;;
stop)
log_daemon_msg "Stopping Samba daemons" "nmbd"
start-stop-daemon --stop --quiet --pidfile $NMBDPID
# Wait a little and remove stale PID file
sleep 1
if [ -f $NMBDPID ] && ! ps h `cat $NMBDPID` > /dev/null
then
# Stale PID file (nmbd was succesfully stopped),
# remove it (should be removed by nmbd itself IMHO.)
rm -f $NMBDPID
fi
if [ "$RUN_MODE" != "inetd" ]; then
log_progress_msg "smbd"
start-stop-daemon --stop --quiet --pidfile $SMBDPID
# Wait a little and remove stale PID file
sleep 1
if [ -f $SMBDPID ] && ! ps h `cat $SMBDPID` > /dev/null
then
# Stale PID file (nmbd was succesfully stopped),
# remove it (should be removed by smbd itself IMHO.)
rm -f $SMBDPID
fi
fi
log_end_msg 0
;;
reload)
log_daemon_msg "Reloading /etc/samba/smb.conf" "smbd only"
start-stop-daemon --stop --signal HUP --pidfile $SMBDPID
log_end_msg 0
;;
restart|force-reload)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: /etc/init.d/samba {start|stop|reload|restart|force-reload}"
exit 1
;;
esac
exit 0
#............................................................................................................................
Merci