Software > WeeWX
No funciona crontab
jmviper:
Ok lo estás poniendo en el crontab general y no en el de usuarios.
Tiene permisos de ejecución /root/meteoclimatic/meteoclimatic.sh ??
jmviper:
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.
Oscar-EA5IEL:
--- Cita de: jmviper en 28 de Noviembre de 2019, 00:22:48 ---Ok lo estás poniendo en el crontab general y no en el de usuarios.
Tiene permisos de ejecución /root/meteoclimatic/meteoclimatic.sh ??
--- Fin de la cita ---
root@raspberrypi:~# ls -l
total 4
drwxr-xr-x 2 root root 4096 nov 26 19:40 meteoclimatic
Oscar-EA5IEL:
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
--- Cita de: jmviper en 28 de Noviembre de 2019, 11:40:12 ---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.
--- Fin de la cita ---
jmviper:
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í
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa