如何更改文件夹及其所有子文件夹和文件的权限?

这仅适用于/opt/lampp/htdocs文件夹,而不适用于其内容:

chmod 775 /opt/lampp/htdocs

如何为/opt/lampp/htdocs文件夹的所有当前内容设置chmod 755,以及将来自动为其下创建的新文件夹/文件设置chmod?


当前回答

对于Mac OS X 10.7(Lion),它是:

chmod -R 755 /directory

是的,正如所有其他人所说,做这件事时要小心。

其他回答

对于Mac OS X 10.7(Lion),它是:

chmod -R 755 /directory

是的,正如所有其他人所说,做这件事时要小心。

chmod-R 755 directory_name可以工作,但如何将新文件保存到755?文件的权限将成为默认权限。

您可能需要考虑nik在超级用户上给出的答案,并对所有文件/文件夹使用“一个chmod”,如下所示:

chmod 755 $(find /path/to/base/dir -type d)
chmod 644 $(find /path/to/base/dir -type f)

Use:

sudo chmod -R a=-x,u=rwX,g=,o= folder

所有者rw,其他人没有访问权限,以及带有rwx的目录。这将清除文件上的现有“x”。

chmod 744中解释了符号chmod计算。

我认为Adam正在询问如何更改所有试图在/opt/lampp/htdoc目录上操作的进程的umask值。

用户文件创建模式掩码(umask)用于确定新创建文件的文件权限。它可用于控制新文件的默认文件权限。

因此,如果您将使用某种FTP程序将文件上载到/opt/lampp/htdoc,则需要配置FTP服务器以使用所需的umask。

例如,如果文件/目录需要由PHP创建,则需要修改PHP代码:

<?php
    umask(0022);
    // Other code
?>

如果要从Bash会话创建新文件/文件夹,可以在shell配置文件~/.bashrc文件中设置umask值。

或者可以在/etc/bashrc或/etc/profile文件中为所有用户设置umask。

将以下内容添加到文件中:

umask 022

Sample umask Values and File Creation Permissions
If umask value set to    User permission     Group permission     Others permission
000                            all                 all                   all
007                            all                 all                   none
027                            all             read / execute               none

要更改已创建文件的权限,可以使用find。