SysMon
SysMon : voyez ce que fait votre QNAP
Processus, disques, réseau et capteurs dans un terminal.
SysMon ajoute les programmes qui montrent ce que fait le NAS en ce moment : htop, btop, atop, Glances, iotop, iftop, ncdu, mtr et d’autres, tous accessibles depuis une connexion SSH.
Chaque programme est compilé à partir des sources avec Bucket & Code Server IDE. Installez le paquet tel quel, ou modifiez sa liste de recettes et compilez le vôtre.
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
Ce qu’il contient
La liste de recettes nomme ces programmes, et la compilation ajoute les bibliothèques dont ils ont besoin.
Processus, processeur et mémoire
- htop
- la liste interactive des processus
- btop
- processeur, mémoire, disques, réseau et processus sur un seul écran
- atop
- les processus avec journalisation à long terme, et atopsar
- glances
- un moniteur système en 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
Disques et fichiers
- iotop
- utilisation des disques par processus et par thread
- ncdu
- ce qui remplit un dossier, trié par taille
- lsof
- les fichiers ouverts et les processus qui les détiennent
- progress
- où en sont cp, mv, dd et tar
- pv
- progression, débit et temps restant des données dans un tube
- smartmontools
- smartctl et smartd pour les données S.M.A.R.T.
- hdparm
- lit et règle les paramètres des disques ATA/SATA, mesure la vitesse de lecture
- sdparm
- lit et modifie les pages de mode des disques SCSI et SATA
- nvme
- nvme-cli : informations sur les disques NVMe, SMART et journaux d’erreurs
- ioping
- latence du disque requête par requête, comme ping
- fio
- testeur d’E/S flexible
- duf
- occupation des systèmes de fichiers montés sous forme de tableau
Réseau
- iftop
- bande passante par connexion
- nload
- trafic entrant et sortant sous forme de graphiques
- nethogs
- bande passante par processus
- bmon
- moniteur de bande passante
- vnstat
- un journal du trafic par interface, avec le démon vnstatd
- mtr
- traceroute et ping réunis, saut par saut
- iptraf-ng
- trafic IP et statistiques LAN dans une interface texte
- tcpdump
- capture et décode les paquets
- ethtool
- affiche et modifie les réglages des interfaces réseau
- iperf3
- mesure le débit du réseau
- nmap
- découverte du réseau et analyse de ports, avec ncat et nping
- iproute2
- ip, ss et tc : adresses, routes et sockets
- fping
- envoie un ping à plusieurs hôtes à la fois
- arp-scan
- trouve les hôtes du réseau local par ARP
- traceroute
- montre les routeurs sur le chemin d’un hôte
Matériel et appels système
- sensors
- lm-sensors : températures, vitesses des ventilateurs et tensions
- dmidecode
- les tables du micrologiciel : carte, BIOS, modules de mémoire
- lspci
- périphériques PCI avec leur nom
- lsusb
- bus et périphériques USB avec leur nom
- ipmitool
- dialogue avec le BMC d’un serveur par le réseau
- strace
- les appels système et les signaux d’un programme
- tmux
- des volets pour le tableau de bord du projet
À quoi ça ressemble
Captures réelles d’un NAS QNAP avec le paquet de l’App Center.
À qui ça sert
Le NAS semble lent
btop et htop montrent quel processus prend le processeur et la mémoire. iotop montre lequel occupe les disques.
Un volume se remplit
ncdu parcourt un dossier et trie son contenu par taille, pour que vous voyiez ce qui a pris la place.
Vous voulez voir le trafic
iftop, nload et NetHogs montrent le trafic par connexion, par interface et par processus. mtr suit une route saut par saut.
Installation
- Ajoutez une fois le dépôt de ce site à l’App Center : les trois étapes.
- Dans la liste du dépôt, trouvez (example) SysMon et appuyez sur Installer.
- Activez SSH dans Panneau de configuration › Réseau et Services de fichiers › Telnet / SSH.
Démarrage
SysMon n’a pas de fenêtre à lui : il s’utilise depuis un terminal. Connectez-vous en SSH en tant qu’admin et appelez un programme par son nom.
ssh admin@192.0.2.10 # l’adresse de votre NAS htop # processus btop # tout sur un seul écran ncdu /share/Public # ce qui remplit ce dossier
Bon à savoir
- Dans un shell où vous tapez vos commandes, hdparm, iostat, lspci et free du paquet passent avant les copies de QTS, qui ne font pas ce qu’on attend d’elles :
hdparm -I,iostat -m, les noms des périphériques danslspcietfree -h. - iotop, iftop, nethogs, iptraf-ng, tcpdump, mtr et smartctl lisent ce que seul root peut lire. Une connexion admin sur le NAS peut les lancer.
- sensors ne liste que les puces qu’expose un pilote du noyau chargé, par exemple
coretempavec les températures du processeur sur les modèles Intel. - vnStat ne journalise le trafic que lorsque son démon tourne.
vnstatd -dle démarre, et il s’arrête au redémarrage du NAS. - Les colonnes SWAPIN et IO% d’iotop restent vides tant que vous n’activez pas le delay accounting du noyau :
echo 1 > /proc/sys/kernel/task_delayacct. Cela dure jusqu’au redémarrage du NAS. - Les autres noms que QTS possède restent ceux de QTS, par exemple top, ps, lsof, pv et ethtool. La copie du paquet se lance avec son chemin complet, par exemple
/usr/app/SysMon/bin/top. - Les scripts, cron et une commande passée directement à ssh utilisent les commandes de QTS.
- Sur un NAS QNAP,
ncest l’outil Notification Center de QNAP. Utilisezncat. - ipmitool dialogue avec le BMC d’un serveur par le réseau, et la plupart des modèles de NAS n’ont pas de BMC.
Modifiez-le et recompilez-le quand vous voulez
SysMon est un exemple de Bucket & Code Server IDE, notre environnement de développement gratuit pour QNAP. Il compile chaque programme à partir des sources sur votre propre NAS et empaquette le résultat en QPKG.
Depuis le panneau
- Dans Bucket & Code, ouvrez Apps, puis l’onglet Exemples. Ajoutez Ubuntu 24.04 builder (full) si vous n’avez pas encore d’environnement Builder.
- Sur SysMon (geek set 2), appuyez sur Utiliser cet exemple. L’app apparaît avec ses recettes, et rien n’est encore compilé.
- Appuyez sur Compiler, puis sur Activer. Exporter crée un QPKG dès qu’une toolchain QDK est installée.
Depuis un terminal
Le projet SysMon de l’Éditeur contient la même liste dans recipes.txt. Retirez une ligne ou ajoutez une recette de la bibliothèque, puis lancez ceci dans le terminal de l’Éditeur :
make app # crée l’app à partir de recipes.txt make build # la compile et suit la tâche make activate # /usr/app/SysMon pointe maintenant vers le build make qpkg # exporte un QPKG (nécessite une toolchain QDK)
Le projet a aussi un tableau de bord : make dashboard affiche btop, iotop, iftop et nload dans quatre volets tmux. Il fonctionne après make activate.
Voir la procédure dans Bucket & Code
Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware)
8 min sur YouTube

