dsmview/README.md

80 lines
2.1 KiB
Markdown

# dsmview
TUI SSH monitor for Synology DSM 7.x — read-only dashboard inspired by `btop`.
## Installation
### macOS (Homebrew)
```bash
brew tap janvete/tools https://git.janvete.com/seth/homebrew-tools.git
brew install dsmview
```
### Debian / Ubuntu (APT)
```bash
echo "deb [trusted=yes] https://git.janvete.com/seth/apt/raw/branch/main ./" | sudo tee /etc/apt/sources.list.d/janvete.list
sudo apt update
sudo apt install dsmview
```
### From source
```bash
git clone ssh://git@git-ssh.janvete.com:554/seth/dsmview.git
cd dsmview
pip install .
```
## 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, services summary and disk health.
- **F2 Logs** — live tail of system, auth and package logs (including
Active Backup) with severity filters and text search.
- **F3 Services** — `systemctl` service list with up/down status and
start/stop/restart actions.
## Keys
```
F1..F3 switch tab
r refresh now
q quit
/ focus log search
ESC clear log search
Logs tab:
a / 1-4 severity filter (All / Error / Warn / Security / Info)
Services tab:
↑/↓ select service
s start
S stop
R restart
(or use the Start / Stop / Restart buttons)
```
## Requirements
- Python 3.12+
- Synology DSM 7.x with SSH enabled and a user that can run system commands
(typically `root` or a user in `administrators`).