- Full Obsidian vault content - Host configs (ice, grizzley, ubuntu, proxmox, truenas, panda, hyte) - Media stack documentation - Traefik HA setup - Automation scripts - Bachelor party planning
67 lines
2.3 KiB
Markdown
67 lines
2.3 KiB
Markdown
---
|
|
title: NFS Storage Strategy
|
|
created: 2026-04-28
|
|
updated: 2026-04-28
|
|
type: concept
|
|
tags: [concept, storage, nas]
|
|
sources: [../../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
|
|
|
|
```
|
|
TrueNAS (192.168.50.12)
|
|
├── ZFS Pool "TrueNAS" (25.4TB, 65% used)
|
|
│ ├── /mnt/truenas/mediadata/ ← Movies, TV, Music
|
|
│ ├── /mnt/truenas/traefik-certs/ ← TLS certificates (NFS to grizzley)
|
|
│ └── /mnt/truenas-backup/ ← Application backups
|
|
└── ZFS Pool "RPiPool" (10.9TB, 5% used)
|
|
└── /mnt/rpipooldata/ ← Reserve storage
|
|
|
|
PersonalMediaLibrary (separate NFS)
|
|
└── /mnt/PersonalMediaLibrary/ ← Immich external library (photos)
|
|
```
|
|
|
|
## 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`:
|
|
|
|
```bash
|
|
cat /etc/fstab | grep nfs
|
|
```
|
|
|
|
## 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
|
|
|
|
- [[truenas]] — TrueNAS NAS entity
|
|
- [[ubuntu]] — Ubuntu host with NFS mounts
|
|
- [[jellyfin]] — Media server using NFS
|
|
- [[vm-storage-policy]] — VM Storage Policy with full mount rules
|