我想将目录挂载/var/www/mysite
到目录/home/daniel/mysite
,但同时将挂载文件的用户从原始用户(www-data
)映射到我自己的用户(daniel
)。
这样,文件/var/www/mysite/index.php
的用户www-data
将出现在已安装的目录中,/home/daniel/mysite/index.php
并归其所有daniel
- 或者,如果我/home/daniel/mysite/test.php
用自己的用户创建文件,它将在用户下的原始目录中创建www-data
有可能吗?如果不可能,我有什么其他选择,以便我可以使用 IDE 并确保所有文件都属于 HTTP 服务器的用户?
答案1
最简单的解决方案是授予自己对 mysite 文件夹下所有内容的写权限后,使用 ln -s 创建指向主驱动器下的 mysite 文件夹的符号链接。
答案2
我最终使用 NFS 来解决我的难题。我使用了本教程作为基础,最终得到以下内容/etc/exports
:
/var/www/mysite localhost(rw,sync,no_subtree_check,all_squash,anonuid=33,anongid=33)
(所有内容都在一行中;其中 33 是www-data
的 UID 和 GID)
以及以下内容/etc/fstab
:
localhost:/var/www/mysite /home/daniel/mysite nfs4 defaults 0 0
当我浏览目录时,它说每个文件都属于www-data:www-data
,但我可以创建和编辑文件,就好像它们属于我自己的用户一样。