如何设置目录的读写权限

如何设置目录的读写权限

我刚刚使用 Nautilus 将一个 2.8 Gb 的文件夹复制到我的 usr/home 目录。它包含许多文件夹和文件,但我无权读取其中任何一个。我如何为自己全局设置读写和执行权限。

我的电脑上有一个用户帐户和一个 root 帐户。但是我不想以 root 身份做所有事情。

答案1

首先改变所有权:

sudo chown -R username: <directory>

:用户名后面的意思是用户默认组,因此它也会同时重置组)

现在您不再需要 sudo,您可以在普通用户帐户下操作。

首先获得所有内容的读写权限:

chmod -R u=rw,go=r <directory>

意思是R埃德和西仪式访问ser(拥有文件的用户,也就是你),但只有R准备G团和那里。=设置权限的方法是,无论现在是什么,您还可以使用+-分别添加或删除给定的权限。

您可以选择:

chmod -R ug=rw,o=r <directory>

甚至:

chmod -R ug=rw,o= <directory>

从上面的解释中结果应该很清楚(我不知道为什么人们绝对继续使用八进制编码来做同样的事情,它没有更高的值,但无论如何如果需要,读取是 4,写入是 2,执行是 1,你必须添加这些值。所以我的最后一个例子是 660)

只剩一步了。你需要把 eX在每个目录和子目录上执行 ecute,否则cd将不起作用。

为此,您可以这样做:

find directory -type d | xargs chmod u+x

find命令会从directory每个对象开始查找类型 d,d 在此处表示目录,并且该命令将对所有目录xargs应用以下​​( ),并且根据前面的解释,该部分应该很简单。chmod u+xu+x

另外,下次,如果您直接以您的用户名开始复制,权限从一开始就应该没问题。如果不行,则意味着您在进行复制的顶级目录上可能具有奇怪的权限。

答案2

对我而言,这是有用的:

sudo chown -R username yourfoldername
sudo chmod -R 755 yourfoldername

相关内容