(简单了解 Linux chmod 命令的使用)

# 说明

chmod 主要用来对文件或者文件夹重新授权

# 语法

chmod [reference][operator][mode] file...

# reference(角色)

ReferenceClassDescription
uowner文件所有者,通常为该文件创建人。<br>(eg: chmod u=rwx filename)
ggroup文件组,改组所有成员共享当前设置的权限。<br>(eg: chmod g=rx filename)
oothers既不是文件所有者,也不是文件组成员,通常指剩余用户。<br>(eg: chmod o=wx filename)
aall包含以上所有角色成员,也可以写成 ugo。<br>(eg: chmod a=rwx filename 或者 chmod ugo=rwx filename)

# operator(操作)

OperatorDescription
+为当前角色添加相应操作权限
-为当前角色移除相应操作权限
=直接赋权

注意:中间不要加空格.

# modes(想要赋予的权限)

ModeClassDescription
rread读权限
wwrite写、删权限(对于文件夹则可以在其中创建 file)
xexecute可执行权限,比如赋予 shell 脚本可执行权限

# 使用 ls -l 查看文件(夹)相应权限

- rw- rw- r--  mik  mik    assgn1_client.c
- rw- rw- r--  mik  mik    assgn1_server.c
d rwx rwx r-x  mik  mik    EXAM
- rw- rw- r--  mik  mik    raw.c
- rwx r-x r-x  mik  mik    header.sh
... so on...
  • 第一列,d 代表 directory,即文件夹目录,- 代表当前是一个文件
  • 第二列代表该文件 owner 所拥有的权限,比如第一行第二列的 rw - 代表 mik 对文件 assgn1_client.c 有读(r)和写(w)的权限,但是没有可执行权限 x
  • 第三列代表 group 所拥有的权限,比如第一行第三列为 rw-,代表在 mik group 的其他人可以读写 assgn1_client.c,但不能执行该文件
  • 第四列代表 others 可以操作的权限

# 数字 755,777 的含义

每个文件和文件夹都包含控制权限,可以用数字来表示这种权限。最基本的就是 “000”,即没有授予任何权限。

ModeClassNumber
rread4
wwrite2
xExecute1

计算如下:
rx = 4+1 = 5
rwx = 4+2+1 = 7

0 – no permission
1 – execute
2 – write
3 – write and execute
4 – read
5 – read and execute
6 – read and write
7 – read, write, and execute

以 777 为例,
第一个 7 代表 owner 的权限,即 read, write, and execute
第二个 7 代表 group 的权限,也是 read, write, and execute
第三个 7 代表 others 的权限,也是 read, write, and execute

# 参考

https://www.geeksforgeeks.org/chmod-command-linux/
http://theoryreport.com/technology/linux/understanding-file-permissions-what-does-chmod-777-means.html

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

Jalen Chu 微信支付

微信支付

Jalen Chu 支付宝

支付宝

Jalen Chu 公众号

公众号