Unofficial

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.

Dans l’App Center : (example) SysMon · Intel et AMD (x86_64) · QTS 6.0 ou QuTS hero 6.0 ou ultérieur · freeware

Connexion SSH sur le NAS

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.

btop dans un terminal, avec des panneaux pour le CPU, la mémoire, les disques, le réseau et les processus
btop sur un NAS : processeur, mémoire, disques, réseau et liste des processus en même temps.
htop : barres de processeur et de mémoire au-dessus d’une liste de processus
htop avec une barre par cœur de processeur au-dessus de la liste des processus.

À 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

  1. Ajoutez une fois le dépôt de ce site à l’App Center : les trois étapes.
  2. Dans la liste du dépôt, trouvez (example) SysMon et appuyez sur Installer.
  3. 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 dans lspci et free -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 coretemp avec les températures du processeur sur les modèles Intel.
  • vnStat ne journalise le trafic que lorsque son démon tourne. vnstatd -d le 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, nc est l’outil Notification Center de QNAP. Utilisez ncat.
  • 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

  1. Dans Bucket & Code, ouvrez Apps, puis l’onglet Exemples. Ajoutez Ubuntu 24.04 builder (full) si vous n’avez pas encore d’environnement Builder.
  2. Sur SysMon (geek set 2), appuyez sur Utiliser cet exemple. L’app apparaît avec ses recettes, et rien n’est encore compilé.
  3. 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.

La page Nouvelle app de l’App Builder de Bucket & Code Voir la procédure dans Bucket & Code Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware) 8 min sur YouTube

Pages associées