Autor Tema: Nuevo script instalación automatizada  (Leído 23354 veces)

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

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Nuevo script instalación automatizada
« en: 25 de Enero del 2020, 22:12:40 pm »
Ya hace casi 4 años desde la publicación del último script para instalar Weewx de forma sencilla.

Ha llegado el momento de crear uno nuevo, adaptado a los avances y modificaciones en los sistemas operativos.

Comenzaré a probarlo en una Raspberry Pi modelo B+ de 512 MB de RAM para ser probado posteriormente en otras plataformas.

Paciencia....no le puedo dedicar todo el tiempo que quisiera

Iré publicando los avances aquí mismo.

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #1 en: 25 de Enero del 2020, 22:14:06 pm »
De momento os pongo el último script que tenía escrito, aunque creo que no lo publique.

Este script no funcionará más que con Debian Jessie, por lo que lo pongo solo a título ilustrativo.

Código: [Seleccionar]

#!/bin/bash

# Esta versión puede estar desactualizada
# Comprueba la última versión en http://jantoni.no-ip.org/download/raspweather

# Empezamos

# Para desarrollo posterior
#============================================================================================

#$cod="*COD="
#$sig="*SIG="

# Identificar o preguntar por la plataforma Raspberry Pi, Orange Pi, Odroid, PC
#


# Preguntar por codigo estacion Meteoclimatic
#echo "Por favor, introduzca el código de estación en Meteoclimatic (ejemplo ESMAD2800000028522A): "
#read estacion_cod
#echo "Has introducido" $estacion_cod


# Preguntar por el SIG de la estacion en Meteoclimatic
#echo "Por favor, introduzca el SIG facilitado por Meteoclimatic (ejemplo ESMAD2800000028522A): "
#read estacion_sig
#echo "Has introducido" $estacion_cod
#$estacion_cod="$cod$estacion_cod"

# Descargar una plantilla de algún sitio
#wget http://www.googledrive.com/host/0B3z9VwkcZjjWaHNFQzNBUmZCRHc
#mv 0B3z9VwkcZjjWaHNFQzNBUmZCRHc weewx.plantilla


# Editar la plantilla con los datos incorporados anteriormente
#


# Descargar skin Meteoclimatic
#


# Descomprimir skin en /etc/weewx/skins/Standard/
#


# Descargar rutina de envío de datos a Meteoclimatic
#


# Configuración de la rutina con los datos introducidos
#


# Modificar /etc/crontab para envío de datos con la rutina
#
#==============================================================================================


# Cambiamos la zona horaria. Nos garantizamos que sea UTC
echo 'UTC' > /etc/timezone
apt-get install --reinstall tzdata

# Actualizamos el sistema
apt-get update
apt-get upgrade --yes

# Vamos al directorio principal del usuario conectado
cd ~

# Descargamos la version disponible en Weewx.com para su descarga
wget -A '*.deb' -r -l 1 -nd http://weewx.com/downloads/

# Instalamos el software adicional a Weewx
apt-get install --yes libjbig0 liblcms2-2 libtiff5 libwebp5 libwebpdemux1 libwebpmux1 python-cheetah python-configobj python-imaging python-pil python-serial python-six python-usb apache2 php5 php5-sqlite libapache2-mod-php5

# Instalamos Weewx
dpkg -i wee*.deb

# Paramos Weewx que ha debido quedar funcionando
/etc/init.d/weewx stop

# El enlace simbolico parece que genera algun problema en Raspbian Jessie
#ln -s /var/www/weewx /var/www/html/weewx

# Eliminamos el swaping para alargar la vida de la tarjeta SD
swapoff --all

# Desinstalamos el falso reloj y el sistema de swaping
apt-get purge --yes fake-hwclock dphys-swapfile

# Modificamos el sistema de log para que Weewx tenga su propio log y no mezclado con el resto del sistema
echo ":programname,startswith,\"weewx\"" /var/log/weewx.log | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null
echo ":programname,startswith,\"weewx\"" \~\ | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null

