拒绝在主目录下的特定目录中创建文件的权限

拒绝在主目录下的特定目录中创建文件的权限

我将一个文件夹从目录递归复制/www/到我的主目录下的某个目录中。现在,每次我想在这个复制的目录中创建文件或文件夹时,它都会显示。所以,我每次都permission denied必须使用。sudo

问题是我可以在主目录下的其他目录中创建文件/文件夹,但这个目录除外。我尝试递归更改此目录的权限,755但问题仍然存在。

有人能指出我面临的确切问题吗?我该如何解决这个问题?

答案1

很明显,文件夹是 root 用户的财产,这就是为什么您必须使用 sudo 才能与文件夹交互。我认为无法chown将权限更改应用于文件夹,因此您必须采用图形方式,如下所述。

[编辑] 文件夹位置通常不会影响其权限级别或所有者。例如,我可能是位于 /usr/share/ 中的文件夹的所有者,但 root 可能是我桌面上的文件夹的所有者。如果您想知道为什么会这样,我建议您询问贝尔实验室。他们开创了它。:)

(我使用了 Nemo,但 Nautilus 的步骤相同)

首先,打开一个终端并输入sudo nautilus(再次,我使用了 Nemo,但过程相同),然后输入您的 sudoer 的密码。

sudo nautilus (在本例中为 nemo)

当 Nautilus 打开时,导航到您想要更改权限的文件夹。根据您使用的程序,您可能会看到“提升权限”通知。这是为了提醒用户小心行事,因为如果使用不当,root 权限可能会损坏计算机。

导航至所需文件夹

现在右键单击要更改的文件夹并选择“属性”,转到“权限”选项卡,它应该看起来像这样:

文件夹的 Root 权限

选择所有者和组的下拉菜单,并将其从“root”更改为您的用户名(在我的情况下为 ben)。现在应该看起来像这样:

看起来应该如何

如果需要,单击“将权限应用于所附文件”。然后关闭 Nautilus 并退出终端。

答案2

使用此命令递归更改目标目录中的所有权:

sudo chown <username>:<groupname> -R /path/to/target

(...用户名和组名通常相同。)

例如

sudo chown kevin:kevin -R /home/kevin/target_directory

现在,如果需要,您还可以使用 chmod 设置权限:

find /path/to/target -type f -execdir chmod 666 -Rv {} +

(授予所有者、组和世界对目标中的所有文件的 RW 权限。)

find /path/to/target -type d -execdir chmod 777 -Rv {} +

(授予目标中所有目录的所有者、组和世界 RWX 权限。)

答案3

www当您从中复制时可能/var/www会创建一个带有 的链接或符号链接/var/www

尽管尝试777许可或777-755 = 022

相关内容