Unofficial

SysMon

SysMon: zobacz, co robi Twój QNAP

Procesy, dyski, sieć i czujniki w terminalu.

SysMon dodaje programy, które pokazują, co NAS robi w tej chwili: htop, btop, atop, Glances, iotop, iftop, ncdu, mtr i inne, wszystkie dostępne po zalogowaniu przez SSH.

Każdy program jest skompilowany ze źródeł w Bucket & Code Server IDE. Zainstaluj gotowy pakiet albo zmień listę receptur i zbuduj własny.

W App Center: (example) SysMon · Intel i AMD (x86_64) · QTS 6.0 lub QuTS hero 6.0 albo nowszy · freeware

Logowanie SSH na NAS-ie

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

Co jest w środku

Te programy wymienia lista receptur, a kompilacja dokłada potrzebne im biblioteki.

Procesy, procesor i pamięć

htop
interaktywna lista procesów
btop
procesor, pamięć, dyski, sieć i procesy na jednym ekranie
atop
procesy z zapisem długoterminowym oraz atopsar
glances
monitor systemu w Pythonie
procps
ps, top, free, vmstat, watch, pgrep, pkill, pmap, slabtop
sysstat
iostat, mpstat, pidstat, sar
psmisc
pstree, fuser, killall, prtstat
nmon
monitor wydajności Nigela

Dyski i pliki

iotop
użycie dysku przez procesy i wątki
ncdu
co zajmuje folder, posortowane według rozmiaru
lsof
otwarte pliki i procesy, które je trzymają
progress
jak daleko doszły cp, mv, dd i tar
pv
postęp, tempo i pozostały czas danych w potoku
smartmontools
smartctl i smartd do danych S.M.A.R.T.
hdparm
czyta i ustawia parametry dysków ATA/SATA, mierzy szybkość odczytu
sdparm
czyta i zmienia strony trybu dysków SCSI i SATA
nvme
nvme-cli: informacje o dyskach NVMe, SMART i dzienniki błędów
ioping
opóźnienie dysku żądanie po żądaniu, jak ping
fio
elastyczny tester wejścia/wyjścia
duf
zajęcie miejsca w zamontowanych systemach plików jako tabela

Sieć

iftop
przepustowość na połączenie
nload
ruch przychodzący i wychodzący na wykresach
nethogs
przepustowość na proces
bmon
monitor przepustowości
vnstat
dziennik ruchu na interfejs, z demonem vnstatd
mtr
traceroute i ping w jednym, skok po skoku
iptraf-ng
ruch IP i statystyki LAN w interfejsie tekstowym
tcpdump
przechwytuje i dekoduje pakiety
ethtool
pokazuje i zmienia ustawienia interfejsów sieciowych
iperf3
mierzy przepustowość sieci
nmap
odkrywanie sieci i skanowanie portów, z ncat i nping
iproute2
ip, ss i tc: adresy, trasy i gniazda
fping
pinguje wiele hostów naraz
arp-scan
znajduje hosty sieci lokalnej przez ARP
traceroute
pokazuje routery na drodze do hosta

Sprzęt i wywołania systemowe

sensors
lm-sensors: temperatury, obroty wentylatorów i napięcia
dmidecode
tabele oprogramowania układowego: płyta, BIOS, moduły pamięci
lspci
urządzenia PCI z nazwami
lsusb
magistrale i urządzenia USB z nazwami
ipmitool
rozmawia z BMC serwera przez sieć
strace
wywołania systemowe i sygnały programu
tmux
panele dla pulpitu z projektu

Jak to wygląda

Prawdziwe ekrany z NAS-a QNAP z pakietem z App Center.

btop w terminalu z panelami procesora, pamięci, dysków, sieci i procesów
btop na NAS-ie: procesor, pamięć, dyski, sieć i lista procesów naraz.
htop: paski procesora i pamięci nad listą procesów
htop z paskiem dla każdego rdzenia procesora nad listą procesów.

Komu to pomaga

NAS działa wolno

btop i htop pokazują, który proces zabiera procesor i pamięć. iotop pokazuje, który zajmuje dyski.

Wolumin się zapełnia

