Linux文件夹权限及post,Linux修改权限命令chmod命令的9个示例

Linux中的Chmod命令用于更改或分配文件和目录的权限。在Linux / Unix系统中,文件和目录的可访问性由文件所有权和权限决定。在本教程中,我们列举了9个chmod命令用法示例。

chmod命令用于管理文件和目录权限,并确定谁可以访问它们。现在,让我们深入探讨文件和目录权限的性质以及如何修改它们。

Linux权限

为了更好地了解chmod命令的工作方式,谨慎地研究Linux文件权限模型。

在Linux中,我们具有3种类型的文件权限:读(r),写(w)和执行(x)权限。这些权限确定哪些用户可以读取,写入或执行文件。您可以使用文本或八进制(数字)表示法来分配这些权限,我们将在本教程后面讨论。

文件和目录可以属于文件(u),组(g)或其他(o)的所有者

u –文件的所有者

g –组

o –其他

使用ls -l命令列出文件许可权。该-l标志列出文件的权限。权限分为三组:用户,组和其他

为了更好地理解文件权限,我们将列出目录的内容,如下所示:

$ ls -l

029e405639ca1864334f9f041886fa45.png

从最左端开始,第一个字符/符号表示文件类型。一个连字符( - ),表示该文件是一个普通文件。符号d表示它是目录。符号l表示它是符号链接。

其余的9个字符分成3个三元组,每个三元组带有三个符号r(read),w(write)和x(execute)。如前所述,第一部分指向所有者权限,第二部分指示组权限,最后一部分指定其他用户对该文件或目录具有的权限。

从输出中,我们可以看到我们有2个文件(hello.txt和report.zip)和一个目录。

让我们检查第一个文件

-rw-rw-r-- 1个linuxtechi linuxtechi 35 Aug 17 15:42 hello.txt

对于第一个文件,-rw-rw-r–权限表示该文件的所有者具有读取和写入权限,该组还具有读取和写入权限,而其他用户仅具有读取权限。相同的权限也适用于reports.zip压缩文件。

让我们看一下目录的权限:

drwxrwxr-x 2 linuxtechi linuxtechi 4096 Aug 17 15:43 sales

我们可以看到目录和组的所有者拥有所有权限(读取,写入和执行),而其他用户仅具有读取和执行权限。

在三重连字符符号-表示没有权限已被授予该文件,小组或其他用户的所有者。

使用chmod命令设置文件和目录权限

在查看了文件权限以及如何查看它们之后,我们不再关注如何修改这些权限。

Linux中的chmod命令用于使用文本(符号)或数字(八进制)表示法更改文件和目录权限。它采用以下语法:

$ chmod [选项]模式文件名

只有root用户或具有sudo特权的普通用户才能更改文件或目录权限。您可以在命令语法中传递多个文件或目录,并用空格分隔。

现在让我们深入研究并查看chmod命令的不同示例。

示例1)使用数字符号分配权限

使用数字样式/符号设置权限时,请使用以下语法:

$ sudo chmod [选项]数字值文件名

数值可以为3或4个数字。但是,在大多数情况下,使用3个数字。读取,写入和执行权限采用以下值:

读取权限=> 4

写权限=> 2

执行权限=> 1

权限值的总和,即在三个段中的每一个中的读取,写入和执行,都占给定文件或目录的完整权限。

这是什么意思?

假设所有者具有读取,写入和执行权限,该组具有读取和执行权限,而其他用户仅具有读取权限,可以将其细分如下:

u:rwx = 7

g:rx = 5

o:r– = 4

因此,我们得出值754作为给定文件的文件许可权的数字值。

要将读取,写入和执行权限分配给所有者,而仅将读取权限分配给组和其他用户,请运行以下命令:

$ chmod 744 devops.txt

要将所有权限分配给文件的所有者,请对该组读取和执行权限,而对其他用户则完全没有权限,请执行:

$ chmod 750 coders.txt

