Skip to content

The machine — Dell OptiPlex 7050, hostname Plex, 192.168.5.15

A desktop pressed into service as a NAS: one chassis fan, four 3.5″ drives on an add-in SATA card, 15.8 GB RAM, a 512 GB NVMe root, no UPS. Ubuntu 24.04 with a GNOME desktop session still running (user services live under it).

Shape

  • OS: Ubuntu 24.04 LTS, kernel 7.0.0-31-generic (09-08). Boots: 09-01 19:53 → 09-05 15:55 (power cycle) → 09-08 06:35 (reboot).
  • Network: enp0s31f6 192.168.5.15/22. LAN names *.lan via Pi-hole DNS → NPM reverse proxy. SSH ssh://angel@192.168.5.15 (password auth off via sf / 99-hardening.conf; keys only). WireGuard via wg-easy. cockpit.lan:9090 is linked from homer; not verified here.
  • Memory: ~1.6 GB real use by containers; free shows ~300 MB because qbittorrent + page cache hold ~11 GB reclaimable. Swap 4 GB /swap.img; swappiness fixed by mf. Claude Code's background-Bash memory supervisor kills long jobs on this box because it reads free — run long things in the foreground or via cron.
  • Root disk: 468 GB, 196 GB used (containers' configs, precious/ 92 GB, ~/.claude, snaps). NVMe: 5 % used, 0 media errors, 54 of 73 power cycles unsafe → item 20.
  • Thermals: ambient ~32 °C at the board; parity rested 31–34 °C, data disks 38–42 °C, since item 10.
  • System services that matter: docker, cron, ssh, hd-idle, smartmontools, pmlogger/sysstat (metrics), wg-docker-watchdog.timer, rescue-watchdog.timer, snapraid-*.timer. User services (angel, lingering): claude-hub, claude-remote, codex-builder-tunnel, garmin-tunnel.
  • Snap: firefox, vlc, firmware-updater, gnome runtimes — desktop leftovers, not load-bearing.

Why this shape

It was the computer that was there. Every hardware item in the plan (14 fan, 19 second parity, 20 UPS) is a consequence of that.

Connected to

If you change this

  • Power off / reboot: write a ~/disk-map-<date>.txt first (pattern in the 09-08 one); confirm no sync/rescue/precious job is running; after boot findmnt all five mounts, lsblk -dn -o NAME,SIZE,SERIAL, snapraid status before any sync; expect one rescue-watchdog alert.
  • Hits on a reboot: device letters (smartd.conf uses them) · Persistent=true timers fire missed runs at boot (sync, scrub, watchdog).
  • Does not hit: UUID mounts, by-id hd-idle, container configs.

Surfaces

Surface Role
homer (http://<box>/ via NPM) link dashboard incl. Glances, Cockpit, Portainer
Claude Code from /home/angel this map

See

  • Source: ~/disk-map-20260908.txt (the pre-shutdown state note) · last -x reboot · ~/.local/bin/mf (memory explanation)