Cannot write to local NFS mount from either root or within CTs

fproverbio

New Member
Dec 24, 2023
2
0
1
hi everyone, i'm having a blast using proxmox!

I'm facing an issue with how i want to organize my lxc infrastructure. here a brief roundup of the setup:
  • single node (neuromancer) running both VMs and CTs
  • zfs pool ("vault") with a few datasets (both used for proxmox storage and user storage). the relevant dataset here is "/vault/arr", created specifically to be mounted as nfs share. dataset has sharenfs=on
  • "/vault/arr" dataset is mounted as nfs share on the host "/mnt/pve/nfs-arr" (i've done this in the webgui from the datacenter > storage tab). The forum post i followed is this.
The first issue is that, after creating the nfs share, i cannot write to it from the pve root user:

Code:
root@neuromancer:~# touch /mnt/pve/nfs-arr/test
touch: cannot touch '/mnt/pve/nfs-arr/test': Permission denied

this is the ownership situation of /mnt/pve/nfs-arr

Code:
root@neuromancer:~# ls -ld /mnt/pve/nfs-arr/
drwxr-xr-x 3 root root 3 Dec 24 11:22 /mnt/pve/nfs-arr/

this is the result if i try to chown from the pve root user:

Code:
root@neuromancer:~# chown -R 1005:1005 /mnt/pve/nfs-arr
chown: changing ownership of '/mnt/pve/nfs-arr/snippets': Operation not permitted
chown: changing ownership of '/mnt/pve/nfs-arr': Operation not permitted

i have another moutpoint for a different disk in the same /mnt/pve folder, and i can write to it fine when the disk is connected to the system.

Previously, i was bind-mounting the dataset "vault/arr" directly to the CTs as described here, and i chown'ed the dataset directly to 1005:1005. This dataset doesn't exist anymore but the setup worked. I was, however, worried about data corruption due to multiple CTs accessing the same dataset at the same time (both writes and reads), so i decided to switch to bind-mounting a local nfs share of the dataset, hoping that accessing the dataset though a network share fs would have prevented it.

Why is the first issue happening? i thought the host root user would have had total access to every folder of the host fs.