Meteoclimatic
Software => WeeWX => Mensaje iniciado por: burgati en 08 de Junio del 2017, 22:12:31 pm
-
Hola amigos del linux xtrem.......resulta que subía datos a meteoclimatic a través de una cuenta de hosting que me ha caducado y como hay que pagar paso . En esto que me enteré que hay una utilidad para subir datos a meteoclimatic para linux y en esas me puse...seguí los tutoriales y tras mucho trastear conseguí que apareciese el punto de mi estación en el mapa y una actuañlización de la plantilla, tras lo cual no volvió a actualizar.
El weewx.log parece que va descargando y actualizando correctamente, dejo un extracto de las últimas lineas:
Jun 8 19:55:19 raspberrypi weewx[2479]: cheetahgenerator: Generated 15 files for report StandardReport in 2.19 seconds
Jun 8 19:55:21 raspberrypi weewx[2479]: imagegenerator: Generated 8 images for StandardReport in 1.28 seconds
Jun 8 19:55:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx
Jun 8 19:55:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx/ss
Jun 8 19:55:21 raspberrypi weewx[2479]: cheetahgenerator: Generated 2 files for report SteelSeries in 0.17 seconds
Jun 8 19:55:23 raspberrypi weewx[2479]: imagegenerator: Generated 11 images for SteelSeries in 2.37 seconds
Jun 8 20:00:15 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:00:00 UTC (1496952000) to database '/var/lib/weewx/weewx.sdb'
Jun 8 20:00:16 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:00:00 UTC (1496952000) to daily summary in '/var/lib/weewx/weewx.sdb'
Jun 8 20:00:19 raspberrypi weewx[2479]: cheetahgenerator: Generated 15 files for report StandardReport in 2.25 seconds
Jun 8 20:00:23 raspberrypi weewx[2479]: imagegenerator: Generated 16 images for StandardReport in 3.96 seconds
Jun 8 20:00:23 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx
Jun 8 20:00:23 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx/ss
Jun 8 20:00:24 raspberrypi weewx[2479]: cheetahgenerator: Generated 2 files for report SteelSeries in 0.17 seconds
Jun 8 20:00:25 raspberrypi weewx[2479]: imagegenerator: Generated 11 images for SteelSeries in 1.45 seconds
Jun 8 20:05:15 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:05:00 UTC (1496952300) to database '/var/lib/weewx/weewx.sdb'
Jun 8 20:05:16 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:05:00 UTC (1496952300) to daily summary in '/var/lib/weewx/weewx.sdb'
Jun 8 20:05:19 raspberrypi weewx[2479]: cheetahgenerator: Generated 15 files for report StandardReport in 2.27 seconds
Jun 8 20:05:21 raspberrypi weewx[2479]: imagegenerator: Generated 8 images for StandardReport in 1.28 seconds
Jun 8 20:05:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx
Jun 8 20:05:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx/ss
Jun 8 20:05:21 raspberrypi weewx[2479]: cheetahgenerator: Generated 2 files for report SteelSeries in 0.17 seconds
Jun 8 20:05:23 raspberrypi weewx[2479]: imagegenerator: Generated 11 images for SteelSeries in 2.37 seconds
Jun 8 20:10:15 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:10:00 UTC (1496952600) to database '/var/lib/weewx/weewx.sdb'
Jun 8 20:10:16 raspberrypi weewx[2479]: manager: Added record 2017-06-08 20:10:00 UTC (1496952600) to daily summary in '/var/lib/weewx/weewx.sdb'
Jun 8 20:10:19 raspberrypi weewx[2479]: cheetahgenerator: Generated 15 files for report StandardReport in 2.19 seconds
Jun 8 20:10:21 raspberrypi weewx[2479]: imagegenerator: Generated 8 images for StandardReport in 1.30 seconds
Jun 8 20:10:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx
Jun 8 20:10:21 raspberrypi weewx[2479]: copygenerator: copied 0 files to /var/www/weewx/ss
Jun 8 20:10:21 raspberrypi weewx[2479]: cheetahgenerator: Generated 2 files for report SteelSeries in 0.17 seconds
Jun 8 20:10:22 raspberrypi weewx[2479]: imagegenerator: Generated 11 images for SteelSeries in 1.47 seconds
Por donde podríamos empezar a ver donde está el fallo?.....gracias y paciencia conmigo, soy nuevo en linux y bastante tarugo
-
Parece que ya te lee de nuevo la estación weewx :)
Ahora toca seguir por donde lo dejamos en un anterior post con la utilidad de envío de la plantilla. A ver qué dice el log.
http://forum.meteoclimatic.net/index.php/topic,32.msg11061.html#msg11061
-
Buenos días jmviper
A ver si arreglamos el asunto hoy ya, jeje... te comento:
La plantilla la tengo alojada en /var/www/weewx
y lo del log que no entiendo muy bien lo tengo configurado tal como me pusiste, osea, tengo puesto esto:
#!/bin/bash
cd /root/meteoclimatic
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
y el archivo meteoclimatic.log que tengo alojado en home/pi me pone esto:
-- 15/03/2015 10:01:07 --
HTTP/1.1 202 Accepted
Date: Sun, 15 Mar 2015 10:01:01 GMT
Server: Apache/2.2.22 (Debian)
X-Powered-By: PHP/5.4.36-0+deb7u3
X-Error: 202 Accepted
X-DigestKey:
Vary: Accept-Encoding
Content-Length: 69
Content-Type: text/plain
Ver: 3a - ID: ESMAD2800000028522A
Query Length: 141
202: Accepted
Ahí figura el código de la estación que viene por defecto en el tutorial, pongo el código de la mía no?
-
Se explica muy bien paso a paso en la configuración de la utilidad:
http://forum.meteoclimatic.net/index.php/topic,32.msg113.html#msg113
Hay que leerlo bien y seguir los pasos configurando también el archivo meteoclimatic.ini con el código de tu estación, la ruta donde está la plantilla rellenada meteoclimatic.htm y la contraseña con la que entras en tu estación en meteoclimatic.
El log que has puesto es el que viene por defecto de cuando se hizo el tutorial. El log de subida de la plantilla debe de crearse en /var/log/meteoclimatic.log por que así lo pone en meteoclimatic.sh.
El crontab lo tendrás que editar con la subida tal y como lo pone en ese hilo.
Pero lo primero que debes de ver es si weewx te está rellenando la plantilla de meteoclimatic:
http://wiki.meteoclimatic.net/wiki/WeeWX_y_Meteoclimatic
-
skin.conf , puse al final el apartado [[[Meteoclimatic]]]
[[ToDate]]
# Reports that show statistics "to date", such as day-to-date,
# week-to-date, month-to-date, etc.
[[[day]]]
template = index.html.tmpl
[[[week]]]
template = week.html.tmpl
[[[month]]]
template = month.html.tmpl
[[[year]]]
template = year.html.tmpl
[[[RSS]]]
template = RSS/weewx_rss.xml.tmpl
[[[Mobile]]]
template = mobile.html.tmpl
[[[MobileSmartphone]]]
template = smartphone/index.html.tmpl
[[[MobileTempOutside]]]
template = smartphone/temp_outside.html.tmpl
[[[MobileRain]]]
template = smartphone/rain.html.tmpl
[[[MobileBarometer]]]
template = smartphone/barometer.html.tmpl
[[[MobileWind]]]
template = smartphone/wind.html.tmpl
[[[MobileRadar]]]
template = smartphone/radar.html.tmpl
[[[Meteoclimatic]]]
template = meteoclimatic.htm.tmpl
la plantilla alojada en /var/www/weewx/meteoclimatic.htm me la actualiza correctamente:
*VER=DATA2
*COD=ESCYL0900000009001D
*SIG=b.................................................1e7
*UPD=09-06-2017 09:25
*TMP=19,6
*WND=6
*AZI=45
*BAR=1013,4
*HUM=74
*SUN= N/A
*UVI= N/A
*DHTM=19,8
*DLTM=14,1
*DHHM=95
*DLHM=73
*DHBR=1013,5
*DLBR=1011,4
*DGST=27
*DSUN= N/A
*DHUV= N/A
*DPCP=0,0
*WRUN=
*MHTM=29,5
*MLTM=11,8
*MHHM=95
*MLHM=24
*MHBR=1017,6
*MLBR=1008,9
*MGST=40
*MSUN= N/A
*MHUV= N/A
*MPCP=1,6
*YHTM=29,5
*YLTM=11,8
*YHHM=95
*YLHM=24
*YHBR=1019,0
*YLBR=1008,9
*YGST=42
*YSUN= N/A
*YHUV= N/A
*YPCP=1,6
*EOT*
© jantoni (02/2015)
En /etc/weewx/skins/Standard tengo el archivo meteoclimatic.htm.tmpl y le abro y aparece la plantilla digamos sin rellenar:
*VER=DATA2
*COD=ESCYL0900000009001D
*SIG=b2..........................................1e7
*UPD=$current.dateTime.format("%d-%m-%Y %H:%M")
*TMP=$current.outTemp.formatted
*WND=$current.windSpeed.formatted
*AZI=$current.windDir.formatted
*BAR=$current.barometer.formatted
*HUM=$current.outHumidity.formatted
*SUN=$current.radiation.formatted
*UVI=$current.UV.formatted
*DHTM=$day.outTemp.max.formatted
*DLTM=$day.outTemp.min.formatted
*DHHM=$day.outHumidity.max.formatted
*DLHM=$day.outHumidity.min.formatted
*DHBR=$day.barometer.max.formatted
*DLBR=$day.barometer.min.formatted
*DGST=$day.windGust.max.formatted
*DSUN=$day.radiation.max.formatted
*DHUV=$day.UV.max.formatted
*DPCP=$day.rain.sum.formatted
*WRUN=
*MHTM=$month.outTemp.max.formatted
*MLTM=$month.outTemp.min.formatted
*MHHM=$month.outHumidity.max.formatted
*MLHM=$month.outHumidity.min.formatted
*MHBR=$month.barometer.max.formatted
*MLBR=$month.barometer.min.formatted
*MGST=$month.windGust.max.formatted
*MSUN=$month.radiation.max.formatted
*MHUV=$month.UV.max.formatted
*MPCP=$month.rain.sum.formatted
*YHTM=$year.outTemp.max.formatted
*YLTM=$year.outTemp.min.formatted
*YHHM=$year.outHumidity.max.formatted
*YLHM=$year.outHumidity.min.formatted
*YHBR=$year.barometer.max.formatted
*YLBR=$year.barometer.min.formatted
*YGST=$year.windGust.max.formatted
*YSUN=$year.radiation.max.formatted
*YHUV=$year.UV.max.formatted
*YPCP=$year.rain.sum.formatted
*EOT*
© jantoni (02/2015)
Este tema de la plantilla lo tengo bien configurado y ubicado no?.....o meteoclimatic.htm debería estar tambien alojada en /etc/weewx/skins/Standard y no donde la tengo ahora en var/www/weewx?????? :o
-
Da igual donde la tengas. Lo importante es que la cree y poner su ruta en Path= en el archivo de configuración de la utilidad meteoclimatic.ini
-
Da igual donde la tengas. Lo importante es que la cree y poner su ruta en Path= en el archivo de configuración de la utilidad meteoclimatic.ini
vale, entonces vamos ahora con un resumen de como tengo configurados los archivos de la utilidad meteoclimatic.sh, meteoclimatic.ini, .......y la linea añadida en contrab para activar el envío:
1º) /home/pi/meteoclimatic.ini:
[Global]
Stations=ESCYL0900000009001D
DigestKey=
[ESCYL0900000009001D]
Path=/var/www/weewx/meteoclimatic.htm
Password=b2.................................................e7
StationVendor=Davis
StationModel=Vantage Vue
creo que está bien, he puesto el código de mi estación y en el password el sig de la misma. La ruta es donde tengo alojada la plantilla que me actualiza correctamente.
2º) /home/pi/meteoclimatic.sh,.... por mucho que leo no me acabo de enterar del tema de las almuhadillas comentar/descomentar...intuyo que puede estar aquí el fallo, tengo puesto esto:
#!/bin/bash
cd /root/meteoclimatic
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
3º) etc/crontab, añadí esa última linea:
# /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
#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
:;
-
Veamos...
meteoclimatic.ini parece estar bien.
meteoclimatic.sh también parece estar bien... y repito, las líneas que empiezan con almohadilla son ignoradas, o sea que si tienes:
#!/bin/bash
cd /root/meteoclimatic
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
en realidad el intérprete bash lee:
#!/bin/bash
cd /root/meteoclimatic
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
Como ves las líneas en rojo que empiezan con una almohadilla el intérprete que ejecuta el script las ignora. La primera línea es una excepción ya que indica al intérprete qué lenguaje se usa.
Y ahora en el crontab es donde veo el fallo en que pones:
# EnvÃa datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /root/meteoclimatic/meteoclimatic.sh
Esa ruta no coincide donde has puesto que tienes el archivo meteoclimatic.sh (/home/pi/meteoclimatic.sh)
Por lo que tendrías que poner:
# EnvÃa datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /home/pi/meteoclimatic.sh
Asegúrate también de que les has dado los permisos necesarios de ejecución a los archivos desde la carpeta /home/pi
sudo chown root:root meteoclimatic.sh
sudo chmod +x meteoclimatic.sh
-
A los guenos días!
Ante todo gracias por asesoramiento e información.
Pues he hecho eso, dar permisos y cambiar la ruta del contrab, aun así me sigue sin actualizar.....:
Resumiendo:
1) El archivo meteoclimatic.htm, (plantilla), me lo actualiza correctamente en su ubicación
2) El weewx.log parece que no da ningún tipo de error y lo genera todo perfectamente
3) Todo correcto ahora en meteoclimatic.ini, meteoclimatic.sh y contrab
4) /en home/pi/meteoclimatic.log me sale esto:
-- 15/03/2015 10:01:07 --
HTTP/1.1 202 Accepted
Date: Sun, 15 Mar 2015 10:01:01 GMT
Server: Apache/2.2.22 (Debian)
X-Powered-By: PHP/5.4.36-0+deb7u3
X-Error: 202 Accepted
X-DigestKey:
Vary: Accept-Encoding
Content-Length: 69
Content-Type: text/plain
Ver: 3a - ID: ESCYL0900000009001D
Query Length: 141
202: Accepted
Creo que tampoco da errores aunque al darle para que actualice no cambia, sigue poniendo lo mismo la misma hora y todo....este archivo meteoclimatric.log no debería estar en var/log/meteoclimatic.log en vez de en home/pi?????
Creo que la cosa ya está apuntito de caramelo :)
-
Efectivamente el log se estará creando en /var/log/meteoclimatic.log (eso es lo que está puesto en meteoclimatic.sh)
Mira a ver qué pone en él
-
Efectivamente el log se estará creando en /var/log/meteoclimatic.log (eso es lo que está puesto en meteoclimatic.sh)
Mira a ver qué pone en él
me pone esto en var/log/meteoclimatic.log:
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
entonces.......paso el archivo meteoclimatic.log que tengo en home/pi a var/log , no?...
y otro apunte, tambien tengo los archivos meteoclimatic_http.php y meteoclimatic_http.php.old en home /pi......estos estan bien ahí o hay que reubicarles en otro sitio o cambiar su ruta o algo....
-
Prueba a cambiar en el crontab la línea de ejecución del bash. Pon esto:
# EnvÃa datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /root/home/pi/meteoclimatic.sh
A ver qué sale en el log.
No toques nada en las rutas que parecen estar todas bien y no pases ningún archivo a ninguna parte o nos liamos más.
-
Prueba a cambiar en el crontab la línea de ejecución del bash. Pon esto:
# EnvÃa datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /root/home/pi/meteoclimatic.sh
A ver qué sale en el log.
No toques nada en las rutas que parecen estar todas bien y no pases ningún archivo a ninguna parte o nos liamos más.
en el log sigue apareciendo lo mismo could not open input file: meteoclimatic_http.php.old :-\
-
Bufff voy a tener que estudiar más con esto de las rutas en Linux ...
Es lo que tiene empezar con esto no habiéndolo tocado mucho antes.... es problema de que en el tutorial salgan unas rutas y tener los archivos en otras, pero todo consiste en eso... en poner las rutas correctas.
Empecemos a corregir cosas de las que nos vayamos dando cuenta. En el archivo meteoclimatic.sh en la línea cd /root/meteoclimatic
pon cd /root/home/pi que es donde tienes ese archivo.
Elimina el log con rm /var/log/meteoclimatic.log y tras ejecutarse el crontab y haberse creado de nuevo /var/log/meteoclimatic.log vuelves a poner el contenido de ese archivo a ver si lee el archivo PHP de la utilidad.
A ver si vamos enlazando todo correctamente.
-
Bufff voy a tener que estudiar más con esto de las rutas en Linux ...
Es lo que tiene empezar con esto no habiéndolo tocado mucho antes.... es problema de que en el tutorial salgan unas rutas y tener los archivos en otras, pero todo consiste en eso... en poner las rutas correctas.
Empecemos a corregir cosas de las que nos vayamos dando cuenta. En el archivo meteoclimatic.sh en la línea cd /root/meteoclimatic
pon cd /root/home/pi que es donde tienes ese archivo.
Elimina el log con rm /var/log/meteoclimatic.log y tras ejecutarse el crontab y haberse creado de nuevo /var/log/meteoclimatic.log vuelves a poner el contenido de ese archivo a ver si lee el archivo PHP de la utilidad.
A ver si vamos enlazando todo correctamente.
hello
bueno pues he cambiado eso de meteoclimatic.sh y he eliminado el archivo meteoclimatic.log de var/log.....el caso es que no me he limitado a borrar su contenido me lo he cargado totalmente........y ahora actualizo pero no aparece en /var /log........Solo tenía que haber borrado el contenido no?, o hay que esperar bastante tiempo a que vuelva a aparecer....
-
rm /var/log/meteoclimatic.log elimina el archivo y esa era mi intención, que lo empezara a crear de nuevo y así debe de hacerlo.
recapitulemos...
Tu archivo meteoclimatic.sh debe de estar así:
#!/bin/bash
cd /root/home/pi
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
Recuerda que cambiamos anteriormente la línea cd /root/meteoclimatic por la nueva cd /root/home/pi donde tienes el archivo meteoclimatic_http.php.old
Y en el crontab debes de tener:
# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /root/home/pi/meteoclimatic.sh
Si se ejecuta el archivo /root/home/pi/meteoclimatic.sh cada 15 minutos debe de escribir el log en ese espacio de tiempo en /var/log/meteoclimatic.log
-
rm /var/log/meteoclimatic.log elimina el archivo y esa era mi intención, que lo empezara a crear de nuevo y así debe de hacerlo.
recapitulemos...
Tu archivo meteoclimatic.sh debe de estar así:
#!/bin/bash
cd /root/home/pi
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
Recuerda que cambiamos anteriormente la línea cd /root/meteoclimatic por la nueva cd /root/home/pi donde tienes el archivo meteoclimatic_http.php.old
Y en el crontab debes de tener:
# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * root /root/home/pi/meteoclimatic.sh
Si se ejecuta el archivo /root/home/pi/meteoclimatic.sh cada 15 minutos debe de escribir el log en ese espacio de tiempo en /var/log/meteoclimatic.log
Pues algo pasa porque no me escribe el log en esa ruta. te dejo dos pantallazos del meteoclimatic.sh y del crontab para que veas que en principio están bien configurados:
(https://c1.staticflickr.com/5/4262/35065312832_35c27b44b1_b.jpg) (https://flic.kr/p/VqATRb)Sin título (https://flic.kr/p/VqATRb) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
(https://c1.staticflickr.com/5/4237/34844205110_2c91927e72_b.jpg) (https://flic.kr/p/V64Ee5)crontab (https://flic.kr/p/V64Ee5) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
-
Vamos a probar manualmente.
Ve a /home/pi donde tienes meteoclimatic_http.php.old y pones php meteoclimatic_http.php.old a ver qué sale al ejecutarlo
-
Me sale esto:
(https://c1.staticflickr.com/5/4240/35191829776_e019f75cea_b.jpg) (https://flic.kr/p/VBMjVN)php (https://flic.kr/p/VBMjVN) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
-
Perfecto. La plantilla fue enviada.
No vamos a calentarnos la cabeza más con el bash. Deben de ser permisos de root o algo parecido. Jantoni es el que lo sabe y yo no tengo Raspi para probar.
En crontab cambia la línea por esta nueva:
# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * php /home/pi/meteoclimatic_http.php.old
-
A ver....me he perdido.
Veo que en /etc/crontab llamas a la rutina de envío en /root/home/pi/meteoclimatic.sh
No acabo de entender el motivo, yo lo situé en /root/meteoclimatic/meteoclimatic.sh
Al tocar toda la estructura debes revisar, minuciosamente, los permisos que tiene cada fichero.
Desde luego, una cosa es clara, si el script se ejecuta manualmente, pero no desde /etc/crontab el problema es de permisos, si o si.
Yo entiendo que se quiera cambiar la estructura y ubicación, pero el problema es dar, posteriormente, soporte ante fallos.
Me da la sensación que habéis tocado tanto que no os voy a poder ayudar, pero lo vamos a intentar.
Para ello, tendrás que poner:
- un volcado de los directorios, con ls -la
- un volcado del log del script de envío
- un volcado de meteoclimatic.ini
- un volcado de meteoclimatic.sh
Saludos.
-
Perfecto. La plantilla fue enviada.
No vamos a calentarnos la cabeza más con el bash. Deben de ser permisos de root o algo parecido. Jantoni es el que lo sabe y yo no tengo Raspi para probar.
En crontab cambia la línea por esta nueva:
# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * php /home/pi/meteoclimatic_http.php.old
Para ello, tendrás que poner:
- un volcado de los directorios, con ls -la
- un volcado del log del script de envío
- un volcado de meteoclimatic.ini
- un volcado de meteoclimatic.sh
Saludos.
[/quote]
(https://c1.staticflickr.com/5/4208/34410817664_3b012e2dae_b.jpg) (https://flic.kr/p/UqLreJ)la ls (https://flic.kr/p/UqLreJ) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
(https://c1.staticflickr.com/5/4257/34867518610_8dd42bc4a4_b.jpg) (https://flic.kr/p/V889vY)sh (https://flic.kr/p/V889vY) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
(https://c1.staticflickr.com/5/4210/34867517780_0ae86b6daa_b.jpg) (https://flic.kr/p/V889gE)volcado (https://flic.kr/p/V889gE) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
el log del scrip de envío no sé si te refieres a eso que he puesto o a meteoclimatic.log
-
Con EA4TN la cosa va a ser más fácil :)
Yo opero como root con la Orange Pi que no tiene usuario pi por defecto como en Raspbian por lo que con eso y que también no hace mucho que empecé a trastear con Linux esto de usuario etc etc no lo he tocado prácticamente nada.
Burgati te he borrado la foto de meteoclimatic.ini del último mensaje en la que ponías tu contraseña. Asegúrate cuando pongas información de no poner contraseñas o tu IP por seguridad.
-
Con EA4TN la cosa va a ser más fácil :)
Yo opero como root con la Orange Pi que no tiene usuario pi por defecto como en Raspbian por lo que con eso y que también no hace mucho que empecé a trastear con Linux esto de usuario etc etc no lo he tocado prácticamente nada.
Burgati te he borrado la foto de meteoclimatic.ini del último mensaje en la que ponías tu contraseña. Asegúrate cuando pongas información de no poner contraseñas o tu IP por seguridad.
no me di cuenta!!!!, jje , gracias.
Lo vuelvo a poner ahora ya sin el sig:
(https://c1.staticflickr.com/5/4247/34871854830_4fe3b23d07_z.jpg) (https://flic.kr/p/V8vnwo)ini (https://flic.kr/p/V8vnwo) by david nuño (https://www.flickr.com/photos/130556449@N06/), en Flickr
-
A ver, vamos por partes....que me hago mayor y me bloqueo.
Establezcamos las normas.
Por favor, a partir de ahora, cuando te digo volcado me refiero a algo que pueda tocar, no una foto. Más que nada, porque si es un vocado en texto (vaya, un vulgar corta y pega), te puedo contestar del mismo modo, evitando errores.
Empecemos:
- ¿Por qué motivo el usuario bajo el que se ejecuta la línea en el crontab es php?
# Envía datos a Meteoclimatic cada 15 minutos, empezando en el minuto 2 de cada hora
2-59/15 * * * * php /home/pi/meteoclimatic_http.php.old
Hacer esto sin conocimientos no es recomendable. Bajo estas circunstancias, tienes que crear el usuario php y el grupo php.
Pero, sinceramente, no le encuentro motivo. Además, llamas al script directamente, sin pasar por el lanzador que es meteoclimatic.sh.
Esta todo cambiado, lo que me extraña es que funcionara.:
en tu caso sería:
1-59/5 * * * * root /home/pi/meteoclimatic.sh
Veo que me incorporas un log de Weewx.....no....ese no me interesa para nada. El que te pedía es el que vuelva el script.
Tal como lo tienes programado, se debería escribir en /var/log/meteoclimatic.log, pero como el script lo estás ejecutando como usuario "php" que no tiene permisos para escribir en el directorio /var/log pues se pierde. Vaya, que fastidio :-)
Luego, en meteoclimatic.ini apunta a que el fichero con la plantilla está en /var/www/weewx/meteoclimatic.htm
Este punto debes revisarlo. Con las versiones más modernas de Raspbian y de Apache2 deberías apuntar a /var/www/html/weewx/meteoclimatic.htm
Puede que tengas un enlace simbólico para que /var/www/weewx/meteoclimatic.htm apunte a /var/www/html/weewx/meteoclimatic.htm, pero es más correcto poner el enlace completo y no el simbólico. Si estás usando versiones antiguas, estos dos últimos párrafos debes olvidarlos.
Por lo demás, no veo nada especial. Solo veo que tienes un cacao de directorios, usuarios y permisos.
Corrigiendo lo que te he dicho, debería funcionar.
Una pequeña explicación. Raspbian ha empezado a aplicar, de un tiempo a esta parte, las políticas de seguridad de Debian.
Si cuando instaláis vuestra imagen, véis que no hay directorio /root es porque no se ha creado por la obsesión de Debian por la seguridad.
Para generar /root y cambiar la contraseña de root, haríamos lo siguiente:
- Nos identificamos como pi y la password que tengamos para pi (raspberry es la de por defecto)
- A continuación
sudo passwd root
Voila, ya tenemos usuario root y directorio /root
Ahhhhh......que te quieres identificar como usario root directamente desde el ssh???????? Eso es otra obsesión de Debian que Raspbian está empezando a copiar......por defecto, el usuario root no puede identificarse por ssh.
Y ¿que hacemos?
Pues como siempre usar sudo, o para trabajar como si fueramos root:
su -
Si prefieres habilitar a root para entrar por ssh, solo tienes que poner SSH ROOT DEBIAN en Google.....no tiene pérdida.
Saludos.
-
Ah....el log /var/log/meteoclimatic.log no se genera por las siguientes razones:
- Porque es el lanzado meteoclimatic.sh el que indica si hay log o no hay log
- Porque el usuario php no está habilitado para escribir en /var/log
-
Bueno a ver si he hecho algo bien jeje.....
1)En primer lugar en el crontab ahora he puesto esto: 1-59/5 * * * * root /home/pi/meteoclimatic.sh
2)En meteoclimatic.ini he dejado la ruta /var/www/weewx/meteoclimatic.htm, porque no existe nuinguna carpeta htm en var/www
3) El meteoclimatic.log ubicado en /var /log me sigue poniendo esto:
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
Could not open input file: meteoclimatic_http.php.old
-
Bueno.....tranquilidad.
Por eso, pido que no pongáis fotos con las salidas de consola, porque se trabaja muy mal con ellas.....es preferible siempre un corta y pega tradicional para luego copiar el texto.
La razón de lo que te pasa es la siguiente:
Mira tu meteoclimatic.sh, dice lo siguiente y lo voy a ir explicando paso a paso:
Le indicamos a nuestro sistema operativo que intérprete de comandos vamos a usar
#!/bin/bash
Nos vamos al directorio /root/meteoclimatic
cd /root/meteoclimatic
Ejecutamos el script situado en /root/meteoclimatic
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
Salimos
exit
Y ¿donde está el problema?
Que tu lo tienes en /home/pi/ y no en /root/meteoclimatic.
Por tanto, tu script para lanzar el script final debería ser este:
#!/bin/bash
cd /home/pi
#Si no quieres log
#php meteoclimatic_http.php.old
#Si quieres log
php meteoclimatic_http.php.old >> /var/log/meteoclimatic.log
exit
Por eso, os decía que estaba todo liado al ir modificando los directorios.
Prueba esa modificación, porque el meteoclimatic.sh que tienes ahora, nunca va a encontrar el script, porque lo hace en /root/meteoclimatic en lugar de en /home/pi.
Saludos.
-
Vale, muchas gracias por las explicaciones, vienen muy bien ;)
Bueno pues acabo de hacer lo que me has dicho y parace que en meteoclimatic.log ya hay cambios a mejor, creo:
HTTP/1.1 202 Accepted
Date: Mon, 12 Jun 2017 19:31:01 GMT
Server: Apache/2.4.10 (Debian)
X-Error: 202 Accepted
X-DigestKey:
Content-Length: 69
Content-Type: text/plain;charset=UTF-8
Ver: 3a - ID: ESCYL0900000009001D
Query Length: 145
202: Accepted
-
plau2
Bueno parece que ya rula esto perfectamente......muchas gracias a los dos por ayudarme ya que sin vuestra ayuda hubiese sido incapaz. Ahora haré una copia de seguridad de la tarjeta de la raspy para por si las moscas
Un cordial saludo
-
Fantastico!!!!!
Y recordad, los script sencillos como estos, son fáciles de leer.
Si los lees como si fuera una novela, te vas enterando de lo que se hace y por qué puede fallar.
-
apla3 apla3 apla3
Espero que todo esto sirva para futuras consultas en el foro ;D
-
Buenas tardes. Llevo, con hoy tres, días dedicados a intentar poner a funcionar estoy por más que miro y leo no soy capaz de ver la luz al final del túnel este de Lunux. Me dije que no iba a preguntar, pero ya no sé que más hacer. Os comento:
_ /var/log/meteoclimatic.log
/etc/weewx/skins/Standard/meteoclimatic.htm?
Entiendo que no le estoy diciendo bien a meteoclimatic.ini donde buscar la plantilla.
_/root/meteoclimatic/meteoclimatic.ini
[Global]
Stations=ESAND2100000021500B
DigestKey=XxxxxxxxXX
[ESAND2100000021500B]
Path=/var/www/weewx/meteoclimatic.htm
Password=XXXXXXXXXXXXXXXXXXXXXXX
StationVendor=Davis
StationModel=Vantage Pro2
¿Podríais decirme qué está mal, si es que es de aquí?
-
Hola Cheri
Has mirado si efectivamente tienes la plantilla en /var/www/weewx/meteoclimatic.htm ??
-
Hola jnviper.
Esta es la copia de la ruta directamente: /var/www/weewx/meteoclimatic.htm
-
Ok a ver si se pasa EA4TN que es el que más entiende de todo esto de Linux y te echa un cable.
Saludos
-
Gracias de todas formas.
-
En las versiones más modernas de Debian o Ubuntu, el directorio ha cambiado
/var/www/html/weewx/meteoclimatic.htm
-
Buenas EA4TN.
En mi directorio /var/www/html/weewx/ no tengo el archivo meteoclimatic.htm, está en /var/www/weewx/.
¿Sabrías decirme que tengo que cambiar para que busque el archivo meteoclimatic.htm en /etc/weewx/skins/Standard/ o donde está ahora?
-
Creo que estáis mezclando todos los conceptos y todos los directorios.
Sinceramente, me estáis confundiendo hasta a mi.
Creo que abandono. No tengo capacidad para esto.
-
Hola Cheri, yo tuve muchos tropiezos para poner a funcionar el Weewx ( http://forum.meteoclimatic.net/index.php/topic,1313.0.html )
Tal y como me recomendó jmviper a veces es mejor separarse un poco , tomar el aire y empezar desde el principio. Puede ocurrir que un punto, un espacio o una barra mal colocada, y dificil de detectar, nos anule el sistema. Repásalo todo con cuidado.
Saludos.
-
Muchas gracias Telares. Mirando tu hilo creo que tenía algo mal en meteoclimatic.ini. Digo "creo" porque ya no sé ni en qué día vivo, estoy todo aturullado. Ahora tengo que mirar el tema de los decimales porque me está subiendo con XX.0 todo.
EA4TN, comprendo tu confusión. Mando preguntas que seguramente para un entendido no tenga ni pies ni cabeza, no llego a más en este campo. Muchas gracias de todas formas por todas tus "pistas" que quedan en los hilos.
Voy a por el tema de los decimales :-X
-
Pues parece que ya manda todo bien. Ahora a hacer copia de seguridad de la Sd. GRACIAS.
apla3
-
Perfecto :) :)
Sólo por curiosidad y por si puede servir para alguien que pueda tener un problema parecido al tuyo en el foro... qué era exactamente ??
Saludos
-
Jmviper, me vas a perdonar, pero no se decirte exactamente como he solucionado el problema. Creo que ha sido cambiando una ruta, pero no me preguntes cual porque ya no sé ni que cambiaba. Han sido tantos cambios probando que estaba a punto de hacer borrón y cuenta nueva. Al final sonó la flauta.
Lo de los decimales lo he arreglado con lo que le dijiste a Telares:
Cambiar en meteoclimatic_http.php.old
foreach ($items as $valor) {
list ($var, $val) = explode ('=',$valor);
$tpl[$var] = trim ($val);
}
Por
foreach ($items as $valor) {
//list ($var, $val) = explode ('=',$valor);
//Se sustituye la linea anterior por la siguiente, que cambia las comas decimales por puntos decimales
list ($var, $val) = explode ('=',str_replace(',', '.', str_replace('.', '', $valor)));
$tpl[$var] = trim ($val);
}
Muchas gracias.
-
Nada que disculpar Cheri
A veces suena la flauta con tropecientos cambios que hacemos, más de uno hemos pasado por esa situación, lo importante es que lo hayas conseguido y te hayan ayudado temas relacionados del foro.
saludos
-
hola.....he empezado de cero y ya lo tengo CASI todo pero cuando voy a modificar el crontab me sale la pantallla que adjunto.....vamos que no es igual que lo que tendría que tener......¿donde está el problemA?....no sé donde poner la linea porque me sale diferente que en vuestros tutoriales,,,,
-
Burgati, según creo recordar ahora tenías que poner a continuación de lo que te sale esto:
#
# 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 1 de cada hora
1-59/15 * * * * root /root/meteoclimatic/meteoclimatic.sh