chmod命令使用详解

2022-10-28 17:59:42 浏览数 (2)

什么是 chmod

chmod 命令可以用来修改用户对某个文件活文件夹的权限

Linux 系统中,文件的基本权限由 9 个字符组成,以 rwxrw-r-x 为例,我们可以使用数字来代表各个权限,各个权限与数字的对应关系如下:

代码语言:javascript复制
r --> 4
w --> 2
x --> 1

rwxrw-r-x 来说,所有者、所属组和其他人分别对应的权限值为:

代码语言:javascript复制
所有者 = rwx = 4 2 1 = 7
所属组 = rw- = 4 2 = 6
其他人 = r-x = 4 1 = 5

所以,此权限对应的权限值就是 765

rwx 分别表示读、写、执行权限

如何修改文件权限

如修改 /etc/hosts 文件

  • 查看修改前 /etc/hosts,如图所示只有所有者有权限操作 /etc/hosts 文件
代码语言:javascript复制
ls -la /etc/hosts
  • 这时我们想让其他人有权限操作 /etc/hosts,执行以下命令
代码语言:javascript复制
sudo chmod 707 /etc/hosts
  • 可以发现权限变成了 rwx---rwx,其他人也有权限操作 /etc/hosts

操作文件夹

需要加入 -R 参数

代码语言:javascript复制
sudo chmod -R 707 [所要操作的文件夹名称]

使用字母修改文件权限

首先权限的 3 种用户身份所有者、所属组和其他人分别用字母代表 ugo ,其次 a 代表所有身份。

修改示例

表示 所有者(u)的权限为 rwx

代码语言:javascript复制
sudo chmod u=rwx /etc/hosts

表示 所有者(u)的权限增加 r

代码语言:javascript复制
sudo chmod u r /etc/hosts

表示 所有者(u)的权限增加 rx

代码语言:javascript复制
sudo chmod u rx /etc/hosts

表示 所有者(u)的权限取消 x

代码语言:javascript复制
sudo chmod u-x /etc/hosts

多个命令一起操作用 进行分割

代码语言:javascript复制
sudo chmod u-x,o rw /etc/hosts

0 人点赞