Projects / Media migration
Media, with fewer boundaries
Moving storage ownership from a TrueNAS VM to a Debian VM without restarting the Plex library.
Before
TrueNAS
Owns the ZFS pools and shares them out.
NFS
Config and cache writes cross it; permissions and ACLs become part of the app’s problem.
Plex
Library and metadata live on the far side of the network.
After
Debian media VM
Owns the ZFS pools and runs the apps beside them.
Plex + Jellyfin
Plex reads local datasets. Jellyfin has its own config and cache.
Media is read-only
Safe against accidents, and still not a backup.
The problem
Plex configuration and cache writes were going over NFS, so permissions and ACL behaviour had become part of the application problem. A separate storage appliance also added another boundary to troubleshoot, on a single-user lab running on one Proxmox host.
The approach
Storage and application moves were staged separately. A Debian VM took ownership of the ZFS pools, and both pools were verified before any application paths changed. The existing Plex database and metadata were kept, so users, watch history and libraries carried over rather than being recreated.
Decisions
- Keep the old VM. The original TrueNAS VM stayed intact and powered off as a rollback during validation.
- Trial, don’t replace. Jellyfin ran alongside Plex as a separate Docker service, with read-only media mounts and its own configuration, so the working app was never touched.
- Reuse the front door. Jellyfin is reached through the existing Cloudflare Tunnel, behind its login page, rather than a new router port.
Outcome and honest gaps
The August 2026 notes record the move to Debian and the Jellyfin trial. What the published write-ups don’t say: hardware beyond the host overview, pool layout and dataset names, backup tooling, how the Jellyfin trial concluded, or whether the TrueNAS VM was later removed.
Lessons
- A dedicated NAS isn’t wrong. Here, owning storage directly removed complexity.
- Reversible steps are worth the extra patience.
- Read-only mounts are not backups. Recovery is a separate plan.
Related writing
What it taught
- Reversible stepsThe TrueNAS VM stayed intact and powered off as a rollback during validation.
- Storage ownershipNFS permissions and cache writes crossed too many boundaries; owning storage locally made them visible in one place.