# Establecemos que Weewx tenga un log dentro de logrotate para evitar ficheros que nos consuman la RAM o la SD
echo -e "/var/log/weewx.log {\n  weekly\n  missingok\n  rotate 52\n  compress\n  delaycompress\n  notifempty\n  sharedscripts\n  postrotate\n  /etc/init.d/rsyslog stop\n  /etc/init.d/rsyslog start\n  endscript\n}" | sudo tee -a /etc/logrotate.d/weewx > /dev/null
echo "reiniciando el sistema de log"
service rsyslog restart

# Cambiamos en Weewx el dia de comienzo de semana. Ponemos lunes
# Buscamos week_start = 6 y lo sustituimos por week_start = 0 en /etc/weewx/weewx.conf
sed -i 's/week_start = 6/week_start = 0/g' "/etc/weewx/weewx.conf"

# Cambiamos Weewx.conf para que las unidades sean en metrica y ademas mm en lugar de cm y km/h en lugar m/s
sed -i 's/group_speed = meter_per_second/group_speed = km_per_hour/g' "/etc/weewx/weewx.conf"
sed -i 's/group_speed2 = meter_per_second2/group_speed2 = km_per_hour2/g' "/etc/weewx/weewx.conf"
sed -i 's/group_pressure = mbar/group_pressure = hPa/g' "/etc/weewx/weewx.conf"
sed -i 's/group_rain = cm/group_rain = mm/g' "/etc/weewx/weewx.conf"
sed -i 's/group_rainrate = cm_per_hour/group_rainrate = mm_per_hour/g' "/etc/weewx/weewx.conf"

# Cambiamos el formato de las horas y las fechas
sed -i 's/day        = %X/day        = %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/week       = %X (%A)/week       = %H:%M on %A/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/month      = %x %X/month      = %d-%b-%Y %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/year       = %x %X/year       = %d-%b-%Y %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/rainyear   = %x %X/rainyear   = %d-%b-%Y %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/current    = %x %X/current    = %d-%b-%Y %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/ephem_day  = %X/ephem_day  = %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"
sed -i 's/ephem_year = %x %X/ephem_year = %d-%b-%Y %H:%M/g' "/etc/weewx/skins/Standard/skin.conf"

# Cambiamos el formato de viento para que cuando la velocidad sea Cero no aparezca N/A sino N
sed -i 's/NNW, N\/A/NNW, N/g' "/etc/weewx/skins/Standard/skin.conf"

# Mas dificil todavia. Generamos el locale spanish si no existe
sed -i 's/# es_ES.UTF-8/es_ES.UTF-8/g' /etc/locale.gen
/usr/sbin/locale-gen
echo -e "LANG=\"es_ES.UTF-8\"\nLANGUAGE=\"es_ES.UTF-8\"\nLC_ALL=\"es_ES.UTF-8\"" | sudo tee -a /etc/environment > /dev/null
#Falta insertar las variables de lenguaje en el script de arranque de weewx

# Esto es todo. Reiniciamos
reboot


Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.576
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Nuevo script instalación automatizada
« Respuesta #2 en: 26 de Enero del 2020, 09:26:37 am »
Hola jantoni

El problema puede ser la compatibilidad entre sistemas pero creo que sabiendo de qué sistema se trata  (preguntándolo internamente el script al mismo) se podría cargar una configuración u otra si difiere entre ellos.

Yo tengo solo la Orange Pi y con debian Buster (armbian) y no tengo ni una queja con él, ningún fallo en la SD ni nada corrompido y logs almacena los mínimos eliminando todos los rotados antiguos.

La primera sección del script (para desarrollo posterior) sería una especie de intro de datos por lo que creo que se debería de hacer para todas las cosas que cambiara el script. Como base está muy bien ya que tiene pasos establecidos y sería cuestión de ir rellenándolos.

Yo de momento iré probando lo que hay escrito en mi opi y creando las preguntas con opciones. El código se puede ir poniendo en adjuntos en este hilo para ir probándolo cada uno en su SO e ir depurándolo con los errores que puedan ir surgiendo.

