im ayant le problème qu'un script bash ne s'exécute pas à partir de cron. Quand je l'exécute en tant que root à partir du cli, cela fonctionne bien. Comme vous pouvez le voir, j'écris dans un fichier txt lorsque le script est terminé. Ceci est également fait lorsque le script s'exécute à partir de cron, seul le dmp Oracle n'est pas sauvegardé (et évidemment pas compressé). Le travail est fait extrêmement rapide, donc je suppose qu'il ne fait pas l'exportation d'oracle ...Cron n'exécute pas correctement le script shell
Merci pour votre aide!
backup.sh
#!/bin/bash
#makes an Oracle backup and zips the created file
TIME=`date +%F_%H:%M:%S`
FILENAME=Backup-$TIME
exp userid=user/password file=/home/user/DatabaseBackup/$FILENAME.dmp
zip /home/user/DatabaseBackup/$FILENAME.zip /home/user/DatabaseBackup/$FILENAME$
find /home/user/DatabaseBackup/ -mtime +0 -type f -delete
echo "Backup completed:" `date +%F_%H:%M:%S` >> /home/user/scripts/logBackup.txt
#END
crontab -e 26 * * * * /home/user/scripts/backup.sh
Ajouter le chemin d'accès complet aux exécutables (date, exp, zip, find). – Cyrus
Vous devez capturer la sortie du travail cron (stdin et stderr) avant de demander de l'aide, car tout message d'erreur trouvé dans cette sortie est susceptible de vous faciliter la recherche de la cause ou de vous aider. Les tâches s'exécutant dans 'cron' peuvent avoir un environnement différent, et il est probable que votre problème provienne d'une différence de' PATH' ou d'une autre variable sur laquelle les programmes que vous utilisez dépendent. – Fred
Fred1 Vous avez raison, il est préférable de vérifier la sortie des programmes appelés! Je fais et regarde ce qui ne va pas – helmut1978