使用 chmod 在 Ubuntu 中设置目录文件权限

使用 chmod 在 Ubuntu 中设置目录文件权限

对于 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

相关内容