Se intentará ir haciendo en los ratos libres  :)

Saludos



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

www.meteoarchena.es

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #3 en: 26 de Enero del 2020, 09:39:02 am »
Aquí hay usuarios que dominan a la perfección el bash de Linux.

Yo solo soy un torpe que tiene que tirar continuamente del manual de bash que tengo para consulta y de Google. No soy ningún artista😀😀😀😀😀😀😀😀😀

Y efectivamente, la idea es ir poniendo datos para tener, al final, una estación configurada....o casi, je je je

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jmviper

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 4.576
  • "Vortex Complex"
    • Ver Perfil
    • www.meteoarchena.es
  • Estación: Archena - ESMUR3000000030600B
Re:Nuevo script instalación automatizada
« Respuesta #4 en: 26 de Enero del 2020, 10:39:06 am »

Yo solo soy un torpe que tiene que tirar continuamente del manual de bash que tengo para consulta y de Google. No soy ningún artista😀😀😀😀😀😀😀😀😀


Y yo otro  *-* *-*


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

www.meteoarchena.es

Desconectado ANIMAGADO

  • Jr. Member
  • **
  • Mensajes: 65
    • Ver Perfil
  • Estación: ESCYL3700000037120A
Re:Nuevo script instalación automatizada
« Respuesta #5 en: 26 de Enero del 2020, 11:00:54 am »
Hola

Eso fue lo que segui yo para la ultima instalcion que hice, pero en vez de utilizar el script, fui paso a paso.......el 95% funciona.

Cuesta por que el no saber Linux influye y mucho

Saludos

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #6 en: 27 de Enero del 2020, 21:41:19 pm »
Bueno.....las primeras pruebas han funcionado......a medias

La Raspi es un coñazo para muchas cosas.

Además de tener unas imágenes ENOOOOOORRRRRRRMESSSSSSSS. Por ejemplo, una imagen de Armbian para Orange Pi ocupa 1,1GB, mientras que una de Raspberry Pi se va a los 2,2GB......el doble......y hablamos de las versiones LITE, sin entorno gráfico.

Eso motiva que, cada vez que hay que quemar una imagen nueva, el proceso se va a los 50 minutos solo de grabación de la imagen (Con Etcher, claro).

De ese modo, si hay que cambiar algo en el script y empezar a probar de nuevo, esto se dilata mucho en el tiempo.

Por otro lado, no acabo de entender como, en las primeras pruebas, las unidades aparecen en formato imperial, cuando en el script se pasan a métricas. Esto había funcionado siempre.......habrá que mirar si no ha cambiado algo Weewx en la configuración.

Seguiremos informando.

Ah.....de momento no pongo el script hasta probar un poco más, y conseguir, al menos, que las unidades salgan en métrica después del primer arranque.

Saludos.

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado ea1htb

  • Jr. Member
  • **
  • Mensajes: 57
    • Ver Perfil
  • Estación: ESCTB3900000039400C
Re:Nuevo script instalación automatizada
« Respuesta #7 en: 27 de Enero del 2020, 22:17:38 pm »
si necesitas algun beta tester puedes contar conmigo, no tengo mucho tiempo tampoco pero algo se puede ir haciendo


un saludo

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #8 en: 28 de Enero del 2020, 00:17:41 am »
Gracias.

Mañana haré otro test, porque después de un largo rato, la última imagen ha fallado porque la tarjeta sd debe estar pocha.

Mañana colgaré el primer script.

Así podéis probarlo

73

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado ANIMAGADO

  • Jr. Member
  • **
  • Mensajes: 65
    • Ver Perfil
  • Estación: ESCYL3700000037120A
Re:Nuevo script instalación automatizada
« Respuesta #9 en: 28 de Enero del 2020, 08:45:44 am »
Hola Jantoni

No hace falta decir, que si necesitas algo, ya sabes.

