[opensuse-es] problemas con el cron
Hola lista;
Me he hecho (copiado) de un manual, pues yo no domino mucho el cron,
un script para copias de mysql. Ese script funciona lo he probado,pasandole
los parametros funciona muy bien. Ahora lo quiero lanzar por el cron y me da
esto - pongo el mail que me manda el cron:
Subject: Cron
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Juan Antonio Dieguez Martin escribió:
Hola lista; Me he hecho (copiado) de un manual, pues yo no domino mucho el cron, un script para copias de mysql. Ese script funciona lo he probado,pasandole los parametros funciona muy bien. Ahora lo quiero lanzar por el cron y me da esto - pongo el mail que me manda el cron: Subject: Cron
juanan /home/juanan/mysql_backup root juanan facsys /home/juanan/backup X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: Date: Wed, 7 Feb 2007 09:10:01 +0100 (CET) /bin/sh: juanan: command not found ================= el cron es este: HELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=juanan # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1
# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 03 4 * * 0 root run-parts /etc/cron.weekly 04 4 1 * * root run-parts /etc/cron.mounthly
10 9 * * 1-5 juanan /home/juanan/mysql_backup juanan redes1234 facsys /home/juanan/backup ======= que hago mal??? juanan es el usuario tambien en mysql con permisos para hacer copias y lo dicho desde el usuario juanan ejecuto el mysql_backup sin problemas. gracias por la ayuda Hola: Donde se localiza juanan? En cron debes poner el path completo del comando a ejecutar Salu2
Chema Ollés Usuario Linux: #198057 Linux 2.6.20-rc7-2-default #1 SMP Thu Feb 1 13:34:44 UTC 2007 i686 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFyZQE65SpD7GhbzoRAiZ6AJ0fw2ZX78Ve0qvoby4A/m12XlcQ7gCePZt6 wbzliFjNwWYTirEQiZkUEUw= =u8l3 -----END PGP SIGNATURE----- --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
No es eso pienso,
en el cron está la direccion completa(absoluta) del script
/home/juanan/mysql_backup
la prueba es que puedo ejecutar ese script desde otro usuario
(he dado permisos de ejecución y escritura al grupo)
Yo pienso que elproblema estará en el propio cron he recibido otro mail:
Message 1:
From juanan@espartaco02.dieguez.es Wed Feb 7 09:45:02 2007
X-Original-To: juanan
Delivered-To: juanan@espartaco02.dieguez.es
From: juanan@espartaco02.dieguez.es
To: juanan@espartaco02.dieguez.es
Subject: Cron
el cron es este: HELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=juanan # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1
# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 03 4 * * 0 root run-parts /etc/cron.weekly 04 4 1 * * root run-parts /etc/cron.mounthly
10 9 * * 1-5 juanan /home/juanan/mysql_backup juanan redes1234 facsys /home/juanan/backup ======= que hago mal??? juanan es el usuario tambien en mysql con permisos para hacer copias y lo dicho desde el usuario juanan ejecuto el mysql_backup sin problemas. gracias por la ayuda
Hola: Donde se localiza juanan? En cron debes poner el path completo del comando a ejecutar Salu2
-- ************************************************** Juan Antonio Diéguez Martín Linux user #329149. See http://counter.li.org juanandieguez@telefonica.net Alcorcón (Madrid) ************************************************** ______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y m�viles desde 1 c�ntimo por minuto. http://es.voice.yahoo.com --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Juan Antonio Dieguez Martin escribió:
No es eso pienso, en el cron está la direccion completa(absoluta) del script /home/juanan/mysql_backup la prueba es que puedo ejecutar ese script desde otro usuario Eso para cron no creo que sea prueba de nada (he dado permisos de ejecución y escritura al grupo) Yo pienso que elproblema estará en el propio cron he recibido otro mail: Message 1: From juanan@espartaco02.dieguez.es Wed Feb 7 09:45:02 2007 X-Original-To: juanan Delivered-To: juanan@espartaco02.dieguez.es From: juanan@espartaco02.dieguez.es To: juanan@espartaco02.dieguez.es Subject: Cron
root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1 X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: X-Cron-Env: Date: Wed, 7 Feb 2007 09:45:02 +0100 (CET) /bin/sh: root: command not found Te dice que no encuentra un comando
pongootra vez el cron:
el cron es este: HELL=/bin/sh HELL o SHELL? PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=juanan # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1
# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 03 4 * * 0 root run-parts /etc/cron.weekly 04 4 1 * * root run-parts /etc/cron.mounthly
10 9 * * 1-5 juanan /home/juanan/mysql_backup juanan redes1234 facsys /home/juanan/backup ======= que hago mal??? juanan es el usuario tambien en mysql con permisos para hacer copias y lo dicho desde el usuario juanan ejecuto el mysql_backup sin problemas. gracias por la ayuda Hola: Donde se localiza juanan? En cron debes poner el path completo del comando a ejecutar Salu2
- -- Chema Ollés Usuario Linux: #198057 Linux 2.6.20-rc7-2-default #1 SMP Thu Feb 1 13:34:44 UTC 2007 i686 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFFyaJV65SpD7GhbzoRAlflAJ0dsuxlhFyTbtQgL/NZlMLAWTt8swCgtaA+ 6h2hN8eNpB7IGazQBpTh26M= =gdX2 -----END PGP SIGNATURE----- --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 7/02/07, Juan Antonio Dieguez Martin escribió:
No es eso pienso, en el cron está la direccion completa(absoluta) del script /home/juanan/mysql_backup la prueba es que puedo ejecutar ese script desde otro usuario (he dado permisos de ejecución y escritura al grupo) Yo pienso que elproblema estará en el propio cron he recibido otro mail:
Aquí tienes una ayuda sencillita del uso de cron, echa un vistazo: http://www.unixgeeks.org/security/newbie/unix/cron-1.html No me he metido con cron, así que no me hagas mucho caso, pero podrías hacer una prueba para que, en lugar de ejecutar un comando directamente, llames a un script, por ejemplo: 10 9 * * 1-5 juanan mysql_backup.sh Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Gracias Chema y Camaleón, a través de vuestra ayuda he conseguido
que me funcione "mi" script, asi:
43 11 * * 1-5 /home/juanan/mysql_backup juanan redes1234
facsys /home/juanan/backup
AHORA queda la parte de la ejecución periodica de run-parts:
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.mounthly
Lo he sacado de: http://dns.bdat.net/documentos/cron/x132.html
De donde saco el script run-parts.
En el manual opensuse102_reference.pdf en la página 263 de la versión
alemana(la versión española es tambien por ahí)
hablan de cron.daily, cron.hourly etc.,pues eso es lo que yo quiero hacer.
Message 1:
From root@espartaco02.dieguez.es Wed Feb 7 12:01:01 2007
X-Original-To: root
Delivered-To: root@espartaco02.dieguez.es
From: root@espartaco02.dieguez.es
To: root@espartaco02.dieguez.es
Subject: Cron
El 7/02/07, Juan Antonio Dieguez Martin escribió:
AHORA queda la parte de la ejecución periodica de run-parts:
Primero tendrías que verificar que tienes instalado "run-parts". Ejecuta "whereis run-parts" y pon lo que te devuelve.
/bin/sh: run-parts: command not found
Este mensaje indica que no encuentra el programa. ¿Has intentando utilizar el método 1 para ejecución de los scripts en cron? Lo comentan en la página que te envié: In the /etc directory you will probably find some sub directories called 'cron.hourly', 'cron.daily', 'cron.weekly' and 'cron.monthly'. If you place a script into one of those directories it will be run either hourly, daily, weekly or monthly, depending on the name of the directory. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-02-07 12:34 +0100, Juan Antonio Dieguez Martin escribió:
AHORA queda la parte de la ejecución periodica de run-parts: # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.mounthly Lo he sacado de: http://dns.bdat.net/documentos/cron/x132.html De donde saco el script run-parts. En el manual opensuse102_reference.pdf en la página 263 de la versión alemana(la versión española es tambien por ahí) hablan de cron.daily, cron.hourly etc.,pues eso es lo que yo quiero hacer.
No tienes que hacer nada, porque ya está hecho, a no ser que te lo hayas cargado. Está definido en el fichero de sistema "/etc/crontab": SHELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=root # # check scripts in cron.hourly, cron.daily, cron.weekly, and cron.monthly # - -*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1 - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFFzGXRtTMYHG2NR9URAqaMAJ97s0NGx7TNiO6nU+mH/Yy1Bik5pQCeNCXR 3i2kBxB62HqZgE43uVBnu+w= =Nm+j -----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-02-07 10:45 +0100, Juan Antonio Dieguez Martin escribió:
No es eso pienso, en el cron está la direccion completa(absoluta) del script /home/juanan/mysql_backup
la prueba es que puedo ejecutar ese script desde otro usuario (he dado permisos de ejecución y escritura al grupo)
No importa. El cron usa su propio entorno, no el de ningún usuario. Es habitual que no encuentre comandos si no das los caminos completos (a todos los que use tu script), o definas el path al principio del script.
X-Cron-Env:
Observa que no encontrará ningún programa que no se encuentre en ese path que tienes ahí tan bien puesto. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFFydv8tTMYHG2NR9URAq7gAJ9cGLnptcPXWlLru8Q/5ueDKGk6UwCeKuVF pQsdnD1tumv93dlEcOzoyqk= =HGVE -----END PGP SIGNATURE-----
participants (4)
-
Camaleón
-
Carlos E. R.
-
Chema Ollés
-
Juan Antonio Dieguez Martin