[Crontab] Impossible de lancer un script bash

Bonjour,

Désolé, j’ai bien vu que ce sujet avait été abordé plusieurs fois mais je ne semble pas avoir trouvé la solution après une recherche sur Internet et ce forum.

À noter que j’utilise Raspbian 8, la version pour Raspberry Pi
.

J’ai un bête script de backup en bash qui, lancé manuellement, fonctionne comme un charme (au moins il se lance) mais n’est absolument pas lancé par crontab, dont le démon tourne:

● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled)
   Active: active (running) since mar. 2015-12-29 14:09:26 CET; 1 weeks 1 days ago
     Docs: man:cron(8)
 Main PID: 353 (cron)
   CGroup: /system.slice/cron.service
           └─353 /usr/sbin/cron -f

Voici le script:

[code]#!/bin/sh

currentDate="$(date +%d-%m-%y.%R)"
user=“user"
destinationIP=“192.168.1.x"
destinationDir=”/chemin/du/backup/$currentDate”

dir="/path/un /path/deux"

ssh $user@$destinationIP "mkdir $destinationDir"
for i in $dir
do
tar cfJ $i.tar.xz $i
rsync -av $i.tar.xz $user@$destinationIP:$destinationDir
rm $i.tar.xz
done[/code]

Ses droits:

Et voici la ligne de crontab (que j’édite avec crontab -e, en root):

Dans /var/log/syslog je n’ai rien à propos de ce script.

J’ai initialement essayé de le lancer via crontab avec:

Ou encore:

J’avais aussi, initialement, encore l’extension de fichier .sh.

J’ai aussi essayé de lancer un fichier qui ne fait qu’un simple touch:

[code]#!/bin/bash

touch /root/test[/code]

Bon, le chemin est bon, le fichier est exécutable, il peut être lancé manuellement… Ça fait deux heures que je suis dessus et j’ai essayé tellement de truc que j’en ai oublié les trois quarts.

Une idée? Ça me désespère de pas réussir un truc aussi con.

  • koshie

Bonjour koshie

Tu devrais pouvoir trouver des solutions en lisant ce message

Salut,

Tu peux faire un :

@TrashHard; comme dit dans mon topic original, il n’y a rien à propos de mes commandes cron dans les logs.

@MicP; j’ai crée un fichier /root/backup/test (-rwxrwxr-- 1 root root 34 janv. 11 01:47 test) contenant:

[code]#!/bin/bash

env > /root/test.txt[/code]

Dans crontab j’ai:

Et pourtant, à 1h50 rien ne s’exécute. Encore une fois, cron tourne:

[code]● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled)
Active: active (running) since mar. 2015-12-29 14:09:26 CET; 1 weeks 5 days ago
Docs: man:cron(8)
Main PID: 353 (cron)
CGroup: /system.slice/cron.service
└─353 /usr/sbin/cron -f

janv. 11 01:09:01 PiA CRON[10813]: pam_unix(cron:session): session opened for user root by (uid=0)
janv. 11 01:09:01 PiA CRON[10820]: (root) CMD ( [ -x /usr/lib/php5/sessionclean ] && /usr/lib/php5/sessionclean)
janv. 11 01:09:01 PiA CRON[10813]: pam_unix(cron:session): session closed for user root
janv. 11 01:17:01 PiA CRON[10846]: pam_unix(cron:session): session opened for user root by (uid=0)
janv. 11 01:17:01 PiA CRON[10853]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly)
janv. 11 01:17:02 PiA CRON[10846]: pam_unix(cron:session): session closed for user root
janv. 11 01:39:01 PiA CRON[10877]: pam_unix(cron:session): session opened for user root by (uid=0)
janv. 11 01:39:01 PiA CRON[10884]: (root) CMD ( [ -x /usr/lib/php5/sessionclean ] && /usr/lib/php5/sessionclean)
janv. 11 01:39:01 PiA CRON[10877]: pam_unix(cron:session): session closed for user root
janv. 11 01:48:01 PiA cron[353]: (root) RELOAD (crontabs/root)
[/code]

Et /var/log/syslog n’aide pas:

cat /var/log/syslog | grep cron Jan 10 06:47:02 PiA CRON[9145]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )) Jan 10 07:17:01 PiA CRON[9197]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 08:17:01 PiA CRON[9294]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 09:17:01 PiA CRON[9382]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 10:17:01 PiA CRON[9470]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 11:17:01 PiA CRON[9558]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 12:17:01 PiA CRON[9646]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 13:17:01 PiA CRON[9734]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 14:17:01 PiA CRON[9825]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 15:17:02 PiA CRON[9913]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 16:17:01 PiA CRON[10010]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 17:17:01 PiA CRON[10098]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 18:17:01 PiA CRON[10186]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 19:17:01 PiA CRON[10274]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 20:17:01 PiA CRON[10362]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 21:17:01 PiA CRON[10589]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 22:17:02 PiA CRON[10677]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 10 23:17:01 PiA CRON[10765]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 11 00:17:01 PiA CRON[10853]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Jan 11 00:47:31 PiA crontab[10997]: (root) BEGIN EDIT (root) Jan 11 00:47:41 PiA crontab[10997]: (root) REPLACE (root) Jan 11 00:47:41 PiA crontab[10997]: (root) END EDIT (root) Jan 11 00:48:01 PiA cron[353]: (root) RELOAD (crontabs/root) Jan 11 00:48:25 PiA crontab[11024]: (root) LIST (root)

Pourtant on peut y lire des choses en rapport avec cron… C’est bien qu’il tourne. Mais on dirait qu’il ignore mes lignes dans crontab…

Une autre idée?

  • koshie

Je ne sais pas comment… Mais à 3h un fichier /root/test.txt a été crée:

Malgré le contenu de crontab:

[code]#!/bin/bash

env > /root/test.tx[/code]

Ce qui renvoi…:

HOME=/root LOGNAME=root PATH=/usr/bin:/bin LANG=fr_FR.UTF-8 SHELL=/bin/sh PWD=/root

Très étrange… Et j’ai revérifier, mes backup sont désormais réalisés à 2:10 comme écrit dans crontab (mais avec une heure de retard!) après une autre nuit où je cherchais à résoudre ce problème.

Cette nuit je vais penser à tester ça. L’heure sur le serveur est bon pourtant.