Unix文件权限

Linux 文件权限

先来看代码

1
2
3
4
5
6
7
8
9
% ls -l
total 8064 ## 表示目录中的总块数
-rwxr-xr-x@ 1 lingxiao staff 4115408 Aug 19 15:40 OSToDiags
-rw-r--r--@ 1 lingxiao staff 3384 Aug 19 14:44 OSToDiags.py
-rw-r--r-- 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
drwxr-xr-x 3 lingxiao staff 96 Aug 19 15:40 build
drwxr-xr-x 3 lingxiao staff 96 Aug 22 08:54 dist
-rw-r--r--@ 1 lingxiao staff 2796 Aug 20 08:58 serialTool.py
% ls -lF

第一行显示了在目录中包含的总块数

第一个字符

  • -代表文件
  • d代表目录
  • l代表链接
  • 其他略…

Symbolic Mode (符号模式)

改变文件权限,我们以上述 OSToDiags.spec 为例,看到User有读写权限,没有执行权限,Group和Others只读

1
2
3
4
% chmod u+x OSToDiags.spec
% ls -l
-rwxr--r-- 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
%

观察上面,可以看到 u增加了x的权限

  • u表示登录的用户
  • g表示组
  • o表示其他用户

如果给所有用户都添加某一权限用a表示

1
2
3
4
% chmod a+x OSToDiags.spec
% ls -l OSToDiags.spec
-rwxr-xr-x 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
%

更改文件的权限 语法 是
chmod 用户[运算符]权限 文件

运算符有三种,权限也可以写在一起

![image-20240823104429140](/Users/lingxiao/Library/Application Support/typora-user-images/image-20240823104429140.png)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
% ls -l OSToDiags.spec
-rwxr-xr-x 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
% chmod o+xw OSToDiags.spec
% ls -l OSToDiags.spec
-rwxr-xrwx 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
% chmod u-x OSToDiags.spec
% ls -l OSToDiags.spec
-rw-r-xrwx 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
% chmod o=rx OSToDiags.spec
% ls -l OSToDiags.spec
-rw-r-xr-x 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
% chmod a=r OSToDiags.spec
% ls -l OSToDiags.spec
-r--r--r-- 1 lingxiao staff 718 Aug 19 15:40 OSToDiags.spec
%

Absolute Permissions(绝对权限)

1
2
3
4
5
6
7
8
9
10
11
12
 % ls -l DiagsToOS.spec
-rw-r--r-- 1 lingxiao staff 718 Aug 19 08:12 DiagsToOS.spec
% chmod 755 DiagsToOS.spec
% ls -l DiagsToOS.spec
-rwxr-xr-x 1 lingxiao staff 718 Aug 19 08:12 DiagsToOS.spec
% chmod 743 DiagsToOS.spec
% ls -l DiagsToOS.spec
-rwxr---wx 1 lingxiao staff 718 Aug 19 08:12 DiagsToOS.spec
% chmod 043 DiagsToOS.spec
% ls -l DiagsToOS.spec
----r---wx 1 lingxiao staff 718 Aug 19 08:12 DiagsToOS.spec
%

每一个数字表示相对应的权限

每一个数字的的位置代表对应的位置的用户


Unix文件权限
https://jackiedai.github.io/2024/09/04/007unix_shell/002-Unix文件权限/
Author
lingXiao
Posted on
September 4, 2024
Licensed under