Iniciar crontab

Hola,
aquí está mi comando de crontab que no se ejecuta

*/5 * * * * /usr/local/bin/purge_db.sh
// mi script que crontab debería lanzar cada 5 minutos
#!/bin/bash
mysql SERVEUR -pstaines < SQL1.txt
// el contenido de SQL1.txt
DELETE FROM LOG_FILE WHERE DATE < SUBDATE(NOW(), INTERVAL 1 DÍA)
Configuración: Windows XP Firefox 3.0.6

22 respuestas

  • Votos
  • Fecha
  • Fecha descendente
  1. Colaborador

    se encuentra al principio del script
    cd /dir
    donde se encuentra SQL1.txt
    o especificar la ruta del archivo
    ..., < /dir/SQL1.txt
    1. Colaborador
      Cuando tu script se inicia como root, está en /, por lo que no encuentra el archivo /SQL1.txt.
      1. Cuando voy a /tmp y voy a vim log, obtengo:

        /usr/local/bin/purge_db.sh: línea 3: SQL1.txt: No such file or directory
        1. ok!
          cuando hago cron -f tengo
          cron: can't lock /var/run/crond.pid, otherpid may be 4536: Resource temporarily unavailable

          ¿cómo puedo hacer para que esté activo?
          1. Colaborador
            La configuración de cron varía según los sistemas. Utiliza el comando man cron para ver cómo crear un registro de los trabajos que se ejecutan con cron.
            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. Colaborador
                ver qué sucede en un archivo
                */5 * * * * /usr/local/bin/purge_db.sh > /tmp/log 2>&1
                ver también en /var/log
                1. Cuando ejecuto el comando ps -ef | grep cron

                  root 4536 1 0 Feb03 ? 00:00:00 /usr/sbin/cron
                  root 8530 6953 0 16:16 pts/0 00:00:00 grep cron

                  estoy conectado como root.
                  1. Colaborador
                    ¿cron está funcionando?
                    ps -ef | grep cron
                    ¿el script es ejecutable?
                    chmod u+x /usr/local/bin/purge_db.sh
                    ¿se está ejecutando como root?
                    1. Aquí está tu traducción al español: "¡Aquí está mi script y no funciona! Es decir, no pasa nada!!!
                      #!/bin/bash
                      source ~/.bashrc
                      mysql SERVEUR -pstaines < SQL1.txt
                      gracias"
                      1. no funciona todavía
                        he añadido
                        #!/.bashrc
                        #!/bin/bash
                        mysql SERVEUR -pstaines < SQL1.txt
                        // el contenido de SQL1.txt
                        DELETE FROM LOG_FILE WHERE DATE < SUBDATE(NOW(), INTERVAL 1 DAY)
                        1. Colaborador
                          hola
                          el script se ejecuta sin entorno, .bashrc no se ejecuta por cron
                          colocar
                          source ~/.bashrc
                          al principio del script
                          • 1
                          • 2