Lancer crontab
Bonjour,
voila ma commande crontab ne s'execute pas
*/5 * * * * /usr/local/bin/purge_db.sh
// mon script que crontab devrais lancer toute 5 min
#!/bin/bash
mysql SERVEUR -pstaines < SQL1.txt
// le contenu de SQL1.txt
DELETE FROM LOG_FILE WHERE DATE < SUBDATE(NOW(), INTERVAL 1 DAY)
voila ma commande crontab ne s'execute pas
*/5 * * * * /usr/local/bin/purge_db.sh
// mon script que crontab devrais lancer toute 5 min
#!/bin/bash
mysql SERVEUR -pstaines < SQL1.txt
// le contenu de SQL1.txt
DELETE FROM LOG_FILE WHERE DATE < SUBDATE(NOW(), INTERVAL 1 DAY)
Configuration: Windows XP Firefox 3.0.6
22 réponses
-
Contributeursoit au début du script faire
cd /dir
ou se trouve SQL1.txt
ou préciser le chemin du fichier .,..< /dir/SQL1.txt -
bonjour il faut que je fasse comment alors??
-
Contributeurquand ton script démarre en root il est dans / donc il ne trouve pas le fichier /SQL1.txt
-
quand je vais dans /tmp et je vais vim log j'obtien:
/usr/local/bin/purge_db.sh: line 3: SQL1.txt: No such file or directory -
Contributeurest ce qu'il y a un fichier /tmp/log ?
-
je suis mal barrer car sa me depasse maintenant
je ne comprend plus rien!! -
Contributeurca veut que cron tourne déjà
-
ok!
quand je fais cron -f j'ai
cron: can't lock /var/run/crond.pid, otherpid may be 4536: Resource temporarily unavailable
comment je fais pour qu'il soit actif -
Contributeurla configuration de cron varie selon les systèmes. man cron pour voir comment créer un log des jobs qui tournent par cron
-
dans mon log j'ai:
apache2 auth.log.3.gz daemon.log.2.gz dist-upgrade dpkg.log kern.log.0 mail.info messages.3.gz mysql.log.4.gz syslog.0 udev
apparmor boot daemon.log.3.gz dmesg dpkg.log.1 kern.log.1.gz mail.log mysql mysql.log.5.gz syslog.1.gz user.log
apt btmp debug dmesg.0 dpkg.log.2.gz kern.log.2.gz mail.warn mysql.err mysql.log.6.gz syslog.2.gz wtmp
auth.log btmp.1 debug.0 dmesg.1.gz faillog kern.log.3.gz messages mysql.log mysql.log.7.gz syslog.3.gz wtmp.1
auth.log.0 daemon.log debug.1.gz dmesg.2.gz fsck lastlog messages.0 mysql.log.1.gz news syslog.4.gz
auth.log.1.gz daemon.log.0 debug.2.gz dmesg.3.gz installer lpr.log messages.1.gz mysql.log.2.gz pycentral.log syslog.5.gz
auth.log.2.gz daemon.log.1.gz debug.3.gz dmesg.4.gz kern.log mail.err messages.2.gz mysql.log.3.gz syslog syslog.6.gz -
Contributeurvoir ce qui se passe dans un fichier
*/5 * * * * /usr/local/bin/purge_db.sh > /tmp/log 2>&1
voir aussi dans /var/log -
oui puisque quand je le lance sans manuellement sans le crontab sa marche
-
Contributeuret mysql est dans le PATH de root ?
-
quand je lance la commande ps -ef | grep crom
root 4536 1 0 Feb03 ? 00:00:00 /usr/sbin/cron
root 8530 6953 0 16:16 pts/0 00:00:00 grep cron
je suis connecter en tant root -
Contributeurcron tourne ?
ps -ef | grep cron
le script est exécutable ?
chmod u+x /usr/local/bin/purge_db.sh
il tourne comme root ? -
voila mon script et sa ne marche toujours pas c'est a dire rien ne se passe!!!
#!/bin/bash
source ~/.bashrc
mysql SERVEUR -pstaines < SQL1.txt
merci -
ok j'essaie
merci -
Contributeurnon,comme ca:
#!/bin/bash
source ~/.bashrc
mysql SERVEUR -pstaines < SQL1.txt -
sa ne marche toujours pas
j'ai rajouter
#!/.bashrc
#!/bin/bash
mysql SERVEUR -pstaines < SQL1.txt
// le contenu de SQL1.txt
DELETE FROM LOG_FILE WHERE DATE < SUBDATE(NOW(), INTERVAL 1 DAY) -
Contributeurhello
le script tourne sans environnement, .bashrc n'est pas exécuté par cron
mettre
source ~/.bashrc
au début du script
- 1
- 2
Suivant