跳至主要內容

Linux文件权限管理基础

酷丁大约 2 分钟

权限:

r: 读取 允许查看文件内容,显示目录列表
w: 写入 允许修改文件内容,允许在目录新建、删除、移动文件或者子目录
x: 可执行 允许运行程序和切换目录
-: 无权限
d: 表示是一个目录,在ext文件系统中目录也是一种特殊文件
l: 表示文件是一个符号链接文件,实际指向到了另外一个文件
b\c: 表示该文件为区块设备或其他外围设备,是特殊的类型文件。
s\p: 这些文件关系到系统的数据结构和管道,通常很少见到

2\3\4 表示文件所有者的权限,也简称为u权限
5\6\7 表示文件的所属组的成员权限,例如,文件属于"user"组群,该组群中有六个成员,表示这六个成员都有此处指定的权限,称为g权限
8\9\10 表示该文件除了所有者组群之外的权限,称为o权限

举例:

brwxr--r--: 该文件为设备块文件,文件所有者有读写和执行的权限,其他用户则有读取的权限。
-rw-rw-r-x: 该文件为普通文件,文件所有者和同组用户对文件具有读写权限,而其他的用户仅具有读取和执行的权限。
drwx-x-x: 该文件是目录文件,目录所有者具有读、写与进入目录的权限,其他用户能进入该目录,却无法读取任何数据。
lrwxrwxrwx: 该文件为符号链接文件,文件的所有者,同组用户和其他用户对该文件都具有读、写和执行的权限。

权限修改

chmod ugoa[rwx] 文件/目录
如:

[root@localhost ~]# chmod g+w,o+w /root/a.txt 

chmod nnn 文件/目录
如:

[root@localhost ~]# chmod 644 /root/a.txt

归属修改

属主: 拥有该文件或目录的用户账号
属组: 拥有该文件或目录的组账号

chown 属主 文件/目录
chown :属组 文件/目录
chown 属主:属组 文件/目录

umask

如果在创建文件或目录时,没有指定权限,那么系统会根据umask的值来确定权限。

[root@localhost ~]# umask
0022

也可以通过umask -S来查看

[root@localhost ~]# umask -S
u=rwx,g=rx,o=rx

umask命令也可以用来修改文件的默认权限,但是只能修改当前会话的默认权限,重启后会失效。

[root@localhost ~]# umask 0000
[root@localhost ~]# umask 002
[root@localhost ~]# umask 022

参考

部分笔记参考: 一文带你彻底搞懂Linux文件权限管理open in new window