etat-systeme.sh
El chequeo completo en 30 segundos: kernel, distribución, carga, memoria, almacenamiento y temperatura del SoC. Primer reflejo en SSH sobre la Portenta X8 para verificar que la imagen Linux corre en buenas condiciones.
Hardware
Un Arduino Portenta X8 (módulo ST STM32MP1: quad Cortex-A7 Linux + doble núcleo Cortex-M4 de tiempo real, 8 GB eMMC, 2 GB LPDDR4, Wi-Fi/BT integrados, opción LTE). Ninguno; acceso SSH o consola serie en la placa.
Cableado
Nada que cablear. Acceso recomendado: SSH por USB-C (routed) o red.
Funcionamiento
El script apila lecturas sysfs/procfs estándar del kernel Linux; todo es de solo lectura, sin riesgo para el sistema.
Ejecución
Lado Linux: acceso SSH (USB-C routed o red) sobre la imagen Portenta Linux, scripts bash/Python. Lado tiempo real: Arduino IDE con el core « Arduino Mbed OS Portenta X8 Boards », núcleo M7 de aplicación, grabado vía mboot desde Linux.
Variantes
Lanzarlo cada hora en cron hacia un archivo para tener histórico, o cruzarlo con el core Arduino de tiempo real.
etat-systeme.sh
#!/bin/bash
# Etat general du Linux embarque : noyau, charge, memoire, stockage.
# Aucune dependance.
echo "== Systeme =="
uname -a
cat /etc/os-release 2>/dev/null | head -3
echo
echo "== Charge et uptime =="
uptime
echo
echo "== Memoire (Mo) =="
free -m | head -3
echo
echo "== Stockage =="
df -h / /home 2>/dev/null | awk 'NR==1 || !seen[$0]++'
echo
echo "== Coeurs =="
nproc
grep -m1 CPU /proc/cpuinfo 2>/dev/null || true
echo
echo "== Temperature (si capteur) =="
for z in /sys/class/thermal/thermal_zone*/temp; do
[ -r "$z" ] && echo "$z : $(( $(cat "$z") / 1000 )) C"
done