文章封面: last bride by: YOAFERIA
chmod
是一个修改文件或文件夹权限的命令。它将为所有用户(文件所有者、同组用户和其他用户)添加读写和执行的权限。
文件权限示例
1 | - rwx rwx rwx # 原始权限 |
每一位权限字符都有特定的含义:
r
表示读权限w
表示写权限x
表示执行权限-
表示没有对应权限
所以,如果一个文件权限是 rw-r–r–,表示文件所有者具有读写权限,同组用户和其他用户只有读权限。
下面是一些常见的文件权限示例及其对应的字符表示:
rwxr-xr-x
: 755rw-rw-r--
: 664rwx------
: 700rw-r--r--
: 644rwxrwxrwx
: 777
chmod 命令的语法
1 | chmod [权限] 文件名/目录名 |
其中,[权限]
表示你想要为文件或目录设置的新权限,可以使用数字模式或符号模式来表示权限。具体用法如下:
数字模式
1 | chmod [0-7][0-7][0-7] 文件名/目录名 |
权限 | 数字 |
---|---|
--- |
0 |
--x |
1 |
-w- |
2 |
-wx |
3 |
r-- |
4 |
r-x |
5 |
rw- |
6 |
rwx |
7 |
每个数字代表一组权限,三个数字分别对应文件所有者、同组用户和其他用户的权限。每个数字都由三个二进制位组成,每个二进制位表示一个权限(读、写、执行)。
例如,数字”755”表示文件所有者具有读、写、执行权限,同组用户和其他用户具有读、执行权限。数字”644”表示文件所有者具有读、写权限,同组用户和其他用户只有读权限。
符号模式
1 | chmod [ugoa][+-=][rwx] 文件名/目录名 |
u
表示文件所有者,g
表示同组用户,o
表示其他用户,a
表示所有用户(等价于 ugo
的组合)。+
表示添加权限,-
表示移除权限,=
表示设置与指定权限相同的权限。r
表示读取权限,w
表示写入权限,x
表示执行权限。
例如,命令 chmod u+x filename
会为文件所有者添加执行权限,命令 chmod a-wx filename
则会移除所有用户的写入和执行权限。
更加详细请查看:第 5 章 用户身份与文件权限 或 linux 的特殊权限