Unofficial

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.

In App Center: (example) SysMon · Intel en AMD (x86_64) · QTS 6.0 of QuTS hero 6.0 of nieuwer · freeware

SSH-login op de 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

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.

btop in een terminal met panelen voor CPU, geheugen, schijven, netwerk en processen
btop op een NAS: processor, geheugen, schijven, netwerk en de proceslijst tegelijk.
htop: processor- en geheugenbalken boven een lijst met processen
htop met één balk per processorkern boven de proceslijst.

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

  1. Voeg de repository van deze site één keer toe aan App Center: de drie stappen.
  2. Zoek in de lijst van de repository (example) SysMon en druk op Installeren.
  3. 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 in lspci en free -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 coretemp met de processortemperaturen van Intel-modellen.
  • vnStat logt verkeer alleen zolang de daemon draait. vnstatd -d start 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 nc het Notification Center-hulpmiddel van QNAP. Gebruik ncat.
  • 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

  1. Open in Bucket & Code Apps en daarna het tabblad Voorbeelden. Voeg Ubuntu 24.04 builder (full) toe als je nog geen Builder-omgeving hebt.
  2. Druk bij SysMon (geek set 2) op Dit voorbeeld gebruiken. De app verschijnt met zijn recepten, en er is nog niets gebouwd.
  3. 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.

De pagina Nieuwe app van de App Builder in Bucket & Code Bekijk hoe het gaat in Bucket & Code Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware) 8 min op YouTube

Gerelateerde pagina’s