更改指定用户的特定文件夹的访问权限

更改指定用户的特定文件夹的访问权限

Linux 中以下两个命令的确切模拟是什么

# chmod -R +a "www-data 允许读取、删除、写入、附加、file_inherit、directory_inherit" /path/to/moodledata

$ sudo chmod -R +a "whoami允许读取、删除、写入、附加、file_inherit、directory_inherit" /path/to/moodledata

当我运行这两个命令时我得到了

chmod:无效模式:`+a'

这是写有这两个命令的链接。 http://docs.moodle.org/25/en/Installing_Moodle
转到该文档中的“创建 (moodledata) 数据目录”部分。这些命令在 Linux/Ubuntu 中有效吗?我的研究表明,+a 模式的 chmod 可用于 Mac OS。所以我想向专家请教 linux/ubuntu 是否有这两个命令的类似命令?

答案1

chmod 语法允许组合多个属性。例如

  chmod -R +w,+x,+r /path/that/is/not/your/moodledata

相当于您尝试实现的目标。最好将其与用户选项相结合。-R意味着更改将以递归方式进行。

  chmod -R g+w,u+w,o-w /path/that/is/not/your/moodledata

g=组,u=用户,o=其他。属性如下r伊德,礼仪Xecute。顺便说一句,man chmod可以成为你的朋友。

答案2

为了在 /moodledata 中拥有相同(或接近相同)的权限,您首先应该更改所有者、组,然后设置权限(对于我来说,在 centos 6.6 上从 git 使用 moodle 2.7 是有效的),因为 moodledata 是空的!

chown apache /path/to/moodledata

chgrp apache /path/to/moodledata

chmod 2777 /path/to/moodledata

执行 sudo -u apache /usr/bin/php /var/www/html/moodle/admin/cli/install.php (注意!以 APACHE 身份运行 SUDO,而不是以 ROOT 身​​份运行!)注意:

数据目录权限 == 输入值,按 Enter 键使用默认值 (2777)

其中 2777 是默认文件权限。

相关内容