operator runbook
While the pool still lives on Unraid, the host owns port 2049. The container does not. The flash hook must call bash.
Unraid /boot is a FAT32 flash drive. A bare path in /boot/config/go prints Permission denied on the console and leaves NFS down. Always:
( sleep 45; bash /boot/config/plugins/fast-models/host-nfs-export.sh ) &
scripts/host-nfs-export.sh to /boot/config/plugins/fast-models/.UUID= on that copy to your pool’s blkid value. The repo copy is a placeholder on purpose.bash line above to /boot/config/go after emhttp./mnt/ai-data if that path is not already a mount./etc/exports for that path only (fsid=0).:2049 is quiet.exportfs -v.| Action | Why |
|---|---|
Exec the script from go | FAT32 → Permission denied |
chmod +x on /boot | Mode does not survive |
rc.nfsd start alone | Empty export table |
| Enable Settings → NFS | Fights shareNFSEnabled=no |
Container ENABLE_NFS=1 | Often misses host rpcbind; macOS fails |
/etc/rc.d/rc.nfsd status findmnt /mnt/ai-data test -f /mnt/ai-data/.fast-models-info && cat /mnt/ai-data/.fast-models-info showmount -e localhost ss -lntp | grep -E ':2049|:111'
Console Permission denied on a startup script → grep host-nfs /boot/config/go. If the line has no bash, that is the bug. If /mnt/ai-data is an empty placeholder and the container is healthy, the host mount is missing — run the script with bash, do not start nfsd first.
fsid=0 means the mount path is /:
sudo mkdir -p /mnt/ai-data sudo mount -t nfs -o vers=4.2,rsize=1048576,wsize=1048576,hard,noatime,nconnect=4 \ <nas-host-ip>:/ /mnt/ai-data test -f /mnt/ai-data/.fast-models-info && echo OK
<nas-host-ip>:/ /mnt/ai-data nfs vers=4.2,rsize=1048576,wsize=1048576,hard,noatime,nconnect=4,_netdev,x-systemd.automount 0 0
sudo mkdir -p /Volumes/ai-data sudo mount_nfs -o resvport,vers=3,tcp,rw,hard,intr \ <nas-host-ip>:/mnt/ai-data /Volumes/ai-data test -f /Volumes/ai-data/.fast-models-info && echo OK
Keep NVMes unassigned. Host nfsd owns 2049. Container ENABLE_NFS=0. Array shares SMB. go uses bash. When the pool moves, Unraid becomes just another NFS client.
Markdown twin: docs/UNRAID_NFS_PERSIST.md