Linux中的chmod命令

更改模式或 chmod 命令可让您更改 Linux 中文件的访问模式。 这使您可以决定谁可以访问和运行文件。 我们将使用 chmod 更改 Ubuntu 20.04 中文件和目录的权限。

要查看文件的权限,请使用:

ls –l

这是什么意思呢?

第一个字符标识它是文件 (-) 还是目录 (d)。

接下来是权限。 前三个字符显示所有者的权限,后三个字符显示组权限,最后三个字符显示其他人的权限。 下表说明了用户类型。

用户描述
所有者这是拥有该文件的用户
团体这些是属于用户组的用户
其他这些是所有者和组成员以外的用户

让我们看看Linux中的用户权限。 共有三个基本权限; 读取 (r)、写入 (w) 和执行 (x)。 读取意味着用户只能读取或查看文件。 写入允许用户编辑或删除文件。 Execute 允许用户执行文件。 正如您在上图中看到的,权限要么表示为字符,要么表示为 -。 “-”(破折号)表示用户没有权限。

chmod 的语法是:

chmod {users}{operator}{permission} {filename}

运算符让您指定权限。 我们有三个运营商:

+:添加权限

-:删除权限

=:让您指定确切的权限

chmod 有两种模式,符号模式和数字模式。 我们将涵盖两者。

符号模式

让我们看一下文件“hello.c”。 用户拥有所有三个权限。

如果我们想改变权限,只有所有者可以读写文件,而组和其他人有读取权限,我们将使用:

chmod u=rw,og=r hello.c

要检查权限是否更新,请使用,

ls –l {filename}

如果要为所有者添加执行权限,我们使用:

chmod u+x hello.c

如果我们现在查看权限,我们可以看到所有者的执行权限。

如果我们想为所有人设置执行权限,我们使用:

chmod a+x hello.c

如果我们现在查看权限,我们可以看到所有用户的执行权限。

数字模式

您可以使用 chmod 使用三位数字来授予权限。 下面是它的工作原理,最左边的数字代表所有者的权限,中间的数字代表群组成员,最右边的数字代表其他人。

权限如下:

读取 = 4

写 = 2

执行 = 1

无权限 = 0

下表总结了权限。

7所有权限4+2+1
6读和写4+2+0
5读取并执行4+0+1
4只读4+0+0
3编写和执行0+2+1
2只写0+2+0
1只执行0+0+1
0没有权限0+0+0

让我们使用这个方法来设置 ABC.txt 的权限。

如果我们希望所有者拥有所有权限并且组和其他人拥有读取权限,我们将使用:

chmod 744 ABC.txt

要检查权限是否更新,请使用,

如果要递归更改目录中所有文件的权限,请使用:

chmod –R {permissions} {filename}

此命令为所有者提供所有三个权限和组,其他人没有权限。

如果您想了解有关 chmod 的更多信息,请使用:

man chmod

这将带您查看包含此命令的所有详细信息的手册。

我们在本文中介绍了 chmod 命令的符号模式和数字模式。