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)
Configuration: Windows XP
Firefox 3.0.6

22 réponses

  1. Contributeur
    cron tourne ?
    ps -ef | grep cron
    le script est exécutable ?
    chmod u+x /usr/local/bin/purge_db.sh
    il tourne comme root ?
    1. Bonjour,

      Fais attention car sur certaines plateformes comme les HP-UX il n'est pas possible de passer */n dans la crontab.
      Tu es alors obligé de te tapper 5,10,15....

      Bonne journée.
      1. Contributeur
        hello
        le script tourne sans environnement, .bashrc n'est pas exécuté par cron
        mettre
        source ~/.bashrc
        au début du script
        1. 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)
          1. Contributeur
            non,comme ca:

            #!/bin/bash
            source ~/.bashrc
            mysql SERVEUR -pstaines < SQL1.txt
            1. 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
              1. 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
                1. oui puisque quand je le lance sans manuellement sans le crontab sa marche
                  1. Contributeur
                    voir ce qui se passe dans un fichier
                    */5 * * * * /usr/local/bin/purge_db.sh > /tmp/log 2>&1
                    voir aussi dans /var/log
                    1. 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
                      1. Contributeur
                        la configuration de cron varie selon les systèmes. man cron pour voir comment créer un log des jobs qui tournent par cron
                        1. 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
                          1. je suis mal barrer car sa me depasse maintenant
                            je ne comprend plus rien!!
                            1. 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
                              1. Contributeur
                                quand ton script démarre en root il est dans / donc il ne trouve pas le fichier /SQL1.txt
                                • 1
                                • 2