要将所有权限分配给文件的所有者,请对该组具有读写权限,其他用户请运行以下命令:

$ chmod 755 sysadmin.txt

示例2)递归分配目录权限

为目录分配权限时,请使用-R标志以递归方式为其目录和子文件夹分配权限。例如:

$ chmod 755 -R目录名

$ chmod 755 -R /home/linuxtechi/data

示例3)使用文本符号分配权限

分配权限的另一种方法是使用文本符号。在此方法中,chmod命令采用标志或符号,这些标志或符号代表语法中的所有者,组,其他或所有用户(u,g和o)。

该方法不像以前的方法那样简单明了,应注意避免分配错误的权限。

这是语法的样子

$ chmod [选项] [ugoa] [– + =] [r,w,x]文件

让我们分解一下。

第一组参数[ugoa]指定权限将更改的用户类别

u:用户

g:组

o:其他

a:全部(包括以上所有内容)

如果省略此集合,则默认选项为a option。

第二组选项–操作员选项[– + =]–确定是要添加权限还是要从用户类别中删除权限。选项删除

–:该标志从指定的用户中删除文件许可权。

+:这会将权限添加/添加到指定用户。

=:这将为指定的用户分配不同的权限,并删除该用户段的先前权限。

示例4)为文件分配读取权限

$ chmod o = r 文件名

上面的命令仅将用符号“ o”表示的其他用户分配给该文件的读取权限,并删除分配给“其他”段的较早的权限。取得具有以下权限的file1.txt

c90317ede100df5650c808b05263fdfa.png

要分配“其他(o)”段读取权限,请仅运行

$ sudo chmod o = r file1.txt

243cff80504ee7a1f82d2750209fa2c1.png

从输出中,我们可以看到已为“其他”段分配了读取权限,而同时又失去了执行权限。这意味着=运算符将分配新的权限,而同时会删除以前的权限。

示例5)向文件和组所有者分配执行权限

$ sudo chmod ug + x文件名

上面的命令将执行权限添加到文件的所有者和组。使用我们的文件,它将变成:

$ sudo chmod ug + x file1.txt

6aff9dc6fce3c22a4db9cbfbb4e82ff2.png

示例6)为文件,组和其他分配不同的权限

$ sudo chmod u = rwx,g = rw,o = r文件名

上面的命令将所有权限分配给文件的所有者,将读写权限分配给组,仅将读取权限授予其他用户。

6417146edac2ddec6414ae4a963aff70.png

注意:如果在=运算符之后未指定任何权限,则将删除该用户段中的所有权限。

示例7)删除其他用户的所有权限

$ sudo chmod o =文件名

上面的命令从“其他”用户段中删除指定文件的所有权限。

该命令与以下命令具有相同的作用:

$ sudo chmod o-rwx文件名

aeeb640984384718df2601727cd1b7fa.png

示例8)使用参考文件分配权限

分配文件权限的另一种便捷方法是使用参考文件。在此方法中,您使用–reference = ref_file选项将文件的权限设置为与另一个参考文件的权限相同。使用以下语法

$ sudo –reference = ref_file文件名

例如,要将file2.txt的文件许可权设置为与file1.txt的许可权相同,请运行以下命令:

$ sudo --reference = file1.txt file2.txt

参考文件是file1.txt,而file2.txt是将占用参考文件的文件许可权的文件。

d0b90ba37be54e79b922f0dccd791218.png

示例9)仅将执行权限分配给目录

假设我们有一个包含文件和子目录的目录,并且我们希望仅对目录分配执行权限,而不接触文件。因此,这可以通过使用以下chmod命令来实现,

$ chmod a + X *

如果您已经注意到,我们已经使用大写的X作为执行权限,以上命令将在当前工作目录的所有目录上设置执行权限。

结论

这为我们的话题拉开了帷幕。我们查看了chmod命令,并看到了可以使用该命令更改文件权限的各种示例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值