SysMon
SysMon: guarda cosa sta facendo il tuo QNAP
Processi, dischi, rete e sensori in un terminale.
SysMon aggiunge i programmi che mostrano cosa sta facendo il NAS in questo momento: htop, btop, atop, Glances, iotop, iftop, ncdu, mtr e altri, tutti raggiungibili da un accesso SSH.
Ogni programma è compilato dai sorgenti con Bucket & Code Server IDE. Installa il pacchetto così com’è, oppure modifica il suo elenco di ricette e compila il tuo.
command -v hdparm
/usr/app/SysMon/first/hdparm
hdparm -V
hdparm v9.65
iostat -V | head -1
sysstat version 12.8.0
iperf3 --version | head -1
iperf 3.21 (cJSON 1.7.15)
nmap --version | head -1
Nmap version 7.991 ( https://nmap.org )
btop --version
btop version: 1.3.2
Cosa contiene
L’elenco di ricette nomina questi programmi, e la build aggiunge le librerie che servono loro.
Processi, processore e memoria
- htop
- l’elenco interattivo dei processi
- btop
- processore, memoria, dischi, rete e processi in una sola schermata
- atop
- processi con registrazione a lungo termine, e atopsar
- glances
- un monitor di sistema in Python
- procps
- ps, top, free, vmstat, watch, pgrep, pkill, pmap, slabtop
- sysstat
- iostat, mpstat, pidstat, sar
- psmisc
- pstree, fuser, killall, prtstat
- nmon
- Nigel's performance monitor
Dischi e file
- iotop
- uso dei dischi per processo e per thread
- ncdu
- cosa riempie una cartella, ordinato per dimensione
- lsof
- i file aperti e i processi che li tengono
- progress
- a che punto sono cp, mv, dd e tar
- pv
- avanzamento, velocità e tempo residuo dei dati in una pipe
- smartmontools
- smartctl e smartd per i dati S.M.A.R.T.
- hdparm
- legge e imposta i parametri dei dischi ATA/SATA, misura la velocità di lettura
- sdparm
- legge e modifica le mode page dei dischi SCSI e SATA
- nvme
- nvme-cli: informazioni sulle unità NVMe, SMART e registri degli errori
- ioping
- latenza del disco richiesta per richiesta, come ping
- fio
- tester di I/O flessibile
- duf
- uso del disco dei file system montati in una tabella
Rete
- iftop
- banda per connessione
- nload
- traffico in entrata e in uscita come grafici
- nethogs
- banda per processo
- bmon
- monitor della banda
- vnstat
- un registro del traffico per interfaccia, con il demone vnstatd
- mtr
- traceroute e ping in uno, salto per salto
- iptraf-ng
- traffico IP e statistiche LAN in un’interfaccia testuale
- tcpdump
- cattura e decodifica i pacchetti
- ethtool
- mostra e modifica le impostazioni delle interfacce di rete
- iperf3
- misura il throughput di rete
- nmap
- rilevamento della rete e scansione delle porte, con ncat e nping
- iproute2
- ip, ss e tc: indirizzi, percorsi e socket
- fping
- esegue il ping di molti host insieme
- arp-scan
- trova gli host della rete locale tramite ARP
- traceroute
- mostra i router verso un host
Hardware e chiamate di sistema
- sensors
- lm-sensors: temperature, velocità delle ventole e tensioni
- dmidecode
- le tabelle del firmware: scheda, BIOS, moduli di memoria
- lspci
- dispositivi PCI con i loro nomi
- lsusb
- bus e dispositivi USB con i loro nomi
- ipmitool
- comunica con il BMC di un server via rete
- strace
- le chiamate di sistema e i segnali di un programma
- tmux
- riquadri per la dashboard del progetto
Come si presenta
Schermate reali da un NAS QNAP con il pacchetto di App Center.
A chi serve
Il NAS sembra lento
btop e htop mostrano quale processo occupa il processore e la memoria. iotop mostra quale tiene impegnati i dischi.
Un volume si riempie
ncdu percorre una cartella e ne ordina il contenuto per dimensione, così vedi cosa ha occupato lo spazio.
Vuoi vedere il traffico
iftop, nload e NetHogs mostrano il traffico per connessione, per interfaccia e per processo. mtr segue un percorso salto per salto.
Installazione
- Aggiungi una volta il repository di questo sito ad App Center: i tre passaggi.
- Nell’elenco del repository trova (example) SysMon e premi Installa.
- Attiva SSH in Pannello di controllo › Servizi di rete e file › Telnet / SSH.
Avvio
SysMon non ha una finestra propria: lo usi da un terminale. Accedi via SSH come admin e chiama un programma con il suo nome.
ssh admin@192.0.2.10 # l’indirizzo del tuo NAS htop # processi btop # tutto in una sola schermata ncdu /share/Public # cosa riempie questa cartella
Da sapere
- In una shell in cui digiti, hdparm, iostat, lspci e free del pacchetto partono prima delle copie di QTS, che non fanno ciò per cui si usano:
hdparm -I,iostat -m, i nomi dei dispositivi inlspciefree -h. - iotop, iftop, nethogs, iptraf-ng, tcpdump, mtr e smartctl leggono ciò che può leggere solo root. Un accesso admin sul NAS può eseguirli.
- sensors elenca solo i chip esposti da un driver del kernel caricato, per esempio
coretempcon le temperature del processore dei modelli Intel. - vnStat registra il traffico solo mentre il suo demone è in esecuzione.
vnstatd -dlo avvia, e si ferma quando il NAS si riavvia. - Le colonne SWAPIN e IO% di iotop restano vuote finché non attivi il delay accounting del kernel:
echo 1 > /proc/sys/kernel/task_delayacct. Dura fino al riavvio del NAS. - Gli altri nomi che QTS possiede restano di QTS, per esempio top, ps, lsof, pv e ethtool. La copia del pacchetto parte con il percorso completo, per esempio
/usr/app/SysMon/bin/top. - Gli script, cron e un comando passato direttamente a ssh usano i comandi di QTS.
- Su un NAS QNAP
ncè lo strumento Notification Center di QNAP. Usancat. - ipmitool comunica con il BMC di un server via rete, e la maggior parte dei modelli NAS non ha un BMC proprio.
Modificalo e ricompilalo quando vuoi
SysMon è un esempio di Bucket & Code Server IDE, il nostro ambiente di sviluppo gratuito per QNAP. Compila ogni programma dai sorgenti sul tuo NAS e impacchetta il risultato come QPKG.
Dal pannello
- In Bucket & Code apri App, poi la scheda Esempi. Aggiungi Ubuntu 24.04 builder (full) se non hai ancora un ambiente Builder.
- Premi Usa questo esempio su SysMon (geek set 2). L’app compare con le sue ricette, e non è ancora compilato nulla.
- Premi Compila, poi Attiva. Esporta crea un QPKG una volta installata una toolchain QDK.
Da un terminale
Il progetto SysMon dell’Editor contiene lo stesso elenco in recipes.txt. Togli una riga o aggiungi una ricetta dalla libreria, poi esegui questo nel terminale dell’Editor:
make app # crea l’app da recipes.txt make build # la compila e segue il job make activate # /usr/app/SysMon ora punta alla build make qpkg # esporta un QPKG (serve una toolchain QDK)
Il progetto ha anche una dashboard: make dashboard mostra btop, iotop, iftop e nload in quattro riquadri tmux. Funziona dopo make activate.
Guarda come si fa in Bucket & Code
Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware)
8 min su YouTube

