已挂载 NFS 共享的权限

已挂载 NFS 共享的权限

我正在尝试将网络服务器上的 php 脚本写入文件服务器上的文件夹 /data 中。

阿帕奇 2.2、PHP 5.x。这只是一个测试配置,但我想以某种方式了解这件事,因为我对网络服务器的权限不是很有经验。

我通过添加来共享文件服务器上的文件夹 /data

/data   192.168.20.6(rw,sync,no_subtree_check) 

通过挂载文件夹

sudo mount 192.168.20.5:/data /mnt/data

创建一个指向 webroot 的链接(这有意义吗?)

sudo ln -s /mnt/data /webroot/site1/share

然后我得到这个:

Warning: fopen(/webroot/site1/share/data/uploads/Fotoraum/Original/Bluehend/test.txt): failed to open stream: Permission denied 

我必须在哪里以及如何以合理的方式调整权限以允许脚本写入 /data 及其子文件夹?

多谢!

答案1

根据您的评论,我认为以下选项比chmod -R 775 /mnt/data

使用时mount,您可以指定拥有文件的用户和组,也许您想使用以下内容:

sudo mount 192.168.20.5:/data /mnt/data -o uid=<uid-of-www-data>,gid=<gid-of-www-data>

uidgid的值www-data可以在/etc/passwd和中找到/etc/group

答案2

您可以从 nfs 服务器对共享文件夹执行 chmod 6777,以便在该文件上创建的任何文件都属于该文件夹的所有者组。

相关内容