title, created, updated, type, tags, sources
| title |
created |
updated |
type |
tags |
sources |
| NFS Storage Strategy |
2026-04-28 |
2026-04-28 |
concept |
|
| ../../homelab/architecture.md |
| ../../ai-assistant/workflows.md |
|
NFS Storage Strategy
TrueNAS NFS shares are used for user-uploaded data and media. Configs and databases stay on local VM disk.
Storage Hierarchy
Mount Rules
| Data Type |
Storage Location |
Example |
| User uploads (photos, media) |
NFS (TrueNAS) |
Immich photos, Jellyfin library |
| App configs |
VM local disk |
docker-compose.yml, config/ |
| Databases |
VM local (postgres-shared) |
PostgreSQL, Redis |
| Media library |
NFS (TrueNAS) |
Movies, TV, Music |
| Backups |
NFS (TrueNAS) |
Application backups |
| TLS certificates |
NFS (TrueNAS) |
Wildcard certs synced to grizzley |
NFS Exports
| Export |
Mounted On |
Consumer |
/mnt/truenas/mediadata |
/mnt/truenas/mediadata on ubuntu |
Jellyfin, *Arrs, Immich uploads |
/mnt/PersonalMediaLibrary |
/mnt/PersonalMediaLibrary on ubuntu |
Immich external library |
/mnt/truenas/traefik-certs/grizzley |
NFS on grizzley |
Traefik TLS certificates |
NFS Mount Checklist
Before using an NFS path in docker-compose, verify it exists in /etc/fstab:
Known Issues
- Pool corruption — TrueNAS pool has known corruption issues (as of 2026-04-28). Monitor
truenas entity page.
- rustfs ignores env vars — S3 object storage ignores environment variables on first boot. See rustfs.
Related