Chmod 命令
大约 2 分钟
Chmod 命令
chmod 命令格式
chmod [options] mode file
这里的 mode 指的是权限模式,可以使用不同的方式指定权限。常见有三种方式:符号模式、数字模式。
符号模式
符号模式使用特殊符号来标识授权对象和权限。
授权对象:
- u 所有者
- g 所属组
- o 其它用户
权限:
r 可读
w 可写
x 可执行
演示
chmod u+x # 给所有者添加可执行权限
chmod u-w # 删除所有者的可写权限
chmod o=rwx # 给其它用户设置可读、可写、可执行权限
+
表示添加权限-
表示取消权限=
表示直接授权,会覆盖之前已有的权限
数字模式
授权对象分为 u(所有者)、g(所属组)、 o(其它用户),每一个授权对象的权限又分为 r(可读)、w(可写)、x(可执行)。
在系统中每一种权限使用 0 和 1 表示,一个授权组的权限用一个三位二进制就可以表示出来,如下
u 101 # 所有者有可读和可执行权限
g 110 # 所属组有可读和可写权限
o 111 # 其它用户有可读、可写、可执行权限
为了在授权时便捷,可以将这些三位二进制转换成一个十进制数表示,这个十进制数就可以表示一个权限组合。例如通常使用 chmod 777 file
表示给所有授权对象都授予可写、可读、可执行权限。可解读为:
u 111
g 111
0 111
数字模式授权极其方便快捷,但是需要清楚的知道每个十进制数代表的是那几个权限组合。
二进制 | 十进制 | 描述 |
---|---|---|
000 | 0 | 无任何权限 |
001 | 1 | 可执行 |
010 | 2 | 可写 |
011 | 3 | 可写、可执行 |
100 | 4 | 可读 |
101 | 5 | 可读、可执行 |
110 | 6 | 可写、可读 |
111 | 7 | 可读、可写、可执行 |
从表中的十进制数可以看到 1 表示可执行、2 表示可写、4 表示可读,其它十进制数都可以用这三个数相加得到,所以只需要熟记这三个特殊的权限表示,其它组合权限全都可以由这三个相加得到。