SysMon
SysMon: zie wat je QNAP doet
Processen, schijven, netwerk en sensoren in een terminal.
SysMon voegt de programma’s toe die laten zien wat de NAS op dit moment doet: htop, btop, atop, Glances, iotop, iftop, ncdu, mtr en meer, allemaal bereikbaar vanuit een SSH-login.
Elk programma is met Bucket & Code Server IDE uit broncode gecompileerd. Installeer het pakket zoals het is, of wijzig de receptenlijst en bouw je eigen versie.
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
Wat erin zit
De receptenlijst noemt deze programma’s, en de build voegt de bibliotheken toe die ze nodig hebben.
Processen, processor en geheugen
- htop
- de interactieve proceslijst
- btop
- processor, geheugen, schijven, netwerk en processen op één scherm
- atop
- processen met langetermijnlogging, en atopsar
- glances
- een systeemmonitor 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
Schijven en bestanden
- iotop
- schijfgebruik per proces en thread
- ncdu
- wat een map vult, gesorteerd op grootte
- lsof
- open bestanden en de processen die ze vasthouden
- progress
- hoe ver cp, mv, dd en tar zijn gekomen
- pv
- voortgang, snelheid en resterende tijd van data door een pipe
- smartmontools
- smartctl en smartd voor S.M.A.R.T.-gegevens
- hdparm
- leest en wijzigt ATA/SATA-schijfparameters, meet de leessnelheid
- sdparm
- leest en wijzigt de modepagina's van SCSI- en SATA-schijven
- nvme
- nvme-cli: informatie over NVMe-schijven, SMART en foutlogboeken
- ioping
- schijflatentie per verzoek, zoals ping
- fio
- flexibele I/O-tester
- duf
- schijfgebruik van aangekoppelde bestandssystemen als tabel
Netwerk
- iftop
- bandbreedte per verbinding
- nload
- inkomend en uitgaand verkeer als grafieken
- nethogs
- bandbreedte per proces
- bmon
- bandbreedtemonitor
- vnstat
- een verkeerslog per interface, met de daemon vnstatd
- mtr
- traceroute en ping in één, hop voor hop
- iptraf-ng
- IP-verkeer en LAN-statistieken in een tekstinterface
- tcpdump
- vangt pakketten op en decodeert ze
- ethtool
- toont en wijzigt instellingen van netwerkinterfaces
- iperf3
- meet de netwerkdoorvoer
- nmap
- netwerkdetectie en poortscans, met ncat en nping
- iproute2
- ip, ss en tc: adressen, routes en sockets
- fping
- pingt veel hosts tegelijk
- arp-scan
- vindt de hosts van het lokale netwerk via ARP
- traceroute
- toont de routers op weg naar een host
Hardware en systeemaanroepen
- sensors
- lm-sensors: temperaturen, ventilatorsnelheden en spanningen
- dmidecode
- de firmwaretabellen: moederbord, BIOS, geheugenmodules
- lspci
- PCI-apparaten met hun namen
- lsusb
- USB-bussen en -apparaten met hun namen
- ipmitool
- praat via het netwerk met de BMC van een server
- strace
- de systeemaanroepen en signalen van een programma
- tmux
- deelvensters voor het dashboard van het project
Hoe het eruitziet
Echte schermen van een QNAP NAS met het pakket uit App Center.
Voor wie het handig is
De NAS voelt traag aan
btop en htop laten zien welk proces de processor en het geheugen gebruikt. iotop laat zien welk proces de schijven bezighoudt.
Een volume raakt vol
ncdu loopt een map door en sorteert de inhoud op grootte, zodat je ziet wat de ruimte heeft ingenomen.
Je wilt het verkeer zien
iftop, nload en NetHogs tonen verkeer per verbinding, per interface en per proces. mtr volgt een route hop voor hop.
Installeren
- Voeg de repository van deze site één keer toe aan App Center: de drie stappen.
- Zoek in de lijst van de repository (example) SysMon en druk op Installeren.
- Zet SSH aan in Configuratiescherm › Netwerk en Bestandsservices › Telnet / SSH.
Starten
SysMon heeft geen eigen venster: je gebruikt het vanuit een terminal. Meld je via SSH aan als admin en roep een programma aan met zijn naam.
ssh admin@192.0.2.10 # het adres van je NAS htop # processen btop # alles op één scherm ncdu /share/Public # wat deze map vult
Goed om te weten
- In een shell waarin je typt, starten hdparm, iostat, lspci en free uit het pakket vóór de kopieën van QTS, die niet doen waarvoor je ze gebruikt:
hdparm -I,iostat -m, apparaatnamen inlspcienfree -h. - iotop, iftop, nethogs, iptraf-ng, tcpdump, mtr en smartctl lezen wat alleen root mag lezen. Een admin-login op de NAS kan ze uitvoeren.
- sensors toont alleen de chips die een geladen kernelstuurprogramma beschikbaar stelt, bijvoorbeeld
coretempmet de processortemperaturen van Intel-modellen. - vnStat logt verkeer alleen zolang de daemon draait.
vnstatd -dstart die, en hij stopt als de NAS opnieuw opstart. - De kolommen SWAPIN en IO% van iotop blijven leeg tot je delay accounting van de kernel aanzet:
echo 1 > /proc/sys/kernel/task_delayacct. Dat blijft gelden tot de NAS opnieuw opstart. - Andere namen die QTS heeft, blijven van QTS, zoals top, ps, lsof, pv en ethtool. De kopie uit het pakket start je met het volledige pad, zoals
/usr/app/SysMon/bin/top. - Scripts, cron en een opdracht die je rechtstreeks aan ssh geeft, gebruiken de opdrachten van QTS.
- Op een QNAP NAS is
nchet Notification Center-hulpmiddel van QNAP. Gebruikncat. - ipmitool praat via het netwerk met de BMC van een server, en de meeste NAS-modellen hebben geen eigen BMC.
Wijzig het en bouw het opnieuw, wanneer je maar wilt
SysMon is een voorbeeld uit Bucket & Code Server IDE, onze gratis ontwikkelomgeving voor QNAP. Deze compileert elk programma uit broncode op je eigen NAS en verpakt het resultaat als QPKG.
Vanuit het paneel
- Open in Bucket & Code Apps en daarna het tabblad Voorbeelden. Voeg Ubuntu 24.04 builder (full) toe als je nog geen Builder-omgeving hebt.
- Druk bij SysMon (geek set 2) op Dit voorbeeld gebruiken. De app verschijnt met zijn recepten, en er is nog niets gebouwd.
- Druk op Bouwen en daarna op Activeren. Exporteren maakt een QPKG zodra er een QDK-toolchain is geïnstalleerd.
Vanuit een terminal
Het Editor-project SysMon bevat dezelfde lijst in recipes.txt. Haal een regel weg of voeg een recept uit de bibliotheek toe, en voer dan dit uit in de terminal van de Editor:
make app # maakt de app uit recipes.txt make build # bouwt hem en volgt de taak make activate # /usr/app/SysMon wijst nu naar de build make qpkg # exporteert een QPKG (vereist een QDK-toolchain)
Het project heeft ook een dashboard: make dashboard toont btop, iotop, iftop en nload in vier tmux-deelvensters. Het draait na make activate.
Bekijk hoe het gaat in Bucket & Code
Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware)
8 min op YouTube