Desde la version estabel que yo tenia funcionanado durante mas de 2 años, a ahora, hay cambis, no se si soy yo que no sabe hacer las cosas o es que no funciona lo que le digo que haga.

En fin....

Saludos An¡bal - EA1ASC


Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #10 en: 28 de Enero del 2020, 09:30:22 am »
Bueno, el script de instalación es básicamente el mismo, pero aprovechando a depurarlo por los cambios sufridos en las diferentes distribuciones de Debian y raspbian.

Paquetes desaparecidos, paquetes que se han refundido con otros, nuevas versiones mayores de paquetes, cambios en la estructura de ficheros, etc.

Y me imagino que, los ficheros de weewx, en la parte de configuración, han podido sufrir algún cambio desde weewx 3.7 a la versión actual 3.9.2

Además, podemos aprovechar para, posteriormente, en el mismo script, automatizar la configuración de la plantilla de meteoclimatic y otras muchas cosas.

Por eso, entre todos podemos hacer un script decente, aprovechando los conocimientos de Linux de más de uno que hay por aquí. No digo que tenga que haber algún experto, sino que la suma de los pequeños conocimientos de todos, pueden hacer un excelente trabajo.

Y, una vez terminado con el de weewx nos podemos meter con el de cumulus mx.

73

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado ea1htb

  • Jr. Member
  • **
  • Mensajes: 57
    • Ver Perfil
  • Estación: ESCTB3900000039400C
Re:Nuevo script instalación automatizada
« Respuesta #11 en: 28 de Enero del 2020, 13:44:07 pm »
Uuffff cumulusmx, no sé si es cosa mía o no, pero cada 2x3 se para de correr el programa y toca volver a iniciarlo, no sé si será por la nuevas versiones o que, pero a mí me falla más que una escopeta de feria.
Haber si podemos dejar los dos al 100%

73

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #12 en: 28 de Enero del 2020, 18:53:25 pm »
Bueno, yo mi raspi con weewx la reinicio todas las madrugadas.

Observé que el puerto ethernet tendía a colgarse, de forma espontánea, y de forma errática cada  x días.

Así que opte por reiniciar todas las madrugadas.

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado jantoni

  • Investigación
  • Hero Member
  • ******
  • Mensajes: 5.794
    • Ver Perfil
  • Estación: ESMAD2800000028522A
Re:Nuevo script instalación automatizada
« Respuesta #13 en: 29 de Enero del 2020, 07:57:12 am »
Jmviper, ¿puedes enviarme el script de envío a Meteoclimatic que modificaste hace unos años?

Vamos a meterlo todo en el nuevo script.

Así está todo en el mismo sitio.

Davis Vantage Vue (sin datalogger) + Orange Pi PC + Weewx

GW2000 + WS90 con Weewx (https://www.ecowitt.net/home/index?id=199315)
WH2650 con WH65 con Home Assistant y Weewx (https://www.ecowitt.net/home/index?id=40387)
GW1000 con WH32 y Home Assistant (https://www.ecowitt.net/home/index?id=17080)
Sensores adicionales: WH31 (3) + WH41

Desconectado B.Santiago

  • Moderador Global
  • Hero Member
  • ******
  • Mensajes: 2.087
    • Ver Perfil
  • Estación: Ávila- La Colilla AV39. Anteriormente ESCYL0500000005192A
Re:Nuevo script instalación automatizada
« Respuesta #14 en: 29 de Enero del 2020, 08:18:37 am »
Uuffff cumulusmx, no sé si es cosa mía o no, pero cada 2x3 se para de correr el programa y toca volver a iniciarlo, no sé si será por la nuevas versiones o que, pero a mí me falla más que una escopeta de feria.
Haber si podemos dejar los dos al 100%

73

LLevo tres años con él en marcha y no se para más que cuando yo lo decido... o cuando se dan otras circunstancias  imponderables, léase cortes de luz, etc.
 Otros problemas menores me habrá dado, y me dará, pero dejar de correr no.