ncdu przechodzi przez folder i sortuje zawartość według rozmiaru, więc widzisz, co zajęło miejsce.

Chcesz zobaczyć ruch w sieci

iftop, nload i NetHogs pokazują ruch według połączeń, interfejsów i procesów. mtr śledzi trasę skok po skoku.

Instalacja

  1. Raz dodaj repozytorium tej strony do App Center: trzy kroki.
  2. Na liście repozytorium znajdź (example) SysMon i naciśnij Instaluj.
  3. Włącz SSH w Panel sterowania › Usługi sieci i plików › Telnet / SSH.

Pierwsze uruchomienie

SysMon nie ma własnego okna: uruchamiasz go z terminala. Zaloguj się przez SSH jako admin i wpisz nazwę programu.

ssh admin@192.0.2.10     # adres Twojego NAS-a
htop                     # procesy
btop                     # wszystko na jednym ekranie
ncdu /share/Public       # co zajmuje ten folder

Warto wiedzieć

  • W powłoce, w której piszesz, hdparm, iostat, lspci i free z pakietu uruchamiają się przed kopiami QTS, bo tamte nie robią tego, do czego się ich używa: hdparm -I, iostat -m, nazwy urządzeń w lspci i free -h.
  • iotop, iftop, nethogs, iptraf-ng, tcpdump, mtr i smartctl czytają to, co wolno czytać tylko rootowi. Logowanie jako admin na NAS-ie je uruchomi.
  • sensors pokazuje tylko układy, które udostępnia załadowany sterownik jądra, na przykład coretemp z temperaturami procesora w modelach Intela.
  • vnStat zapisuje ruch tylko wtedy, gdy działa jego demon. vnstatd -d go uruchamia, a po restarcie NAS-a demon już nie działa.
  • Kolumny SWAPIN i IO% w iotop pozostają puste, dopóki nie włączysz w jądrze rozliczania opóźnień: echo 1 > /proc/sys/kernel/task_delayacct. Ustawienie działa do restartu NAS-a.
  • Inne nazwy, które ma QTS, zostają przy QTS, na przykład top, ps, lsof, pv i ethtool. Kopię z pakietu uruchomisz pełną ścieżką, na przykład /usr/app/SysMon/bin/top.
  • Skrypty, cron i polecenie podane wprost do ssh używają poleceń QTS.
  • Na NAS-ie QNAP nc to narzędzie Notification Center firmy QNAP. Użyj ncat.
  • ipmitool rozmawia z BMC serwera przez sieć, a większość modeli NAS nie ma własnego BMC.

Zmień i zbuduj na nowo, kiedy chcesz

SysMon to przykład z Bucket & Code Server IDE, naszego darmowego środowiska programistycznego dla QNAP. Kompiluje każdy program ze źródeł na Twoim NAS-ie i pakuje wynik jako QPKG.

W panelu

  1. W Bucket & Code otwórz Aplikacje, potem kartę Przykłady. Dodaj Ubuntu 24.04 builder (full), jeśli nie masz jeszcze środowiska do budowania.
  2. Naciśnij Użyj tego przykładu przy SysMon (geek set 2). Aplikacja pojawi się z recepturami, ale jeszcze nic się nie buduje.
  3. Naciśnij Zbuduj, potem Aktywuj. Eksportuj tworzy QPKG, gdy masz zainstalowany toolchain QDK.

W terminalu

Projekt SysMon w Edytorze trzyma tę samą listę w pliku recipes.txt. Usuń wiersz albo dodaj recepturę z biblioteki, a potem uruchom w terminalu Edytora:

make app        # tworzy aplikację z recipes.txt
make build      # buduje ją i śledzi zadanie
make activate   # /usr/app/SysMon wskazuje teraz na tę kompilację
make qpkg       # eksportuje QPKG (wymaga toolchaina QDK)

Projekt ma też pulpit: make dashboard pokazuje btop, iotop, iftop i nload w czterech panelach tmux. Działa po make activate.

Strona nowej aplikacji w App Builderze Bucket & Code Zobacz to w Bucket & Code Compile Any App You Need Without Linux Skills: Build QPKG & Deploy Easily (Freeware) 8 min na YouTube

Powiązane strony