![使用 chmod 在 Ubuntu 中设置目录文件权限](https://linux22.com/image/960159/%E4%BD%BF%E7%94%A8%20chmod%20%E5%9C%A8%20Ubuntu%20%E4%B8%AD%E8%AE%BE%E7%BD%AE%E7%9B%AE%E5%BD%95%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90.png)
对于 Ubuntu 来说,这个命令(Fedora 命令)的等效命令是什么:
chmod +a "www-data allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
当我在 Ubuntu(10.0.4 LTS)上尝试上述操作时,收到错误消息:
chmod: invalid mode: `+a'
Try `chmod --help' for more information.
答案1
chmod 使用一系列数字条目来设置文件权限,而不是字符串。ubuntu 版本的命令如下
chmod 0755 app/cache app/logs
假设 www-data 是所有者,此操作应该可行。如果不是,
chown www-data.www-data app/cache app/logs
将改变它,使其www-data
拥有目录。
详细文章:http://mdshaonimran.wordpress.com/2010/06/13/chmod-change-filefolder-permission-in-ubuntu/
答案2
chmod +a 实际上设置了一个 ACL,用于在目录写入时维护权限。在这里使用它的原因是,Web 服务器(用户 www-data)写入的文件和日志具有与 CLI 上的用户写入的文件相同的权限。
看起来他是从 Symfony 2 安装说明中提取的。请查看更新后的文档:http://symfony.com/doc/current/book/installation.html
它指出 Ubuntu 中的等效命令是
$ sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
$ sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs