From 4ce351ab7be39099d317a9ae56514465b75d95f3 Mon Sep 17 00:00:00 2001 From: kisfenyo Date: Wed, 14 Oct 2026 20:49:49 +0200 Subject: [PATCH] =?UTF-8?q?Media=20all=20drives,=20S5/S6=20on=20Tester=201?= =?UTF-8?q?:=20a=20pulled=20drive=20stops=20nothing,=20the=20guest=20keeps?= =?UTF-8?q?=20a=20dead=20mount;=20on=20return=20nothing=20sees=20it=20unti?= =?UTF-8?q?l=20stop+start,=20FileBrowser=20cannot=20be=20restarted=20(R-10?= =?UTF-8?q?38);=2015=20=C2=A75=20written;=20final=20report?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- REPORT-media-all-drives-2026-10-14.md | 45 +++-- STATUS.md | 4 +- .../architecture/15-media-library.md | 35 +++- .../media-all-drives-2026-10-14/E3-who.txt | 12 ++ .../media-all-drives-2026-10-14/README.md | 3 + .../S5-S6/PREDICTIONS.md | 4 + .../S5-S6/S5-dashboard.txt | 61 ++++++ .../S5-S6/S5-hub-log.txt | 2 + .../S5-S6/S5-pull.txt | 28 +++ .../S5-S6/S5-qbittorrent-states.txt | 1 + .../S5-S6/S6-reattach.txt | 24 +++ .../S5-S6/S6-restart.txt | 29 +++ .../S5-S6/S6-where-after.txt | 101 ++++++++++ .../S5-S6/snapshots.txt | 178 ++++++++++++++++++ .../media-all-drives-2026-10-14/tools/snap.py | 72 +++++++ .../tools/snaprun.sh | 15 ++ documentation/backlog/OPEN-ITEMS.md | 5 +- 17 files changed, 598 insertions(+), 21 deletions(-) create mode 100644 documentation/audits/media-all-drives-2026-10-14/E3-who.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-dashboard.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-hub-log.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-pull.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-qbittorrent-states.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-reattach.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-restart.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-where-after.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/S5-S6/snapshots.txt create mode 100644 documentation/audits/media-all-drives-2026-10-14/tools/snap.py create mode 100755 documentation/audits/media-all-drives-2026-10-14/tools/snaprun.sh diff --git a/REPORT-media-all-drives-2026-10-14.md b/REPORT-media-all-drives-2026-10-14.md index bfdd33b6..fe3811fa 100644 --- a/REPORT-media-all-drives-2026-10-14.md +++ b/REPORT-media-all-drives-2026-10-14.md @@ -1,16 +1,5 @@ -**S1–S3 pushed; the live-fix task may start.** - -> This report is `REPORT-media-all-drives-2026-10-14.md`, not the root `REPORT.md`: the repo rule (`CLAUDE.md`, „two -> sessions in this repo clobber each other") sends a parallel session to a topic file. The task asked for the line at -> the top of `REPORT.md`; it is here instead. - -**Resume point (STOP, Part D):** A–D done and pushed; the test sheet went to the operator. Waiting for „done". Then: -Part E (`tools/where.py`, then S5 pull drive B = `qm set 341 --delete scsi3` on demo-hp, S6 re-attach), then finish -`architecture/15-media-library.md` §5 and this report. Tester 1 follows the drill mirror (drill `3297003`). - -**Read this before the live fix:** `media/` also holds `photos`, `books`, `music` — binding it whole gives the download -apps write access to them (`15` §2, operator decision D9). And removal with „delete data" deletes literal binds under -`HDD_PATH` (R-1027) — the live fix must not use plain host paths. +**Parts A–E done. Waiting on the operator: the layout decision (STATUS D9) and the teardown word (R-1022).** +Read before the live fix: `media/` also holds photos (`15` §2); removal deletes literal binds (R-1027, R-1032). # Media apps on every drive — Tester 1 rig (2026-10-14) @@ -72,3 +61,33 @@ Rows before 133 → after 146 (another session added R-1020, R-1021 and closed R - Prowlarr download clients: not added. They serve only searches started inside Prowlarr (its own page says so); Sonarr and Radarr use their own entries. - Register: 151 → 152 (opened 1). + +## Final report — plain words + +1. **Does the chain work?** Yes. A download reaches the library as one file with two names, no extra copy — through + qBittorrent and Transmission, on both drives (S1, S2, and the operator's 13 imports). Today's live layout cannot work: + the folders do not meet, and two separate mounts force a full copy (S1). +2. **Can each show go to its own drive?** Yes, by the tag. A wrong tag still works, but makes a full copy on the other + drive while the first copy seeds (S3; the operator's Slow Horses and „Who"). A show with no tag does not download. +3. **The operator's test, per show:** Avatar → A, hardlinks. American Horror Story → B, hardlinks. Hope → A, + hardlink. Matchbox → B, hardlink. Slow Horses (root B, tag A) → downloaded on A, copied to B. Who (root B, tag A) → + downloaded on A by Transmission, copied to B. +4. **A disk pulled / back:** the box marks it, mails the hub in 24 s, and stops nothing; the apps see a dead disk, do not + crash, and Plex/Jellyfin remove nothing in 30 min. When it comes back, NOTHING sees it until each app is stopped and + started — the dashboard's restart does nothing, and FileBrowser cannot be restarted at all. **So yes: „restart" must + also cover „a drive came back".** +5. **Backups:** proven before the first download that no test media can reach any backup tier (three proofs, A6). +6. **What the build must do (from `15`):** bind each drive's library at the same path for the media apps, without a + drive question; keep the download apps away from photos (decision D9); tell the household after a drive is added, + removed or comes back, and restart for real (stop+start, FileBrowser included); set the tag from the drive choice and + wire Prowlarr/Sonarr/Radarr/the download apps by script; never let a removal delete the shared library. +7. **Claims in the brief that were wrong:** „`media/` keeps photos out" (photos live in `media/`); „cache removal still + needed" (R-615 closed; a changed URL re-clones); „`/media/shows` in Sonarr and Jellyfin" (Plex too); „anything writes + onto the guest rootfs" when a disk is pulled (no — the guest keeps a dead mount instead, which is its own fault). +8. **Waiting on the operator:** decision D9 (layout); the teardown word (R-1022, six steps). Register 133 → 156 over + the session; this session opened 20 rows (R-1014..R-1019, R-1022..R-1033, R-1037, R-1038), closed 0; + other sessions added and closed rows in between. + +Teardown so far: nothing torn down — the rig stays until the operator's word (ruling (e)). Machine: Tester 1 carries +two test drives, six media apps + Prowlarr, the drill mirror. Host: demo-hp carries VM 341's `scsi2`/`scsi3`. Hub: no +change (read only). diff --git a/STATUS.md b/STATUS.md index ffce33ef..7f1e6f82 100644 --- a/STATUS.md +++ b/STATUS.md @@ -23,7 +23,7 @@ ## What we work on - The power-cut findings still open (R-1004, R-1005, R-1010, R-1012, R-1013). -- Media apps on every drive (R-1023): the layout is proven on Tester 1 — a download reaches the library as one file, no copy. The live templates get fixed next (R-1014). +- Media apps on every drive (R-1023): proven on Tester 1 with your test — one file per download, no copy; a pulled drive needs a real restart when it comes back (R-1038). ## Waiting on you — decide @@ -42,7 +42,7 @@ ## Waiting on you — do - **Clear demo-hp's own floor** (hub → Demo HP → floor: empty → Save floor). It still reads 0.311.0. If not: the next global raise passes demo-hp by. - **Leftovers moved out of the shared checkout** to `/mnt/5_hdd/felhom.eu/leftovers/2026-10-14/` (nothing deleted): the Facebook `first-post/` folder is not in git — keep, commit or delete it. The rest is already in git. If not: it just stays there. -- **The media test on Tester 1** (about one hour): `documentation/audits/media-all-drives-2026-10-14/TEST-SHEET.md`, then write „done". Then the teardown word when you want (R-1022). +- **The media test on Tester 1 is finished** — results in `REPORT-media-all-drives-2026-10-14.md`. Say „tear it down" when you want Tester 1 back to normal (R-1022). - **Ask Google to index the new page:** Search Console → URL-ellenőrzés → `https://felhom.eu/sajat-felho-tarhely` → „Indexelés kérése". If not: the page may sit unseen, and the 11 November / 9 December checks (R-1035) read zero for a reason that is not the page. - **N100 BIOS:** read „After Power Loss" (the HP's „Previous State" made it start after 8 of 8 cuts). **HP BIOS:** „Bypass F1 Prompt on Configuration Changes" → Enable. - **Pull the failed disk** Z6A07P2G (R-934; the twin Z6A070XZ is `/mnt/3_hdd`). If not: its alarms return on 11 November. diff --git a/documentation/architecture/15-media-library.md b/documentation/architecture/15-media-library.md index 24b905e4..6bf72717 100644 --- a/documentation/architecture/15-media-library.md +++ b/documentation/architecture/15-media-library.md @@ -5,7 +5,7 @@ > learn. **No document covered this before 2026-10-14** — itself a finding: the four templates were written one by one > and never tested together (R-1014). Rulings: `09` §3 decisions 237–241. Measured on Tester 1: > `audits/media-all-drives-2026-10-14/`. Marks as in `01`: **[DESIGN]** a decision or proposal; **[FACT]** read in a -> named file or measured. **Status: DRAFT** — §5 waits on S5/S6 (after the operator's test). +> named file or measured. **Status: DRAFT** — measured end to end on Tester 1; the operator's layout decision (§2, STATUS D9) is open. ## 1. The problem @@ -79,10 +79,37 @@ decisions 238–239 needs a real restart (`up -d --force-recreate` once the per- that came back. Each drive card carries „apps restarted since this drive was added: yes/no" with the button (decision 239). -## 5. A drive is pulled / comes back — PENDING (S5/S6, after the operator's test) +## 5. A drive is pulled / comes back [FACT, measured on Tester 1 2026-10-14, `audits/media-all-drives-2026-10-14/S5-S6/`] -Predictions written: a pulled drive B stops nothing (no media app has `HDD_PATH` on B); the apps keep a dead view of B; -Plex/Jellyfin may mark items unavailable; on return, running containers do not see B until recreated. +**S5 — Media B's disk detached at 20:10:23 while six media apps ran** (Sonarr, Radarr, qBittorrent, Transmission, +Plex, Jellyfin; all with `HDD_PATH` on Media A): + +- **The host** saw the disk go in 2 s and unmounted its own mount, but the **guest kept a dead ext4 mount** of + `/mnt/felhom-drives/media_b`: `mountpoint` = yes, every read = Input/output error (not an empty folder — so nothing can + be written onto the guest's own disk there, which the brief feared). +- **The controller** marked the drive disconnected at 20:10:47, **stopped 0 apps** (none keys on Media B), pushed + `storage_disconnected` (error); the hub got it the same second and mailed the operator; `health_degraded` followed at + 20:13. It also tried to rebuild the skeleton ON the dead mount („chmod … input/output error") — the gate asks „is it a + mountpoint?", and a dead mount says yes (R-1038). +- **The dashboard**: the card reads „Media B — Leválasztva 2026. 10. 14. 20:10" with „Csatlakoztatás"; it does not say + that six apps use the drive. No banner on the start page. +- **The apps** did not crash; all read I/O errors on B. Sonarr/Radarr mark root folder B `accessible=false` but their + own health page stays EMPTY. qBittorrent's B torrents sat queued and did not notice. +- **Plex and Jellyfin removed nothing in 30 minutes.** Plex scans only when asked (R-1037); Jellyfin's real-time monitor + got errors, not deletions. A scan during an outage is the risk; with Plex's „empty trash after every scan" on by default + such a scan would drop B's items — not measured, deliberately. + +**S6 — the same volume re-attached to the same slot at 20:41:00:** the agent re-mounted it (`sde`) and bound it under +the parent within 24 s, ON TOP of the dead mount (two stacked mounts); the controller logged „drive RETURNED … +restarted gate-stopped apps" (there were none) and `storage_reconnected`. **Every running container still saw the dead +mount**, FileBrowser included („ensured running without recreate"). The dashboard's app „restart" changed nothing +(same start time, still I/O error — R-1026). **Stop + start fixed all six apps at once**; files and all 13 hardlink pairs +intact. FileBrowser is protected — the household cannot stop or start it (403), so it stays broken (R-1038). + +**What the restart notice (decisions 238–239) must therefore cover [DESIGN]:** a drive added, a drive removed, **and a +drive that came back** — the last is the one where the household is told nothing today and the apps are silently half +blind. The restart is stop + start (or `up -d --force-recreate`) of every container that binds the drive, FileBrowser +included, and the box — not Sonarr — says that a root folder is unreachable. ## 6. The links [FACT, measured calls in `audits/media-all-drives-2026-10-14/tools/wire.py`] diff --git a/documentation/audits/media-all-drives-2026-10-14/E3-who.txt b/documentation/audits/media-all-drives-2026-10-14/E3-who.txt new file mode 100644 index 00000000..773dfd33 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/E3-who.txt @@ -0,0 +1,12 @@ +== radarr: 3 import(s) + movie Hope: root=media_a tags=['drive-a'] + movie Matchbox the Movie: root=media_b tags=['drive-b'] + movie WHO: root=media_b tags=['drive-a'] + Matchbox the Movie Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5. client=qBittorrent drive-b download=media_b library=media_b HARDLINK + WHO Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB- client=Transmission drive-a download=media_a library=media_b COPY +/mnt/felhom-drives/media_a/userdata/media/transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY links=3 inode=4194407 +/mnt/felhom-drives/media_a/userdata/media/transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Sample/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY-Sample.mkv links=1 inode=4194411 +/mnt/felhom-drives/media_a/userdata/media/transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.mkv links=1 inode=4194408 +/mnt/felhom-drives/media_a/userdata/media/transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.nfo links=1 inode=4194409 +/mnt/felhom-drives/media_b/userdata/media/movies/WHO (2026)/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.mkv links=1 inode=2097156 + diff --git a/documentation/audits/media-all-drives-2026-10-14/README.md b/documentation/audits/media-all-drives-2026-10-14/README.md index e13d33bd..149edfb1 100644 --- a/documentation/audits/media-all-drives-2026-10-14/README.md +++ b/documentation/audits/media-all-drives-2026-10-14/README.md @@ -22,3 +22,6 @@ Predictions were written before each measurement: `A-drives/PREDICTIONS-A4-A6.md | — | **17:25 CEST: demo-hp was power-cut by another session's Immich drill** (`plugcut.py --plug hp`) — Tester 1 went down with it and came back by itself; the boot gate recreated the four media apps onto drive A; all test films then removed (0 files left) | `AFTER-power-cut-1725.txt` | | H | Prowlarr (drill-only template `b0fd3a0`, `version-2.6.5.5623`, config volume only) deployed through the dashboard; `wire.py` adds Sonarr and Radarr as Prowlarr apps with „Full Sync” (both pass Prowlarr's test; the sync completes; 0 indexers so far). Sonarr now refuses a bare IP (the operator set „Allowed hosts”) — `wire.py` sends `Host: ` | `H-*.txt` | | G | Sign-in with „Disabled for Local Addresses”: outsiders ARE asked (the public address arrives in `X-Forwarded-For`; Sonarr/Radarr redirect to `/login`); the home network and other containers are not (200 + API key) — R-1030. The box's setup gate also blocks outsiders until setup is marked done | `G-auth/` | +| E1 | The operator's test: 18 imports from Sonarr and Radarr. Every show/film whose tag matched its drive → a hardlink on that drive (13), through both download apps on both drives; the two mismatches (Slow Horses ×5, „Who") → a full copy on B while A seeds. Plex was empty until one manual scan (R-1037) | `E1-*.txt`, `E3-who.txt`, `K-plex-empty.txt` | +| S5 | Media B pulled 20:10:23 for 30 min: 0 apps stopped; the guest kept a DEAD mount (I/O errors); hub event + operator mail in 24 s; Plex/Jellyfin removed nothing; Sonarr/Radarr health silent | `S5-S6/` | +| S6 | Re-attached 20:41:00: the host re-mounted in 24 s; every running container — FileBrowser too — kept the dead view; „restart" did nothing; stop+start fixed the six apps; FileBrowser is protected and stays broken (R-1038) | `S5-S6/` | diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/PREDICTIONS.md b/documentation/audits/media-all-drives-2026-10-14/S5-S6/PREDICTIONS.md index 4f831672..db42e66c 100644 --- a/documentation/audits/media-all-drives-2026-10-14/S5-S6/PREDICTIONS.md +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/PREDICTIONS.md @@ -19,3 +19,7 @@ S6 — the same volume is re-attached to the same slot (`qm set 341 --scsi3 nvme apps IT stopped — none. - So the running media containers still do NOT see B until they are recreated (their bind was made at start). Expected: the restart notice of decision 238 must also cover „a drive came back". + +## S5 outcome (written before S6): stable 30 min; 0 apps stopped; Plex/Jellyfin removed nothing; the guest kept a DEAD +## mount of media_b (I/O errors, not an empty folder) — so the predicted „writes onto the guest rootfs" cannot happen, +## and for S6 the question is whether the agent REPLACES that dead mount. diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-dashboard.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-dashboard.txt new file mode 100644 index 00000000..fcec851c --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-dashboard.txt @@ -0,0 +1,61 @@ +Adattárolók +Külső meghajtók kezelése alkalmazásadatok tárolásához. +Megőrzött adatok +Eltávolított alkalmazások lemezen maradt adatai +Adatlemez +/mnt/felhom-drives/adatlemez +Alapértelmezett +Aktív +0,2 GB / 48,9 GB +ext4 · /dev/sdb[/felhom-data] · QEMU HARDDISK +1 alkalmazás használja +Paperless-ngx +6,3 KB +Mozgatás +Új telepítések letiltása +Áthelyezés ide… +Media A (/mnt/felhom-drives/media_a) +Összes adat áthelyezése +Végleges leszerelés +Media A +/mnt/felhom-drives/media_a +Aktív +27,8 GB / 97,9 GB +ext4 · /dev/sdc[/felhom-data] · QEMU HARDDISK +6 alkalmazás használja +Jellyfin +Mozgatás +Plex +Mozgatás +Radarr +Mozgatás +Sonarr +Mozgatás +Transmission +Mozgatás +qBittorrent +Mozgatás +Legyen alapértelmezett +Új telepítések letiltása +Áthelyezés ide… +Adatlemez (/mnt/felhom-drives/adatlemez) +Összes adat áthelyezése +Végleges leszerelés +Media B +/mnt/felhom-drives/media_b +Leválasztva +Leválasztva: 2026. 10. 14. 20:10 +Csatlakoztatás +Adatok áthelyezése +… +Új meghajtó inicializálása +Meglévő meghajtó csatolása +Nem regisztrált meghajtók +az ügynök által észlelt, még nem regisztrált adatmeghajtók +Rendszermeghajtók +védett — csak operátori aláírással módosíthatók +Már csatlakoztatott tárhely hozzáadása kézzel +Elérési út +Pl. /mnt/hdd_1 — a meghajtónak már csatolva kell lennie +Megnevezés (opcionális) +--- banners on the start page: [] diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-hub-log.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-hub-log.txt new file mode 100644 index 00000000..9c1477a7 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-hub-log.txt @@ -0,0 +1,2 @@ +2026/10/14 20:10:47 [INFO] Event from tester-1: storage_disconnected (error) — Meghajtó váratlanul leválasztva: Media B +2026/10/14 20:10:47 [INFO] Operator email sent for tester-1/storage_disconnected diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-pull.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-pull.txt new file mode 100644 index 00000000..2848e0e4 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-pull.txt @@ -0,0 +1,28 @@ +2026-10-14T20:10:23+02:00 +scsi3: nvme-scratch:341/vm-341-disk-4.raw,backup=0,size=100G +update VM 341: -delete scsi3 +rc=0 +scsi0: nvme-scratch:341/vm-341-disk-1.raw,size=200G +scsi1: nvme-scratch:341/vm-341-disk-2.raw,size=50G +scsi2: nvme-scratch:341/vm-341-disk-3.raw,backup=0,size=100G +scsihw: virtio-scsi-single +unused0: nvme-scratch:341/vm-341-disk-4.raw +-rw-r----- 1 root root 107374182400 Oct 14 20:10 /mnt/hdd_1/images/341/vm-341-disk-4.raw +2026-10-14T20:10:48+02:00 +sdc 100G /mnt/media_a +/dev/sdd on /mnt/felhom-drives/media_b type ext4 (rw,relatime,shutdown) +Oct 14 20:10:25 felhom kernel: JBD2: I/O error when updating journal superblock for sdd-8. +Oct 14 20:10:25 felhom kernel: EXT4-fs (sdd): shut down requested (2) +Oct 14 20:10:25 felhom kernel: sd 3:0:0:3: [sdd] Synchronizing SCSI cache +Oct 14 20:10:25 felhom kernel: sd 3:0:0:3: [sdd] Synchronize Cache(10) failed: Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK +Oct 14 20:10:25 felhom systemd[1]: Unmounting mnt-media_b.mount - Felhom storage mount e15652d5-0aa7-4eb8-93a1-afb2839d527c... +Oct 14 20:10:25 felhom systemd[1]: mnt-media_b.mount: Deactivated successfully. +Oct 14 20:10:25 felhom systemd[1]: Unmounted mnt-media_b.mount - Felhom storage mount e15652d5-0aa7-4eb8-93a1-afb2839d527c. +Oct 14 20:10:28 felhom felhom-agent[1201]: time=2026-10-14T20:10:28.265+02:00 level=INFO msg="storage: watchdog — known drive went absent; clearing any eject intent (replug will auto-mount)" target=e15652d5-0aa7-4eb8-9 +Oct 14 20:10:43 felhom felhom-agent[1201]: time=2026-10-14T20:10:43.988+02:00 level=INFO msg="storage: enrolled drive absent by UUID — not re-asserting (will retry when it enumerates)" name=e15652d5-0aa7-4eb8-93a1-afb2 +Oct 14 20:10:44 felhom sudo[334609]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives +Oct 14 20:10:44 felhom sudo[334658]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives/media_a +Oct 14 20:10:44 felhom felhom-agent[1201]: time=2026-10-14T20:10:44.603+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/media_a guest_path=/mnt/felhom-dri +Oct 14 20:10:44 felhom sudo[334670]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives/adatlemez +Oct 14 20:10:44 felhom felhom-agent[1201]: time=2026-10-14T20:10:44.670+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/adatlemez guest_path=/mnt/felhom-d +Oct 14 20:10:44 felhom felhom-agent[1201]: time=2026-10-14T20:10:44.670+02:00 level=WARN msg="reconcile: enrolled drive not present (durable-id absent) — skipping" vmid=9201 durable_id=uuid:e15652d5-0aa7-4eb8-93a1-afb2 diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-qbittorrent-states.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-qbittorrent-states.txt new file mode 100644 index 00000000..14eb9f3d --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S5-qbittorrent-states.txt @@ -0,0 +1 @@ +Counter({('tv-drive-b', 'queuedUP'): 4, ('tv-drive-a', 'queuedUP'): 3, ('tv-drive-a', 'stalledUP'): 2, ('movies-drive-b', 'queuedUP'): 1, ('movies-drive-a', 'stalledUP'): 1}) diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-reattach.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-reattach.txt new file mode 100644 index 00000000..6ad93369 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-reattach.txt @@ -0,0 +1,24 @@ +2026-10-14T20:41:00+02:00 +update VM 341: -scsi3 nvme-scratch:341/vm-341-disk-4.raw,backup=0 +rc=0 +scsi3: nvme-scratch:341/vm-341-disk-4.raw,backup=0,size=100G +2026-10-14T20:41:48+02:00 +sdc 100G /mnt/media_a +sde 100G /mnt/media_b +|-/mnt/media_b /dev/sde ext4 rw,relatime +| `-/mnt/felhom-drives/media_b /dev/sde[/felhom-data] ext4 rw,relatime +Oct 14 20:41:24 felhom felhom-agent[1201]: time=2026-10-14T20:41:24.762+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/media_b guest_path=/mnt/felhom-dri +Oct 14 20:41:44 felhom sudo[401123]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives +Oct 14 20:41:44 felhom sudo[401200]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives/media_a +Oct 14 20:41:44 felhom felhom-agent[1201]: time=2026-10-14T20:41:44.579+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/media_a guest_path=/mnt/felhom-dri +Oct 14 20:41:44 felhom sudo[401212]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives/adatlemez +Oct 14 20:41:44 felhom felhom-agent[1201]: time=2026-10-14T20:41:44.646+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/adatlemez guest_path=/mnt/felhom-d +Oct 14 20:41:44 felhom sudo[401218]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/media_b/felhom-data +Oct 14 20:41:44 felhom sudo[401221]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/chown 100000:100000 /mnt/media_b/felhom-data +Oct 14 20:41:44 felhom sudo[401225]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/bin/mkdir -p /mnt/felhom-drives/media_b +Oct 14 20:41:44 felhom felhom-agent[1201]: time=2026-10-14T20:41:44.710+02:00 level=INFO msg="reconcile: enrolled drive bound under shared parent (live, no reboot)" vmid=9201 where=/mnt/media_b guest_path=/mnt/felhom-dri +Oct 14 20:41:46 felhom sudo[401300]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/sbin/smartctl -a -j /dev/sde +Oct 14 20:41:47 felhom sudo[401340]: felhom-agent : PWD=/ ; USER=root ; COMMAND=/usr/sbin/smartctl -a -j /dev/sde +`-/mnt/felhom-drives/media_b /dev/sde[/felhom-data] +|-/mnt/felhom-drives/media_b /dev/sde[/felhom-data] + diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-restart.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-restart.txt new file mode 100644 index 00000000..dccbb190 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-restart.txt @@ -0,0 +1,29 @@ +20:42:20 sonarr before restart button: 2026-10-14T15:46:33.691456Z | ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error | +20:42:20 dashboard restart sonarr -> 200 {'ok': True, 'data': {'state': 'running'}, 'message': 'Stack sonarr re +20:42:45 sonarr after restart button: 2026-10-14T15:46:33.691456Z | ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error | +20:42:48 sonarr stop -> 200 +20:42:52 radarr stop -> 200 +20:42:54 qbittorrent stop -> 200 +20:42:59 transmission stop -> 200 +20:43:08 plex stop -> 200 +20:43:08 jellyfin stop -> 200 +20:43:24 sonarr start -> 200 +20:43:25 radarr start -> 200 +20:43:26 qbittorrent start -> 200 +20:43:27 transmission start -> 200 +20:43:28 plex start -> 200 +20:43:30 jellyfin start -> 200 +20:44:49 sonarr after stop+start: 2026-10-14T18:43:24.157626948Z | American Horror Story | +20:44:52 radarr after stop+start: 2026-10-14T18:43:25.147093183Z | American Horror Story | +20:44:55 qbittorrent after stop+start: 2026-10-14T18:43:25.950203755Z | American Horror Story | +20:44:58 transmission after stop+start: 2026-10-14T18:43:26.870494477Z | American Horror Story | +20:45:02 plex after stop+start: 2026-10-14T18:43:28.207524035Z | American Horror Story | +20:45:05 jellyfin after stop+start: 2026-10-14T18:43:29.327411356Z | American Horror Story | + +started=2026-10-14T15:28:04.13026562Z +ls: /srv/media_b/media/tv: I/O error + +20:46:09 filebrowser stop -> 403 {'ok': False, 'error': 'cannot stop protected stack filebrowser'} +20:46:17 filebrowser start -> 403 {'ok': False, 'error': 'cannot start protected stack filebrowser'} +started=2026-10-14T15:28:04.13026562Z healthy +ls: /srv/media_b/media/tv: I/O error diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-where-after.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-where-after.txt new file mode 100644 index 00000000..cc75998a --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/S6-where-after.txt @@ -0,0 +1,101 @@ +== drive adatlemez (/mnt/felhom-drives/adatlemez/userdata/media) +== drive media_a (/mnt/felhom-drives/media_a/userdata/media) + -- movies/ (1 file(s)) + 4697.5 MB links=2 inode=4194391 movies/Hope (2026)/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L.mkv + -- torrents/ (16 file(s)) + 909.5 MB links=2 inode=4194364 torrents/tv/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE.mkv + 0.0 MB links=1 inode=4194376 torrents/tv/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE/avatar.seven.havens.s01e01.1080p.web.h264-grace.nfo + 35.2 MB links=1 inode=4194366 torrents/tv/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE/Sample/avatar.seven.havens.s01e01.1080p.web.h264-grace.sample.mkv + 3789.5 MB links=1 inode=4194398 torrents/tv/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb.mkv + 0.0 MB links=1 inode=4194400 torrents/tv/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb.nfo + 3931.2 MB links=1 inode=4194385 torrents/tv/Slow.Horses.S06E03.1080p.WEB.H264-CAKES/slow.horses.s06e03.1080p.web.h264-cakes.mkv + 0.0 MB links=1 inode=4194367 torrents/tv/Slow.Horses.S06E03.1080p.WEB.H264-CAKES/slow.horses.s06e03.1080p.web.h264-cakes.nfo + 85.8 MB links=1 inode=4194392 torrents/tv/Slow.Horses.S06E03.1080p.WEB.H264-CAKES/Sample/slow.horses.s06e03.1080p.web.h264-cakes-sample.mkv + 0.0 MB links=1 inode=4194397 torrents/tv/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL/slow.horses.s06e02.proper.1080p.web.h264-ethel.nfo + 3758.3 MB links=1 inode=4194369 torrents/tv/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL.mkv + 77.7 MB links=1 inode=4194383 torrents/tv/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL/Sample/slow.horses.s06e02.proper.1080p.web.h264-ethel.sample.mkv + 720.3 MB links=2 inode=4194368 torrents/tv/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE.mkv + 0.0 MB links=1 inode=4194377 torrents/tv/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE/avatar.seven.havens.s01e03.1080p.web.h264-grace.nfo + 21.7 MB links=1 inode=4194370 torrents/tv/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE/Sample/avatar.seven.havens.s01e03.1080p.web.h264-grace.sample.mkv + 0.0 MB links=1 inode=4194405 torrents/movies/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L.nfo + 4697.5 MB links=2 inode=4194391 torrents/movies/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L.mkv + -- transmission/ (12 file(s)) + 4039.9 MB links=1 inode=4194396 transmission/tv/Slow.Horses.S06E04.1080p.WEB.H264-CAKES/slow.horses.s06e04.1080p.web.h264-cakes.mkv + 0.0 MB links=1 inode=4194399 transmission/tv/Slow.Horses.S06E04.1080p.WEB.H264-CAKES/slow.horses.s06e04.1080p.web.h264-cakes.nfo + 94.2 MB links=1 inode=4194395 transmission/tv/Slow.Horses.S06E04.1080p.WEB.H264-CAKES/Sample/slow.horses.s06e04.1080p.web.h264-cakes-sample.mkv + 3859.1 MB links=1 inode=4194387 transmission/tv/Slow.Horses.S06E01.1080p.WEB.H264-CAKES/slow.horses.s06e01.1080p.web.h264-cakes.mkv + 0.0 MB links=1 inode=4194388 transmission/tv/Slow.Horses.S06E01.1080p.WEB.H264-CAKES/slow.horses.s06e01.1080p.web.h264-cakes.nfo + 104.1 MB links=1 inode=4194390 transmission/tv/Slow.Horses.S06E01.1080p.WEB.H264-CAKES/Sample/slow.horses.s06e01.1080p.web.h264-cakes-sample.mkv + 0.0 MB links=1 inode=4194374 transmission/tv/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE/avatar.seven.havens.s01e02.1080p.web.h264-grace.nfo + 829.6 MB links=2 inode=4194375 transmission/tv/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE.mkv + 31.2 MB links=1 inode=4194373 transmission/tv/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE/Sample/avatar.seven.havens.s01e02.1080p.web.h264-grace.sample.mkv + 2819.9 MB links=1 inode=4194408 transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.mkv + 0.0 MB links=1 inode=4194409 transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.nfo + 22.7 MB links=1 inode=4194411 transmission/movies/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY/Sample/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY-Sample.mkv + -- tv/ (3 file(s)) + 909.5 MB links=2 inode=4194364 tv/Avatar - Seven Havens/Season 1/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE.mkv + 720.3 MB links=2 inode=4194368 tv/Avatar - Seven Havens/Season 1/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE.mkv + 829.6 MB links=2 inode=4194375 tv/Avatar - Seven Havens/Season 1/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE.mkv +== drive media_b (/mnt/felhom-drives/media_b/userdata/media) + -- movies/ (2 file(s)) + 3393.8 MB links=2 inode=1048578 movies/Matchbox the Movie (2026)/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX.mkv + 2819.9 MB links=1 inode=2097156 movies/WHO (2026)/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.mkv + -- torrents/ (10 file(s)) + 3393.8 MB links=2 inode=1048578 torrents/movies/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX.mkv + 0.0 MB links=1 inode=1048579 torrents/movies/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX.nfo + 0.0 MB links=1 inode=131101 torrents/tv/American.Horror.Story.S13E01.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E01.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.nfo + 1314.1 MB links=2 inode=131100 torrents/tv/American.Horror.Story.S13E01.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E01.13.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 813.6 MB links=2 inode=131110 torrents/tv/American.Horror.Story.S13E03.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E03.Rauhnacht.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=131113 torrents/tv/American.Horror.Story.S13E03.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E03.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.nfo + 956.5 MB links=2 inode=393221 torrents/tv/American.Horror.Story.S13E07.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E07.The.Baddest.Witch.of.Them.All.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=393223 torrents/tv/American.Horror.Story.S13E07.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E07.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.nfo + 969.7 MB links=2 inode=393218 torrents/tv/American.Horror.Story.S13E05.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E05.Date.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=393220 torrents/tv/American.Horror.Story.S13E05.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E05.Date.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.nfo + -- transmission/ (8 file(s)) + 1274.2 MB links=2 inode=131103 transmission/tv/American.Horror.Story.S13E02.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E02.1.13.AM.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=131104 transmission/tv/American.Horror.Story.S13E02.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E02.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.nfo + 1164.1 MB links=2 inode=131107 transmission/tv/American.Horror.Story.S13E04.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E04.Is.That.All.There.Is.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=131108 transmission/tv/American.Horror.Story.S13E04.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E04.Is.That.All.There.Is.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.nfo + 1149.4 MB links=2 inode=262146 transmission/tv/American.Horror.Story.S13E08.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E08.Hell.No.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=262147 transmission/tv/American.Horror.Story.S13E08.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E08.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.nfo + 913.5 MB links=2 inode=131112 transmission/tv/American.Horror.Story.S13E06.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E06.The.Return.of.Devils.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv + 0.0 MB links=1 inode=131114 transmission/tv/American.Horror.Story.S13E06.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB/American.Horror.Story.S13E06.The.Return.of.Devils.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.nfo + -- tv/ (13 file(s)) + 1164.1 MB links=2 inode=131107 tv/American Horror Story/Season 13/American.Horror.Story.S13E04.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 1314.1 MB links=2 inode=131100 tv/American Horror Story/Season 13/American.Horror.Story.S13E01.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 913.5 MB links=2 inode=131112 tv/American Horror Story/Season 13/American.Horror.Story.S13E06.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 956.5 MB links=2 inode=393221 tv/American Horror Story/Season 13/American.Horror.Story.S13E07.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 813.6 MB links=2 inode=131110 tv/American Horror Story/Season 13/American.Horror.Story.S13E03.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 1274.2 MB links=2 inode=131103 tv/American Horror Story/Season 13/American.Horror.Story.S13E02.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 969.7 MB links=2 inode=393218 tv/American Horror Story/Season 13/American.Horror.Story.S13E05.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 1149.4 MB links=2 inode=262146 tv/American Horror Story/Season 13/American.Horror.Story.S13E08.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 3789.5 MB links=1 inode=524295 tv/Slow Horses/Season 6/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb.mkv + 3859.1 MB links=1 inode=524298 tv/Slow Horses/Season 6/Slow.Horses.S06E01.1080p.WEB.H264-CAKES.mkv + 4039.9 MB links=1 inode=524299 tv/Slow Horses/Season 6/Slow.Horses.S06E04.1080p.WEB.H264-CAKES.mkv + 3758.3 MB links=1 inode=524296 tv/Slow Horses/Season 6/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL.mkv + 3931.2 MB links=1 inode=524297 tv/Slow Horses/Season 6/Slow.Horses.S06E03.1080p.WEB.H264-CAKES.mkv + +== 65 file(s) on 3 drive(s) +== ONE FILE, TWO NAMES (hardlink — no extra copy): + drive media_a inode 4194391 (4697.5 MB): movies/…/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L.mkv <-> torrents/…/Hope.2026.720p.AMZN.WEB-DL.DDP5.1.Atmos.H.264-N1H4L.mkv + drive media_a inode 4194364 (909.5 MB): torrents/…/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE.mkv <-> tv/…/Avatar.Seven.Havens.S01E01.1080p.WEB.h264-GRACE.mkv + drive media_a inode 4194368 (720.3 MB): torrents/…/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE.mkv <-> tv/…/Avatar.Seven.Havens.S01E03.1080p.WEB.h264-GRACE.mkv + drive media_a inode 4194375 (829.6 MB): transmission/…/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE.mkv <-> tv/…/Avatar.Seven.Havens.S01E02.1080p.WEB.h264-GRACE.mkv + drive media_b inode 1048578 (3393.8 MB): movies/…/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX.mkv <-> torrents/…/Matchbox.The.Movie.2026.720p.ATVP.WEB-DL.DDP5.1.Atmos.H.264-FLUX.mkv + drive media_b inode 131100 (1314.1 MB): torrents/…/American.Horror.Story.S13E01.13.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E01.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 131110 (813.6 MB): torrents/…/American.Horror.Story.S13E03.Rauhnacht.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E03.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 393221 (956.5 MB): torrents/…/American.Horror.Story.S13E07.The.Baddest.Witch.of.Them.All.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E07.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 393218 (969.7 MB): torrents/…/American.Horror.Story.S13E05.Date.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E05.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 131103 (1274.2 MB): transmission/…/American.Horror.Story.S13E02.1.13.AM.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E02.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 131107 (1164.1 MB): transmission/…/American.Horror.Story.S13E04.Is.That.All.There.Is.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E04.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 262146 (1149.4 MB): transmission/…/American.Horror.Story.S13E08.Hell.No.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E08.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + drive media_b inode 131112 (913.5 MB): transmission/…/American.Horror.Story.S13E06.The.Return.of.Devils.Night.1080p.DSNP.WEB-DL.DD5.1.H.264-playWEB.mkv <-> tv/…/American.Horror.Story.S13E06.1080p.DSNP.WEB-DL.DDP5.1.H.264-PlayWEB.mkv + 13 pair(s) +== LIBRARY FILES WITH LINK COUNT 1 (a copy, or its download is gone): + drive media_b: media_b/userdata/media/movies/WHO (2026)/Who.2026.720p.DSNP.WEB-DL.DDP5.1.H.264.HuNSUB-TRiNiTY.mkv (2819.9 MB) + drive media_b: media_b/userdata/media/tv/Slow Horses/Season 6/Slow.Horses.S06E05.Sayonara.1080p.ATVP.WEB-DL.DDP5.1.H.264-NTb.mkv (3789.5 MB) + drive media_b: media_b/userdata/media/tv/Slow Horses/Season 6/Slow.Horses.S06E01.1080p.WEB.H264-CAKES.mkv (3859.1 MB) + drive media_b: media_b/userdata/media/tv/Slow Horses/Season 6/Slow.Horses.S06E04.1080p.WEB.H264-CAKES.mkv (4039.9 MB) + drive media_b: media_b/userdata/media/tv/Slow Horses/Season 6/Slow.Horses.S06E02.PROPER.1080p.WEB.h264-ETHEL.mkv (3758.3 MB) + drive media_b: media_b/userdata/media/tv/Slow Horses/Season 6/Slow.Horses.S06E03.1080p.WEB.H264-CAKES.mkv (3931.2 MB) + diff --git a/documentation/audits/media-all-drives-2026-10-14/S5-S6/snapshots.txt b/documentation/audits/media-all-drives-2026-10-14/S5-S6/snapshots.txt new file mode 100644 index 00000000..9f4673bf --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/S5-S6/snapshots.txt @@ -0,0 +1,178 @@ +===== BEFORE 2026-10-14T18:10:11+0000 +guest: is media_b a mountpoint: yes | ls B: audiobooks books comics +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: American Horror Story Slow Horses + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: American Horror Story Slow Horses + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: American Horror Story Slow Horses + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: American Horror Story Slow Horses + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: American Horror Story Slow Horses + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: American Horror Story Slow Horses + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', True)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', True)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + + + +0 +===== S5-plus-1min 2026-10-14T18:11:17+0000 +guest: is media_b a mountpoint: yes | ls B: ls: reading directory '/mnt/felhom-drives/media_b/userdata/media': Input/output error +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: ls: /mnt/felhom-drives/media_b/userdata/media/tv: I/O error + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', False)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', False)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + 2026/10/14 18:10:47 [INFO] [settings] Storage path /mnt/felhom-drives/media_b disconnected=true + 2026/10/14 18:10:47 [WARN] [gate] drive ABSENT /mnt/felhom-drives/media_b — stopped+blocked 0 app(s): [] + 2026/10/14 18:10:47 [WARN] [web] FileBrowser: could not ensure userdata skeleton on /mnt/felhom-drives/media_b: chmod /mnt/felhom-drives/media_b/userdata: input/output error + 2026/10/14 18:10:47 [INFO] Event pushed: storage_disconnected (error) [hu-only] — Meghajtó váratlanul leválasztva: Media B + 2026/10/14 18:10:47 [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (3 storage path(s)) + + +===== S5 +5 min (pulled 20:10:23) 2026-10-14T18:15:26+0000 +guest: is media_b a mountpoint: yes | ls B: ls: reading directory '/mnt/felhom-drives/media_b/userdata/media': Input/output error +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: ls: /mnt/felhom-drives/media_b/userdata/media/tv: I/O error + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', False)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', False)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + 2026/10/14 18:10:47 [INFO] [settings] Storage path /mnt/felhom-drives/media_b disconnected=true + 2026/10/14 18:10:47 [WARN] [gate] drive ABSENT /mnt/felhom-drives/media_b — stopped+blocked 0 app(s): [] + 2026/10/14 18:10:47 [WARN] [web] FileBrowser: could not ensure userdata skeleton on /mnt/felhom-drives/media_b: chmod /mnt/felhom-drives/media_b/userdata: input/output error + 2026/10/14 18:10:47 [INFO] Event pushed: storage_disconnected (error) [hu-only] — Meghajtó váratlanul leválasztva: Media B + 2026/10/14 18:10:47 [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (3 storage path(s)) + 2026/10/14 18:13:44 [INFO] Event pushed: health_degraded (warning) [hu-only] — Rendszer állapot romlott (volt: ok) + +===== S5 +15 min (pulled 20:10:23) 2026-10-14T18:25:30+0000 +guest: is media_b a mountpoint: yes | ls B: ls: reading directory '/mnt/felhom-drives/media_b/userdata/media': Input/output error +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: ls: /mnt/felhom-drives/media_b/userdata/media/tv: I/O error + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', False)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', False)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + + +===== S5 +30 min (pulled 20:10:23) 2026-10-14T18:40:34+0000 +guest: is media_b a mountpoint: yes | ls B: ls: reading directory '/mnt/felhom-drives/media_b/userdata/media': Input/output error +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: ls: /mnt/felhom-drives/media_b/userdata/media/tv: I/O error + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', False)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', False)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + + +===== S6 +1 min (re-attached 20:41:00), BEFORE any app restart 2026-10-14T18:41:56+0000 +guest: is media_b a mountpoint: yes | ls B: audiobooks books comics +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T15:46:33.691456Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + radarr running healthy started=2026-10-14T15:46:34.33316681Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + qbittorrent running healthy started=2026-10-14T15:46:32.525118942Z | B/tv: ls: /mnt/felhom-drives/media_b/userdata/media/tv: I/O error + transmission running healthy started=2026-10-14T15:46:33.100564276Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': I/O error + plex running healthy started=2026-10-14T16:04:53.476264772Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + jellyfin running healthy started=2026-10-14T17:34:00.700911891Z | B/tv: ls: cannot access '/mnt/felhom-drives/media_b/userdata/media/tv': Input/output error + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', False)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [('RemotePathMappingCheck', 'You are using docker; download client qBittorrent drive-a places downloads in /mnt/felhom-')] + radarr root folders: [('media_a', True), ('media_b', False)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + 2026/10/14 18:41:18 [INFO] [gate] drive RETURNED /mnt/felhom-drives/media_b — re-attached + restarted gate-stopped apps + 2026/10/14 18:41:18 [INFO] Event pushed: storage_reconnected (info) [hu-only] — Meghajtó újra csatlakoztatva: Media B + 2026/10/14 18:41:18 [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (3 storage path(s)) + +===== S6 after stop+start of the six media apps 2026-10-14T18:45:17+0000 +guest: is media_b a mountpoint: yes | ls B: audiobooks books comics +guest rootfs under media_b (only if not a mountpoint): + sonarr running healthy started=2026-10-14T18:43:24.157626948Z | B/tv: American Horror Story Slow Horses + radarr running healthy started=2026-10-14T18:43:25.147093183Z | B/tv: American Horror Story Slow Horses + qbittorrent running healthy started=2026-10-14T18:43:25.950203755Z | B/tv: American Horror Story Slow Horses + transmission running healthy started=2026-10-14T18:43:26.870494477Z | B/tv: American Horror Story Slow Horses + plex running healthy started=2026-10-14T18:43:28.207524035Z | B/tv: American Horror Story Slow Horses + jellyfin running healthy started=2026-10-14T18:43:29.327411356Z | B/tv: American Horror Story Slow Horses + filebrowser running healthy started=2026-10-14T15:28:04.13026562Z | B/tv: adatlemez beolvasas media_a media_b + sonarr health (200): [] + sonarr root folders: [('media_a', True), ('media_b', True)] + sonarr series: [('Avatar: Seven Have', 3), ('American Horror St', 8), ('Slow Horses', 5)] + radarr health (200): [] + radarr root folders: [('media_a', True), ('media_b', True)] + radarr movie: [('Hope', True), ('Matchbox the Movie', True), ('WHO', True)] + plex section 1 (200): ['Hope', 'Matchbox the Movie', 'Who'] + plex section 2 (200): ['American Horror Story', 'Avatar: Seven Havens', 'Slow Horses'] + plex episodes: 16 + jellyfin: {'Series': 3, 'Movie': 3, 'Episode': 16} ['Amerikai Horror Story', 'Avatar: Seven Havens', 'Hope - Remény', 'Matchbox', 'Roger nyúl a pácban', 'Utolsó befutók'] + controller log (last 10 min, gate/storage/event): + 2026/10/14 18:41:18 [INFO] [gate] drive RETURNED /mnt/felhom-drives/media_b — re-attached + restarted gate-stopped apps + 2026/10/14 18:41:18 [INFO] Event pushed: storage_reconnected (info) [hu-only] — Meghajtó újra csatlakoztatva: Media B + 2026/10/14 18:41:18 [INFO] [web] FileBrowser sync — no config/compose change, ensured running without recreate (3 storage path(s)) + 2026/10/14 18:43:44 [INFO] Event pushed: health_recovered (info) [hu-only] — Rendszer állapot helyreállt: ok (volt: warn) + diff --git a/documentation/audits/media-all-drives-2026-10-14/tools/snap.py b/documentation/audits/media-all-drives-2026-10-14/tools/snap.py new file mode 100644 index 00000000..42dddad9 --- /dev/null +++ b/documentation/audits/media-all-drives-2026-10-14/tools/snap.py @@ -0,0 +1,72 @@ +#!/usr/bin/env python3 +"""snap.py