
Soy consciente de que hay otras preguntas que hacen preguntas muy similares, pero ninguna parece responder a mi problema. Estoy ejecutando un odroid hc2 sbc con armbian para una instancia de nextcloud. Hace dos días, falló por primera vez, después de funcionar de manera estable durante más de un año. Para descartar el sobrecalentamiento como motivo, me gustaría escribir un script para monitorear la temperatura, es decir, ejecutar la función integrada "armbianmonitor", que crea esta salida continua:
Stop monitoring using [ctrl]-[c]
Time big.LITTLE load %cpu %sys %usr %nice %io %irq CPU C.St.
09:52:33: 600/ 600MHz 0.23 12% 1% 10% 0% 0% 0% 53.0°C 0/13
09:52:38: 1400/ 600MHz 0.21 2% 0% 1% 0% 0% 0% 53.0°C 0/13
09:52:43: 1400/ 600MHz 0.20 2% 0% 1% 0% 0% 0% 53.0°C 0/13^C
con:
sudo armbianmonitor -m | awk '$11 ~ "°C" {print $1; print $1;exit1}' ORS=' '
Obtengo estos resultados:
09:57:48: 53.0°C 09:57:53: 51.0°C 09:57:58: 51.0°C 09:58:03: 51.0°C
pero... me gustaría tener sólo un par (tiempo y temperatura) por ejecución del script. En otras palabras, se supone que awk y/o (?) armbianmonitor se detendrán después de devolver el primer par. También intenté canalizar la salida de un script que invoca este comando a un archivo, pero el archivo permanece en blanco, ¿tal vez porque armbianmonitor crea una salida continua?
Respuesta1
Tomé un camino ligeramente diferente y ahora hago lo siguiente:
ejecutado cada minuto:
#!/bin/bash
dttm=$(date +"%d.%m.%Y %H:%M;")
temp=$(echo $(cat /sys/devices/virtual/thermal/thermal_zone0/temp) /1000 | bc)
echo $dttm $temp
Respuesta2
De acuerdo a estopágina, accede a este archivo:
/etc/armbianmonitor/datasources/soctemp
Ejemplo de vigilancia de un segundo:
watch -n 1 cat /etc/armbianmonitor/datasources/soctemp