TUI SSH monitor for Synology DSM 7.x
Network - NetworkCollector now also runs `ip -o -4 addr show` and merges the IPv4 address into each NetSample. Dashboard shows one line per interface (iface + IP + rx + tx); the active one is marked with `●` and is what the rx/tx braille graphs track. - Hides loopback, docker*, veth*, br-*, virbr*, tap*, tun*, ovs-system, dummy*, wg*. Folds the raw `ethN` away when an `ovs_ethN` exists for the same NIC (Open vSwitch on Synology exposes both, only the ovs_ one carries the IP). Storage - Only `/volumeN` (digits) is shown. Previously bind-mounts created by Container Manager under `/volume1/@appdata/.../all_shares/*` and other subpath mounts were listed too, each repeating the pool's usage — visually noisy and meaningless. Verified against DS720+ (DSM 7.3.2) and a multi-NIC NAS running OvS + Tailscale + Docker. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .github/workflows | ||
| dsmview | ||
| Formula | ||
| .gitignore | ||
| LICENSE | ||
| pyproject.toml | ||
| README.md | ||
dsmview
TUI SSH monitor for Synology DSM 7.x — read-only dashboard inspired by btop.
brew tap janvete/tools
brew install dsmview
Usage
dsmview ssh -p334 root@192.168.1.100
dsmview ssh root@192.168.1.100 # default port 22
dsmview ssh nas-home # alias from ~/.ssh/config
dsmview ssh -i ~/.ssh/id_nas root@IP
Reads ~/.ssh/config (HostName, Port, IdentityFile, ProxyJump). Tries
id_ed25519, id_ecdsa, id_rsa, then the SSH agent. Falls back to a
password prompt only when no key works.
Read-only philosophy
The application only reads data from the NAS. No agent is installed, no configuration is touched. The single exception is start/stop/restart of a service — and that requires explicit confirmation in the UI.
Tabs
- F1 Dashboard — CPU history graph, memory, storage pools, network throughput, load average, temperatures.
- F2 Logs — live tail of
/var/log/messagesand/var/log/auth.logwith severity filters (ALL / ERROR / WARN / SECURITY / INFO). - F3 Services —
synoservicectl --listtable with up/down status and restart/stop/start actions. - F4 Disks — per-disk model/size/temp/health from
smartctlplus RAID status from/proc/mdstat.
Keys
F1..F4 switch tab
r refresh now
q quit
Requirements
- Python 3.12+
- Synology DSM 7.x with SSH enabled and a user that can run system commands
(typically
rootor a user inadministrators).