总结:当我将文件从 macOS 客户端复制到 FreeBSD NFS 服务器时,该文件以 777 权限写入,并由 501:staff 拥有。
在下面的示例中,我希望“license.properties”归 myuser:staff 所有,并且具有 664 个权限。
这是我在 Mac 上挂载 NFS 共享时使用的命令
mount -t nfs 192.168.1.229:/mnt/storage-mypc ~/test
FreeBSD 设置:
mypc% pwd
/mnt/storage-mypc/my-stuff
mypc% ls -al
total 140
drwsrwsr-x 10 myuser staff 11 Nov 22 23:44 apps
mypc% ls -al apps
total 66
-rwxrwxrwx 1 501 staff 232 Nov 10 15:06 license.properties
mypc% cat /etc/exports
/mnt/storage-mypc -maproot=myuser -network 192.168.1/24
/mnt/storage-mypc -maproot=myuser -network 192.168.2/24
mypc% showmount -e
Exports list on localhost:
/mnt/storage-mypc 192.168.1.0 192.168.2.0
mypc% cat /etc/rc.conf
clear_tmp_enable="YES"
syslogd_flags="-ss"
sendmail_enable="NONE"
hostname="mypc"
wlans_iwm0="wlan0"
ifconfig_wlan0="WPA DHCP"
sshd_enable="YES"
ntpd_enable="YES"
powerd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="NO"
zfs_enable="YES"
######################################
#mypc
mountd_enable="YES"
nfs_server_enable="YES"
rpcbind_enable="YES"
ifconfig_re0="inet 192.168.2.1 netmask 255.255.255.0"
答案1
大多数操作系统忽略目录上的 setuid 位(包括 BSD)。
您要么需要在客户端和服务器上使用相同的名称,要么降级到 NFSv3 并设置 idmap。