OpenMandriva: Mageia (Mageia 9) 20/Agosto/2023 - Anuncio, Descargas.
Blogdrake recomienda descargar las imágenes de instalación (iso) vía torrent para evitar corrupción de datos, aprovechar mejor su ancho de banda y mejorar la difusión de las distribuciones.
crontab de root no funciona correctamente
Tengo una duda que me esta comiendo la cabeza y no se el motivo...expongo.
Tengo una linea metida en crontab de root con los siguientes parametros:
*/1 * * * * sudo reconecta >> /home/kapyderi//reconecta.log
Siempre me ha funcionado, pero desde la versión 2010.1, estoy comprobando que crea el reconecta.log en mi home, pero siempre con 0 k, osea vacio y no encuentro la logica.
Ejecuto sudo reconecta desde consola y lo hace al pelo, pero dentro del crontab, va a ser que no.
[kapyderi@localhost ~]$ sudo reconecta
ESTABILIDAD_WIFI_OK_sáb mar 12 09:04:49 CET 2011
Datos a tener en cuenta:
1.- El fichero esta alojado en usr/sbin (como siempre).
2.- Lo unico raro que he hecho, por decir algo, es instalar kde-rootaction (que lleva sudo, tambien), aparte de lo raro que puede ser instalar cosas normales, jeje...
3.- El fichero lleva como propietario root.
4.- Es un fichero ejecutable (marcado como ejecutable, quiero decir).
5.- Ya he utilizado google xD, y no encuentro nada de nada sobre mi problema, jajajajaja
6.- Utilizo, free, x586, 2010.2, kde 4.5.5, etc.
A ver si me podeis decir algo, que deje un tema apartado y pueda dedicarme a mayores propositos xD
Saludos y gracias por la colaboración!!!!
# 111804 Nuevos datos...
He instalado una nueva linea en crontab con los siguientes parametros.
para hacer pruebas y tampoco hace nada, por lo que el fallo esta en crontab, pero poniendo crontab -l me da las dos lineas...es para volverse loco.
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
Usuario
# 111806 reiniciar crontab
has probado reiniciar crontab?
/etc/init.d/crontab restart
Prueba una cosa que a mí me ha funcionado muchas veces.
Entra en cosola como root y manda todas las variables de entorno a un fichero
env > fichero.txt
pon estas variables de entorno en tu script de ejecución.
A mí lo que me pasaba era algo parecido a tí: el crontab no levanta bien variables de entorno del usurio que ejecuta el cron (tu caso root).
Para ello puse esas variables EN EL PROPIO FICHERO QUE LLAMA CRONTAB y funcionó (no olvides hacer export en cada linea para crear la variable). Puse esas variables en otro fichero que era llamado por el script que ejecutaba cron pero las variables no se heradaban entre scripts dentro de cron.
Espero haberte sido de ayuda.
Usuario linux #496861
# 111809 Sip...
Pero llevo teniendo este fallo desde hace tiempo...me interesa lo del env que ya he generado a fichero.txt
Una pregunta como haces para el tema de hacer export en cada linea, que estoy un poco perdido con este tema (pon un ejemplo practico, gracias. ¿?
Luego haré un script para que genere el fichero.txt y que automaticamente meta las lineas dentro del fichero llamada desde crontab, pero primero tengo que entender eso del export. xD
Lo cachondo del tema es que en versiones anteriores funcionaba perfectamente.
Comentas...
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
# 111810 Veamos...
He añadido todas las lineas con el consiguiente export (ya se como funciona, no lo habia hecho antes) y sigue todo igual, el motivo no es ese es algo que crontab no hace, ya que elimino el fichero que genera el log y lo vuelve a generar cada minuto pero vacio, como si no se ejecutara el binario.
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
BOFH
# 111815 Hola Kapi, He tenido el mismo
Hola Kapy,
He tenido el mismo problema: http://blogdrake.net/consulta/no-funciona-crond
en las últimas versiones cron no acepta sintaxis sin usuario, se ha de poner:
En ese caso creo que sudo es irrelevante ( a menos que sea tu nombre de ejecutable).
Nota: también tengo kde-rootaction instalado, y me funciona perfectamente, tengo varias tareas en marcha, y me ejecuta scripts sin problema, la versión de kde es irrelevante, ya que atañe al sistema sin entorno.
Espero que sea este tu problema, saludetes ;-)
Al que está sentado en el trono, y al Cordero, sea la alabanza, la honra, la gloria
y el dominio por los siglos de los siglos.
Linux user #463168
# 111819 Okis, lo voy a probar
Hi Inot, cuanto tiempo.
Voy a probar esta noche, porque como sea asi, me voy a Francia a darte un abrazo, jajajaja
Y mira que busque en gOOgle y nada no encontre ese mensaje xD (Aunque imagino que como busque por crontab y no por crond...será eso, digo yo).
Saludos y gracias!!!!
...probando....
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
# 111820 Igual...
Especial atención al log, todo correcto (no lo entiendo)
...
Mar 14 15:22:01 localhost CROND[10615]: (root) CMD (root /usr/sbin/reconecta >> /home/kapyderi/reconecta.log)
Mar 14 15:22:01 localhost CROND[10616]: (root) CMD (DISPLAY=":0" /usr/bin/kcalc)
Mar 14 15:23:01 localhost CROND[10811]: (root) CMD (root /usr/sbin/reconecta >> /home/kapyderi/reconecta.log)
Mar 14 15:23:01 localhost CROND[10812]: (root) CMD (DISPLAY=":0" /usr/bin/kcalc)
Mar 14 15:24:00 localhost crond[11012]: (CRON) STARTUP (1.4.4)
Mar 14 15:24:01 localhost crond[11012]: (CRON) INFO (running with inotify support)
Mar 14 15:24:01 localhost crond[11012]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
Mar 14 15:25:01 localhost CROND[11202]: (root) CMD (root /usr/sbin/reconecta >> /home/kapyderi/reconecta.log)
Mar 14 15:25:01 localhost CROND[11204]: (root) CMD (DISPLAY=":0" /usr/bin/kcalc)
Mar 14 15:25:01 localhost CROND[11205]: (mail) CMD (/usr/bin/python -S /usr/lib/mailman/cron/gate_news)
Mar 14 15:26:01 localhost CROND[11405]: (root) CMD (DISPLAY=":0" /usr/bin/kcalc)
Mar 14 15:26:01 localhost CROND[11406]: (root) CMD (root /usr/sbin/reconecta >> /home/kapyderi/reconecta.log)
Mar 14 15:27:01 localhost CROND[11598]: (root) CMD (DISPLAY=":0" /usr/bin/kcalc)
Mar 14 15:27:01 localhost CROND[11599]: (root) CMD (root /usr/sbin/reconecta >> /home/kapyderi/reconecta.log)
Verificarme que en el /etc/init.d/crontab existe, ya que solo existe en mi equipo /etc/init.d/crond
A ver si damos con la tela xD
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
BOFH
# 111822 Parece que tu script se
Parece que tu script se ejecuta correctamente, no te tira errores, aunque los errores se encuentran en /var/log/cron/errors. Pero dime, ¿ porque inicias kcalc desde cron ?
/etc/init.d/crontab no existe, crontab es solamente la interfaz de cron, crond es su demonio.
si no quieres que logs de crontab (/val/log/cron) o los de usuario se llenen de mails al localhost (cron lo hace automáticamente) tienes que colocar la variable:
MAILTO=""
como primera linea de crontab.
;-)
Al que está sentado en el trono, y al Cordero, sea la alabanza, la honra, la gloria
y el dominio por los siglos de los siglos.
Linux user #463168
Usuario
# 111825 pregunta tonta:
verifica en todas las lineas que lo que ejecutas tiene el path completo, cuando se ejecuta el cron suele estar en el home del usuario que lo ejecuta y es posible que no se encuentre en el directorio donde esperas.
Para delimitar el problema no levantes app graficas. hazte un script tipo.
echo hola > fichero.txt
o uno que sea
echo `whoami` > fichero.txt
o uno que sea (no lo he probado estoy en win)
echo `env` > fichero.txt
Para ir viendo si el problema es de cron o de otra cosa.
Usuario linux #496861
# 111853 No es una pregunta tonta...
Podria ser, pero no es el caso, lo he hecho de varias maneras, pero te comento que en versiones anteriores funcionaba de perlas. Esta incluso en RecoverDrake, de tantas pruebas como habia realizado.
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
# 111852 jeje...
Lo de la ejecución de kcalc, lo habia hecho para hacer pruebas de binarios, solo por eso xD
Sigue sin funcionar.
Saludos!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)
Usuario
# 111860 prueba...
1.- ejecutar un binario que no precise x
2.- asegurate de tener todas las variables de entorno en el script como comenté
3.- haz que te suelte todas las variables durante ejecucion..
si antes funcionaba y ahora no...no se me ocurre otra cosa. si se me enciende la bombilla te digo algo.
Usuario linux #496861
BOFH
# 111863 ¿ No habrás editado el
¿ No habrás editado el archivo crontab a mano en vez de usar crontab -e ?
Ojo Kcalc tampoco me funciona (tendría que hacerlo).
Al que está sentado en el trono, y al Cordero, sea la alabanza, la honra, la gloria
y el dominio por los siglos de los siglos.
Linux user #463168
# 111954 Me respondo a mi mismo xD
La solución pasa por quitarle sudo, aunque no tiene mucha logica xD, ya que si estoy dentro del sistema como kapyderi, por ejemplo, necesitaria sudo para poder ejecutarse correctamente en mi sesión, pero no se porque de esta manera funciona.
Ejemplo:
*/1 * * * * /usr/sbin/reconecta >> /home/kapyderi/reconecta.log
Y ya esta, como diria Inot, Voila!!!!...y para eso me tirado horas, jajajajaja
Cierro el hilo. Si veo que vuelve a fallar, lo vuelvo a abrir.
PD.: No ha sido necesario identificarlo como root al inicio de la linea del crontab, ya que el ejecutable, le he puesto como propietario root al crear el script, ya que este script se crea segun los datos que se introducen y se queda tal cual, pero como lo hago como root desde un konsole -e RecoverDrake, pues eso...ya tengo todos los privilegios que necesita el script sh.
Saludos y gracias por vuestras aportaciones!!!!
Registered Linux user #472290
MiniBOFH 2008 - MediumBOFH - KapyBOFH - Utiliza RecoverDrake!! (Proyecto Derix)