WDMyCloud / RaspberryPi 与 OwnCloud 之间的 NFS 共享权限

WDMyCloud / RaspberryPi 与 OwnCloud 之间的 NFS 共享权限

寻求一些帮助来在 WDMyCloud(NFS 服务器)和 RaspberryPi(NFS 客户端)之间设置 NFS 共享。

我已经使用以下配置成功设置了共享,但在设置 OwnCloud 访问文件的正确权限时遇到了一些困难。

WDMyCloud (NFS 服务器)

/etc/exports

# Use nobody user (uid 65534) for nfs guest.  This is restricted from private
# shares by ACLs.
#
/nfs/owncloud 192.168.0.25(rw,all_squash,sync,no_subtree_check,insecure,crossmnt,anonuid=33,anongid=33)

grep 33 /etc/passwd

www-data:x:33:33:www-data:/var/www:/bin/sh

grep 33 /etc/group

www-data:x:33:root,nobody,daapd

Raspberry Pi(NFS 客户端)

/etc/fstab

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p1  /boot           vfat    defaults          0       2
/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that
192.168.0.30:/nfs/owncloud  /owncloud   nfs nouser,atime,auto,rw,dev,exec,suid 0 0

安装成功

raspberrypi ~ # df -h
Filesystem                  Size  Used Avail Use% Mounted on
/dev/root                    15G  1.8G   13G  13% /
devtmpfs                    237M     0  237M   0% /dev
tmpfs                       242M  8.5M  233M   4% /run
tmpfs                       242M     0  242M   0% /sys/fs/cgroup
/dev/mmcblk0p1               63M   21M   43M  33% /boot
192.168.0.30:/nfs/owncloud  3.6T  151G  3.4T   5% /owncloud

但列出目录时,它显示不同的用户/组:

raspberrypi ~ # ls -lAh /owncloud/
total 172K
drwxr-xr-x 2 nobody pi 4.0K Oct 17 22:01 files_external
-rw-r--r-- 1 nobody pi  284 Oct 17 21:37 .htaccess
-rw-r--r-- 1 nobody pi  145 Oct 17 22:01 htaccesstest.txt
-rw-r--r-- 1 nobody pi    0 Oct 17 22:01 index.html
-rw-r--r-- 1 nobody pi 156K Oct 17 22:01 owncloud.db
-rw-r--r-- 1 nobody pi    0 Oct 17 22:01 owncloud.log

我甚至没有以用户“pi”的身份执行此操作,因此不确定为什么使用这个组:

raspberrypi ~ # whoami
root

我尝试在服务器端重新启动“nfs-kernel-server”服务,但exportfs -a没有成功。

我想要实现的是让用户和组的文件/目录所有权均为“www-data”。

任何帮助将非常感激。

干杯,

更新:

补充一下,Raspberry Pi 上的 UUIDwww-data也是 33:

raspberrypi ~ # grep 33 /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
raspberrypi ~ # grep 33 /etc/group
www-data:x:33:www-data

答案1

问题是 NFS 挂载中的所有文件都需要由 Web 服务器用户拥有。否则您将遇到问题。最简单的方法是通过 smbclient 以 Web 服务器用户身份挂载它并执行数据目录的符号链接。顺便说一句。建议使用 Nextcloud 而不是 ownCloud,因为它包含重要的安全修复程序。Nextcloud 还具有直接访问 smb 共享的功能。这非常简单。

相关内容