我在服务器方面遇到了一些麻烦,我将一些配置文件保存在 Web 项目的子目录中。使用我的超级用户帐户,我通过上传更改了这些文件,NetBeans 会为我提交这些文件。
但客户端需要能够通过 ftp 访问和修改这些文件。我能够运行chown ftpuser *.*
并且它有效,但只有在我重新上传文件后,它才再次归我所有,并且客户端无法再修改它。
我怎样才能让这些文件可由我修改和客户端?
(这是在 Plesk 11 上运行的 Debian 6.0)
答案1
您应该查找基于文件的 ACL(FACL),因为它们可以完成您想要做的事情。
简而言之,您可以通过编辑 /etc/fstab 并添加“acl”来设置相关分区以跟踪基于文件的 acl 权限:选项:
#example /dev/VolGroup00/LogVol02 / ext3 defaults,acl 1 1
然后在您希望客户端访问的目录上设置适当的 FACL:
#set existing owner/group to rwx
chmod ug=rwX -R /some/ftp/directory
#set existing files/folders to rwx for ftpuser
setfacl -m u:ftpuser:rwX -R /some/ftp/directory
#set future files/folders to rwx for ftpuser
setfacl -dm u:ftpuser:rwX -R /some/ftp/directory
(请注意,我们将现有所有者和组设置为 rwx,因为 FACL 仅限于拥有组的权限。还有其他方法可以解决这个问题,但最简单的方法是确保拥有组为 rwx)
链接: http://linuxcommando.blogspot.com/2007/12/basic-linux-permission-model-lets-you.html http://retrop.wordpress.com/2012/02/10/enabling-file-acls-in-debian-6-access-control-lists/