Autor Tema: No funciona crontab  (Leído 22255 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado EA5AW

  • Newbie
  • *
  • Mensajes: 27
    • Ver Perfil
    • oratgealqueries
  • Estación: ESPVA1200000012539B
Re:No funciona crontab
« Respuesta #15 en: 19 de Enero del 2017, 23:40:11 pm »
Intento reinstalar cron sudo apt-get install --reinstall cron
E: no se pudo abrir el fichero de bloqueo <</var/lib/dpkg/lock>> - open (2: no existe el fichero o el directorio)
E: no se encontro un archivo de replica <</var/lib/dpkg/>>
 

Desconectado jantoni

  • Hero Member
  • *****
  • Mensajes: 3.754
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:No funciona crontab
« Respuesta #16 en: 21 de Enero del 2017, 09:18:20 am »
Ummmmm......ese tipo de error es mala cosa.

Pero antes de tirarnos de los pelos, vamos a intentarlo como root y no con sudo

Identifícate como root y haz lo mismo que te dije.

Si la cosa sigue igual, la cosa no pinta bien

Desconectado Xavi-EA5ZF

  • Full Member
  • ***
  • Mensajes: 212
  • Ham Radio Operator EA5ZF
    • Ver Perfil
    • MeteoLaVall
  • Estación: ESPVA1200000012600A
Re:No funciona crontab
« Respuesta #17 en: 21 de Enero del 2017, 12:34:49 pm »
Jantoni, eso del apt ya lo tiene corregido, me conecté en remoto a su servidor y le arreglé los problemas del cron y del backup.
Y me dí cuenta de que había movido algunos directorios de /var a otro sitio, al reponerlos se puso ya todo en orden.
Aprender tiene sus cosas...

Desconectado EA5AW

  • Newbie
  • *
  • Mensajes: 27
    • Ver Perfil
    • oratgealqueries
  • Estación: ESPVA1200000012539B
Re:No funciona crontab
« Respuesta #18 en: 21 de Enero del 2017, 12:42:17 pm »
Muchas gracias a los dos, na hay nada mejor que tener un buen soporte técnico y humano.
Para mí ponerme en estos fregaos me supera y no poco, sin gente como vosotros esto sería impensable.
 apla3

Desconectado jantoni

  • Hero Member
  • *****
  • Mensajes: 3.754
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:No funciona crontab
« Respuesta #19 en: 21 de Enero del 2017, 14:59:08 pm »
Es una causa de ese error.....el mover directorio de /var a otros sitios....

Pero me extrañaba que lo hubiera hecho ;D ;D ;D ;D ;D

Desconectado Oscar-EA5IEL

  • Jr. Member
  • **
  • Mensajes: 72
    • Ver Perfil
  • Estación: Alacant - Nort (ESPVA0300000003009E)
Re:No funciona crontab
« Respuesta #20 en: 27 de Noviembre del 2019, 17:06:58 pm »
Continuo este hilo que el compañero Juanvi inicio. Despues de tener operativo el weewx y funcionando me surge el mismo problema que tenia el.
No consigo que crontab me funcione en meteoclimatic. En este tema no tengo ni idea de por donde empezar. Lo tengo como indica el compañero Jantoni en el manual. He hecho una copia del fichero y lo he vuelto a reinstalar, pero sigue sin funcionar. A ver quien me puede ayudar.

Gracias de antemano.

pi@raspberrypi:/etc $ cat crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
root@raspberrypi:/etc# cat crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

# Copia de seguridad de Weewx en disco de red a las 23:55 de cada dia
55 23   * * *   root    /etc/weewx/backup

# Envía datos a Meteoclimatic cada 5 minutos, empezando en el minuto 1 de cada hora
1-59/5 *   * * *   root    /root/meteoclimatic/meteoclimatic.sh
pi@raspberrypi:/etc $


pi@raspberrypi:/etc $  /etc/init.d/cron status
● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-11-26 20:33:01 CET; 20h ago
     Docs: man:cron(8)
 Main PID: 6504 (cron)
    Tasks: 1 (limit: 2200)
   Memory: 4.6M
   CGroup: /system.slice/cron.service
           └─6504 /usr/sbin/cron -f

nov 27 16:32:02 raspberrypi CRON[11631]: pam_unix(cron:session): session closed for user root
nov 27 16:39:01 raspberrypi CRON[11649]: pam_unix(cron:session): session opened for user root by (uid=0)
nov 27 16:39:01 raspberrypi CRON[11654]: (root) CMD (  [ -x /usr/lib/php/sessionclean ] && if [ ! -d /run/systemd/system ]; then /usr/lib/php/sessionclean; fi)
nov 27 16:39:01 raspberrypi CRON[11649]: pam_unix(cron:session): session closed for user root
nov 27 16:47:01 raspberrypi CRON[11717]: pam_unix(cron:session): session opened for user root by (uid=0)
nov 27 16:47:01 raspberrypi CRON[11721]: (root) CMD (root    /root/meteoclimatic/meteoclimatic.sh)
nov 27 16:47:01 raspberrypi CRON[11717]: pam_unix(cron:session): session closed for user root
nov 27 17:02:01 raspberrypi CRON[11741]: pam_unix(cron:session): session opened for user root by (uid=0)
nov 27 17:02:01 raspberrypi CRON[11745]: (root) CMD (root    /root/meteoclimatic/meteoclimatic.sh)
nov 27 17:02:01 raspberrypi CRON[11741]: pam_unix(cron:session): session closed for user root
Hint: Some lines were ellipsized, use -l to show in full.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.403
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:No funciona crontab
« Respuesta #21 en: 27 de Noviembre del 2019, 17:35:49 pm »
Jantoni lo puso en la carpeta de root así que la línea para que suba la plantilla la tienes que poner en el crontab de root:

sudo crontab -e

Para ver su contenido:

sudo crontab -l



Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Oscar-EA5IEL

  • Jr. Member
  • **
  • Mensajes: 72
    • Ver Perfil
  • Estación: Alacant - Nort (ESPVA0300000003009E)
Re:No funciona crontab
« Respuesta #22 en: 27 de Noviembre del 2019, 18:16:07 pm »
Gracias por contestar jmviper. No entiendo lo que me quieres decir.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.403
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:No funciona crontab
« Respuesta #23 en: 27 de Noviembre del 2019, 19:09:47 pm »
Simplemente que los archivos necesarios para subir la plantilla (meteoclimatic.sh, meteoclimatic.ini etc etc) los tienes en /root y esa carpeta sólo es accesible por root así que para tener permiso tendrás que editar el crontab de root para poner la línea para la subida. Por lo tanto tendrás que ponerla con sudo crontab -e.

Si estando como usuario pi accedes a crontab -e accedes al crontab de pi y si pones sudo crontab -e al de root el cual no tiene restricciones.


Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Oscar-EA5IEL

  • Jr. Member
  • **
  • Mensajes: 72
    • Ver Perfil
  • Estación: Alacant - Nort (ESPVA0300000003009E)
Re:No funciona crontab
« Respuesta #24 en: 27 de Noviembre del 2019, 20:39:13 pm »
Disculpa si no te he entendido, pero creo que ya lo tengo así.

pi@raspberrypi:~ $ sudo crontab -l
# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
2 0 * * * /home/pi/copiaweewx.sh

root@raspberrypi:/etc# cat crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
# Copia de seguridad de Weewx en disco de red a las 23:57 de cada dia
57 23   * * *   root    /etc/weewx/backup

# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 *   * * *   root    /root/meteoclimatic/meteoclimatic.sh
pi@raspberrypi:~ $

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.403
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:No funciona crontab
« Respuesta #25 en: 28 de Noviembre del 2019, 00:22:48 am »
Ok lo estás poniendo en el crontab general y no en el de usuarios.

Tiene permisos de ejecución /root/meteoclimatic/meteoclimatic.sh ??





Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.403
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:No funciona crontab
« Respuesta #26 en: 28 de Noviembre del 2019, 11:40:12 am »
Ahondando un poco más en el tema de configurar la utilidad para el envío a meteoclimatic hay un par de cuestiones:

Primera.- No hace falta poner los archivos de la utilidad de meteoclimatic (meteoclimatic.sh, meteoclimatic.ini y meteoclimatic_http.php) en la carpeta de /root. Se pueden poner perfectamente en la carpeta de /home/pi creando una nueva al caso como /home/pi/meteoclimatic

Dándole permisos de ejecución a meteoclimatic.sh basta (chmod +x meteoclimatic.sh) sin el sudo delante siempre que sean propiedad de pi.

Entonces para que suba automáticamente sólo hace falta que esté en el crontab de pi (crontab -e estando como ususario pi).

Segunda.-

Crontabs hay varios:

/etc/crontab es el crontab del sistema aunque se pueden poner tareas para usuarios del equipo pero es mejor no tocarlo ya que una mala sintaxis y puede no funcionar el crontab.
Si se quiere hacer así es mejor crear un crontab específico en /etc/cron.d (el directorio de cron) ya que podemos ponerlo específicamente sin riesgo de poner en compromiso el crontab del sistema.

sudo nano /etc/cron.d/meteoclimatic

En su interior ponemos:

#Cron para meteoclimatic

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

15,30,45,59 * * * *  root  /root/meteoclimatic/meteoclimatic.sh


Todo esto en caso de que tengamos la utilidad en /root/meteoclimatic

También se puede poner en el crontab de root (sudo crontab -e) esa línea del envío y, como he dicho antes, ponerse todo en una carpeta de pi y no hace falta tocar nada del root del sistema.


Todo esto no quiero hacerlo con la intención de enredarlo todo sino de intentar hacer ver que hay "diferentes formas" y que con todas se puede hacer funcionar.



Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es

Desconectado Oscar-EA5IEL

  • Jr. Member
  • **
  • Mensajes: 72
    • Ver Perfil
  • Estación: Alacant - Nort (ESPVA0300000003009E)
Re:No funciona crontab
« Respuesta #27 en: 28 de Noviembre del 2019, 18:18:22 pm »
Ok lo estás poniendo en el crontab general y no en el de usuarios.

Tiene permisos de ejecución /root/meteoclimatic/meteoclimatic.sh ??

root@raspberrypi:~# ls -l
total 4
drwxr-xr-x 2 root root 4096 nov 26 19:40 meteoclimatic

Desconectado Oscar-EA5IEL

  • Jr. Member
  • **
  • Mensajes: 72
    • Ver Perfil
  • Estación: Alacant - Nort (ESPVA0300000003009E)
Re:No funciona crontab
« Respuesta #28 en: 28 de Noviembre del 2019, 19:26:13 pm »
He hecho lo que me comentas de ponerlos en el directorio /home/pi creando la carpeta meteoclimatic y poniendo ahí los ficheros.

pi@raspberrypi:~ $ chmod +x meteoclimatic.sh
chmod: no se puede acceder a 'meteoclimatic.sh': No existe el fichero o el directorio

pi@raspberrypi:~ $ sudo chmod +x /home/pi/meteoclimatic/meteoclimatic.sh
pi@raspberrypi:~ $


pi@raspberrypi:~ $ php /home/pi/meteoclimatic/meteoclimatic_http.php
?

pi@raspberrypi:~ $ crontab -e
  GNU nano 3.2                                                        /tmp/crontab.KAsowk/crontab

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#
# Copia de seguridad de Weewx en disco de red a las 23:57 de cada dia
57 23   * * *   root    /etc/weewx/backup

# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 *   * * *   root    /home/pi/meteoclimatic/meteoclimatic.sh




Ahondando un poco más en el tema de configurar la utilidad para el envío a meteoclimatic hay un par de cuestiones:

Primera.- No hace falta poner los archivos de la utilidad de meteoclimatic (meteoclimatic.sh, meteoclimatic.ini y meteoclimatic_http.php) en la carpeta de /root. Se pueden poner perfectamente en la carpeta de /home/pi creando una nueva al caso como /home/pi/meteoclimatic

Dándole permisos de ejecución a meteoclimatic.sh basta (chmod +x meteoclimatic.sh) sin el sudo delante siempre que sean propiedad de pi.

Entonces para que suba automáticamente sólo hace falta que esté en el crontab de pi (crontab -e estando como ususario pi).

Segunda.-

Crontabs hay varios:

/etc/crontab es el crontab del sistema aunque se pueden poner tareas para usuarios del equipo pero es mejor no tocarlo ya que una mala sintaxis y puede no funcionar el crontab.
Si se quiere hacer así es mejor crear un crontab específico en /etc/cron.d (el directorio de cron) ya que podemos ponerlo específicamente sin riesgo de poner en compromiso el crontab del sistema.

sudo nano /etc/cron.d/meteoclimatic

En su interior ponemos:

#Cron para meteoclimatic

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

15,30,45,59 * * * *  root  /root/meteoclimatic/meteoclimatic.sh


Todo esto en caso de que tengamos la utilidad en /root/meteoclimatic

También se puede poner en el crontab de root (sudo crontab -e) esa línea del envío y, como he dicho antes, ponerse todo en una carpeta de pi y no hace falta tocar nada del root del sistema.


Todo esto no quiero hacerlo con la intención de enredarlo todo sino de intentar hacer ver que hay "diferentes formas" y que con todas se puede hacer funcionar.

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.403
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:No funciona crontab
« Respuesta #29 en: 28 de Noviembre del 2019, 19:37:54 pm »
Veamos

Ponme el resultado de ejecutar los siguiente:

ls -l /home/pi/meteoclimatic

cat /home/pi/meteoclimatic/meteoclimatic.sh

cat /home/pi/meteoclimatic/meteoclimatic.ini


Quita contraseña de meteoclimatic.ini cuando lo pegues aquí


Archena, Valle de Ricote (Murcia). 120 msnm. 19.622 hab.
Davis Vantage Pro2 Plus

www.meteoarchena.es