您可以使用ACL。要为Ubuntu 10.10设置ACL,请首先在/ etc / fstab中使用acl选项挂载文件系统。
sudo vim /etc/fstab
UUID = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx / ext4默认值,acl 0 1
sudo mount -o remount,acl /
然后建立一个用户可以为此目的所属的组。
sudo groupadd developers
sudo usermod -a -G developers $username
用户需要注销然后再次登录才能成为开发人员组的成员。
当然,如果您要在/ var / www目录中包含内容,则不要这样做,而只是为了说明将其设置为开始:
sudo rm -rf /var/www
sudo mkdir -p /var/www/public
sudo chown -R root.developers /var/www/public
sudo chmod 0775 /var/www/public
sudo chmod g+s /var/www/public
sudo setfacl -d -m u::rwx,g::rwx,o::r-x /var/www/public
然后在配置文件中将对“ / var / www”的引用替换为“ / var / www / public”,然后重新加载。
sudo vim /etc/apache2/sites-enabled/000-default
sudo /etc/init.d/apache2 reload
如果我们想限制创建文件的用户以外的所有用户的删除和重命名:
sudo chmod +t /var/www/public
这样,如果我们想为Apache文档根目录之外的框架创建目录,或者创建服务器可写目录,这仍然很容易。
Apache可写的日志目录:
sudo mkdir /var/www/logs
sudo chgrp www-data /var/www/logs
sudo chmod 0770 /var/www/logs
Apache可读的库目录:
sudo mkdir /var/www/lib
sudo chgrp www-data /var/www/lib
sudo chmod 0750 /var/www/lib
chmod g+s
andsetfacl
命令(及其参数)的工作,我将很感兴趣。