Blogging for Nothing

Crontab no ejecuta mi script…

Posteado por: murci en: 14/12/06

…y me jode un huevo. Pero bueno, es sólo cuestión de perder unos minutos para encontrar la solución. Parece ser que ocurre con Ubuntu, ya que mis recuerdos de RedHat me dicen que antes esto funcionaba, pero vamos al grano. Lo más seguro es que tengas tu tarea en un script que, para saber que es de shell, acaba en “.sh”. Pues ese es fallo! Si nos fijamos en el “/etc/crontab”, la ejecución del batch de script se invoca así:

run-parts –report /etc/cron.daily(hourly…)

Y si hacemos “$man run-parts” vemos que no ejecuta ficheros con extensión por defecto: sólo admite ficheros cuyo nombre contenga letras, números y guiones (alto y bajo). Si queremos que acepte puntos tenemos que ejecutar con la opción “–lsbsysinit”, así que, tenemos dos soluciones:

  1. Práctica: quitamos la extensión de nuestro script
  2. Menos práctica: modificamos el crontab para que nos quede “run-parts –report –lsbsysinit /etc/cron.daily” por ejemplo, pero si vamos a otra máquina tenemos que volver a cambiarlo.

6 comentarios para "Crontab no ejecuta mi script…"

hola, yo tengo un pequenho problema, mi script si lo ejecuto de forma manual si funciona, pero a la hora de ponerlo en el cron no pasa nada

ejecute el comando crontab -e

chmod 755 /home/meno/noche

0 20 * * * /home/meno/noche >> /home/meno/noche_log

yo quiero q haga esto a las 20:00

el contenido de noche es

#!/bin/sh
rm /etc/firewall
cp /root/night_plus/firewall_noche /etc/firewall
service firewall restart

algo sencillo es

Puede que te falte meter el usuario con el que se ejecuta la tarea antes del comando, aunque depende de la versión del cron.

Gracias por informar de esto…. estaba yo igual con los puñeteros scripts que no querian ejecutarse. y pensando que eran permisos… por ser links… por atributos…

Total hasta que he topado con este post tuyo y he visto lo del nombre en el run-parts. al man run-parts le habia echado un vistazo, pero por encima, no me habia fijado en ese pequeño (y jodio) detalle. :P

Muchas gracias. Un saludo. :)

[...] Blog que me ayudó a dar con la tecla.. « WordPress sin tema, accediendo desde la red local. [...]

el cron no corre mi programa que basicamente lo que hace es abrir el virtualbox y arrancar dos computadoras,
dice algo asi
#!/bin/bash
VBoxManage satrtvm XP1
VBoxManage satrtvm XP2

en cron tengo pueso algo así 30 18 * * * Daniel /home/daniel/programavirtual

y no pasa nada

Alguien sabe porque?

El script te rula por separado, no? El nombre de usuario es “daniel” todo en minúsculas (es el que tienes en el home). Puede ser por eso.

Escribe un comentario

Twitting for Nothing

Viaje al pasado

Flickr Photos

ZX Rally Raid

IMG_4346.JPG

IMG_4345.JPG

More Photos

Blog Stats

  • 40,523 hits

Uhmmm...delicious!