feat: Add salvage recovery and scan logs

This commit is contained in:
keith committed 2026-10-05 22:48:23 -05:00
1 parent a299cee9bb
commit b234845165
6 files changed
+100 -2

No files matched your search

+41
View File
@@ -0,0 +1,41 @@
/Warez
/Warez/Audio
/Warez/Books
/Warez/Games
/Warez/Fonts
/Warez/System
/Warez/3D Printing
/Warez/Cisco AP Firmware
/Warez/Dell R330 BIOS
/Warez/Beachbody Workouts
/Warez/Dev Stuff
/Media
/Media/YTDL
/Media/Podcasts
/Media/ERB
/Media/Audiobooks
/Media/Videos
/Media/Videos/Cartoons
/Media/Videos/Movies
/Media/Videos/Television
/Media/Videos/Workouts
/Media/Videos/Anime
/Media/Videos/Music
/Media/Videos/Stand-up Comedy
/Media/Videos/Family
/Media/Music
/Media/Henry Rollins Audiobooks & Video Audio
/Media/Metadata
/Backups
/SWD
/plexmediaserver
/emby
/docker
/docker/lgtm-data
/seedbox-dl
/seedbox-dl/complete
/seedbox-dl/incomplete
/seedbox-dl/watch
/seedbox-dl/sabnzbd
/seedbox-dl/deluge
/seedbox-dl/soulseek
+12 -2
View File
@@ -1,4 +1,14 @@
239861761 40777 (2) 0 0 4096 17-May-2025 10:47 . 2 40777 (2) 0 0 4096 14-Jul-2026 17:42 .
2 40777 (2) 0 0 4096 14-Jul-2026 17:42 .. 2 40777 (2) 0 0 4096 14-Jul-2026 17:42 ..
239861762 40777 (2) 0 0 4096 30-Jun-2025 12:25 tmp 11 40777 (2) 0 0 16384 8-Jul-2023 12:14 lost+found
137232385 40777 (2) 1000 1000 4096 25-Jul-2026 18:00 Warez
146669569 40777 (2) 0 0 4096 25-Jul-2026 16:33 Media
496369665 0 (2) 0 0 0 31-Dec-1969 18:00 Backups
278134785 40777 (2) 0 0 4096 8-Jul-2023 15:19 SWD
249298945 40777 (2) 998 998 4096 14-Sep-2024 16:18 plexmediaserver
239861761 40777 (2) 0 0 4096 17-May-2025 10:47 emby
382599169 40777 (2) 0 0 4096 10-Jun-2026 10:45 docker
33030145 40777 (2) 1000 1000 4096 8-Aug-2026 15:28 seedbox-dl
78905345 40777 (2) 0 0 4096 1-Dec-2024 16:21 paperless
12 100664 (1) 1000 1000 11617 14-Jul-2026 17:42 seeedbox-dl
+12
View File
@@ -0,0 +1,12 @@
{"_meta": {"source": "/Media/YTDL", "dest": "/mnt/recovery/Media/YTDL", "slug": "media-ytdl-15e0d749", "dead_start": 3418636288, "dead_end": 4395389951}}
{"status": "ETB_LOST", "inode": 146670104, "path": "Osbourne Family Christmas Special 2003 Entire Show.mp4", "reason": "extent-tree metadata block is on the dead PV", "size": 656083047, "blockcount": 1281424, "etbs": [{"level": 0, "block": 4296804182}]}
{"status": "SAFE", "inode": 146669577, "path": "appdata/local_db.json", "reason": "all physical data extents are outside the dead PV", "size": 364193, "blockcount": 712, "extents": [{"logical_start": 0, "logical_end": 88, "physical_start": 36736, "physical_end": 36824}], "etbs": []}
{"status": "SAFE", "inode": 146669578, "path": "appdata/db.json", "reason": "all physical data extents are outside the dead PV", "size": 325, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 42960384, "physical_end": 42960384}], "etbs": []}
{"status": "SAFE", "inode": 146669579, "path": "appdata/users.json", "reason": "all physical data extents are outside the dead PV", "size": 405, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 42960385, "physical_end": 42960385}], "etbs": []}
{"status": "SAFE", "inode": 146669580, "path": "appdata/default.json", "reason": "all physical data extents are outside the dead PV", "size": 2720, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 42960386, "physical_end": 42960386}], "etbs": []}
{"status": "SAFE", "inode": 146669584, "path": "appdata/db.old.json", "reason": "all physical data extents are outside the dead PV", "size": 171, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389345, "physical_end": 1173389345}], "etbs": []}
{"status": "SAFE", "inode": 146669585, "path": "appdata/users.old.json", "reason": "all physical data extents are outside the dead PV", "size": 257, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389346, "physical_end": 1173389346}], "etbs": []}
{"status": "SAFE", "inode": 146669586, "path": "appdata/db.json.1688846471.837.bak", "reason": "all physical data extents are outside the dead PV", "size": 243, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389347, "physical_end": 1173389347}], "etbs": []}
{"status": "SAFE", "inode": 146669587, "path": "appdata/users_db.json.1688846471.837.bak", "reason": "all physical data extents are outside the dead PV", "size": 405, "blockcount": 8, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389348, "physical_end": 1173389348}], "etbs": []}
{"status": "LOST", "inode": 146669581, "path": "appdata/logs/error.log", "reason": "one or more data extents overlap the dead PV", "size": 81578, "blockcount": 168, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389349, "physical_end": 1173389349}, {"logical_start": 1, "logical_end": 1, "physical_start": 3451815382, "physical_end": 3451815382}, {"logical_start": 2, "logical_end": 2, "physical_start": 91718254, "physical_end": 91718254}, {"logical_start": 3, "logical_end": 3, "physical_start": 96257573, "physical_end": 96257573}, {"logical_start": 4, "logical_end": 4, "physical_start": 216950414, "physical_end": 216950414}, {"logical_start": 5, "logical_end": 5, "physical_start": 338837524, "physical_end": 338837524}, {"logical_start": 6, "logical_end": 6, "physical_start": 474888534, "physical_end": 474888534}, {"logical_start": 7, "logical_end": 7, "physical_start": 443450451, "physical_end": 443450451}, {"logical_start": 8, "logical_end": 8, "physical_start": 23469609, "physical_end": 23469609}, {"logical_start": 9, "logical_end": 9, "physical_start": 15851066, "physical_end": 15851066}, {"logical_start": 10, "logical_end": 10, "physical_start": 15820364, "physical_end": 15820364}, {"logical_start": 11, "logical_end": 11, "physical_start": 15814185, "physical_end": 15814185}, {"logical_start": 12, "logical_end": 12, "physical_start": 263868956, "physical_end": 263868956}, {"logical_start": 13, "logical_end": 13, "physical_start": 96258209, "physical_end": 96258209}, {"logical_start": 14, "logical_end": 14, "physical_start": 426539204, "physical_end": 426539204}, {"logical_start": 15, "logical_end": 19, "physical_start": 15873565, "physical_end": 15873569}], "overlaps": [{"logical_start": 1, "logical_end": 1, "physical_start": 3451815382, "physical_end": 3451815382}], "etbs": [{"level": 0, "block": 100113642}]}
{"status": "LOST", "inode": 146669582, "path": "appdata/logs/combined.log", "reason": "one or more data extents overlap the dead PV", "size": 178143, "blockcount": 360, "extents": [{"logical_start": 0, "logical_end": 0, "physical_start": 1173389344, "physical_end": 1173389344}, {"logical_start": 1, "logical_end": 1, "physical_start": 3521621918, "physical_end": 3521621918}, {"logical_start": 2, "logical_end": 2, "physical_start": 259508146, "physical_end": 259508146}, {"logical_start": 3, "logical_end": 3, "physical_start": 180257327, "physical_end": 180257327}, {"logical_start": 4, "logical_end": 4, "physical_start": 3737061052, "physical_end": 3737061052}, {"logical_start": 5, "logical_end": 5, "physical_start": 91718255, "physical_end": 91718255}, {"logical_start": 6, "logical_end": 6, "physical_start": 91784202, "physical_end": 91784202}, {"logical_start": 7, "logical_end": 7, "physical_start": 96257574, "physical_end": 96257574}, {"logical_start": 8, "logical_end": 8, "physical_start": 32473134, "physical_end": 32473134}, {"logical_start": 9, "logical_end": 9, "physical_start": 216950415, "physical_end": 216950415}, {"logical_start": 10, "logical_end": 10, "physical_start": 45764109, "physical_end": 45764109}, {"logical_start": 11, "logical_end": 11, "physical_start": 99437130, "physical_end": 99437130}, {"logical_start": 12, "logical_end": 12, "physical_start": 216661557, "physical_end": 216661557}, {"logical_start": 13, "logical_end": 13, "physical_start": 474888535, "physical_end": 474888535}, {"logical_start": 14, "logical_end": 14, "physical_start": 96240669, "physical_end": 96240669}, {"logical_start": 15, "logical_end": 43, "physical_start": 241793583, "physical_end": 241793611}], "overlaps": [{"logical_start": 1, "logical_end": 1, "physical_start": 3521621918, "physical_end": 3521621918}, {"logical_start": 4, "logical_end": 4, "physical_start": 3737061052, "physical_end": 3737061052}], "etbs": [{"level": 0, "block": 1173389352}]}
+9
View File
@@ -0,0 +1,9 @@
GENERIC PLEX SALVAGE RECOVERY
=============================
Source: /Media/YTDL
Destination: /mnt/recovery/Media/YTDL
Recovered: 8 files, 360.08 KiB
Already present: 0 files, 0.00 B
Errors: 0
Free remaining: 225.08 GiB
Log: /mnt/recovery/salvage-media-ytdl-15e0d749-recovery.tsv
+9
View File
@@ -0,0 +1,9 @@
status bytes inode path detail
RECOVERED 364193 146669577 appdata/local_db.json
RECOVERED 325 146669578 appdata/db.json
RECOVERED 405 146669579 appdata/users.json
RECOVERED 2720 146669580 appdata/default.json
RECOVERED 171 146669584 appdata/db.old.json
RECOVERED 257 146669585 appdata/users.old.json
RECOVERED 243 146669586 appdata/db.json.1688846471.837.bak
RECOVERED 405 146669587 appdata/users_db.json.1688846471.837.bak
1 status bytes inode path detail
2 RECOVERED 364193 146669577 appdata/local_db.json
3 RECOVERED 325 146669578 appdata/db.json
4 RECOVERED 405 146669579 appdata/users.json
5 RECOVERED 2720 146669580 appdata/default.json
6 RECOVERED 171 146669584 appdata/db.old.json
7 RECOVERED 257 146669585 appdata/users.old.json
8 RECOVERED 243 146669586 appdata/db.json.1688846471.837.bak
9 RECOVERED 405 146669587 appdata/users_db.json.1688846471.837.bak
+17
View File
@@ -0,0 +1,17 @@
GENERIC PLEX SALVAGE SCAN
=========================
Source: /Media/YTDL
Destination: /mnt/recovery/Media/YTDL
Root inode: 146669570
Dead blocks: 3418636288-4395389951
Directories: 8
Files seen: 11
SAFE: 8 files, 360.08 KiB
LOST: 2 files, 253.63 KiB
ETB_LOST: 1 files, 625.69 MiB
ETB_SURVIVES: 0 files, 0.00 B
UNKNOWN: 0 files, 0.00 B
OTHER: 0 entries
Manifest: /mnt/recovery/salvage-media-ytdl-15e0d749-manifest.jsonl