认识linux权限

时间:2021-04-11 06:59:21

首先,我们来了解下linux系统的用户和用户组

场景:公司里有两个项目组:小组A和小组B;A、B、C是小组A的成员,甲、乙是小组B的成员。为了保密起见,小组内的进度、文档、程序都有小组内公开。比如小组A中,小组内的成员可以相互查看彼此的文件,但是小组内成 员都有自己的抽屉,里面有自己的隐私文件,不允许是看不了的(抽屉锁着)。小组B里的人相对于小组A来说是其他人。如果没进过小组成员的同意,是看不到 A、B或C的资料的。这里边有个执掌大权的boss,他拥有无所不能的权利(包括查看用户的抽屉)。

认识linux权限

这就是linux系统的用户的用户组的写照,多用户、多进程的安全机制。

用户:A、B、C、甲、乙都是用户,就是主体。

用户组:由一个或多个用户组成。

其他人:小组B内的成员甲、乙,相对于小组A的成员是其他人;反之亦然。

文件和文件夹的权限属性

在linux系统下,我们可以通过命令"ls -al"来查看当前目录下的文件及文件夹的属性

1         2       3      4        5           6                7

drwxrwxr-x  2    locke  locke   4096   4月 17 14:59   dir1
-rw-rw-r--    1    locke  locke     0      4月 17 15:02   doc1
    权限     连接  拥有者  用户组  大小     最近修改时间    名称

重点了解下权限1(其他项看字面意思即可):

r:可读,w:可写,x:可执行

认识linux权限

文件类型:-表示文件,d表示目录,l表示连接文件,b表示块设备文件(硬盘),c表示字符设备文件(键盘)

更改文件属性:

  • 更改文件所属用户组:chgrp

用法:chgrp [选项]... 用户组 文件...
    或:chgrp [选项]... --reference=参考文件 文件...
(-R, --recursive        operate on files and directories recursively:针对目录,递归的把目录下的文件、目录全部改变为目标权限。)

  • 更改文件所属拥有者:chown

用法:chown [选项]... [所有者][:[组]] 文件...
 或:chown [选项]... --reference=参考文件 文件...

(注:-R同上)

  • 更改文件属性

用法:chmod [选项]... 模式[,模式]... 文件...
 或:chmod [选项]... 八进制模式 文件...
 或:chmod [选项]... --reference=参考文件 文件...

此时,权限也可以用数字表示:

r:4

w:2

x:1

(注:-R同上)

rwx可读可写可执行对于文件来说没有什么疑义,但是针对目录来说却大有不同。

目录属性的意义:

r——(read the contens of the directory)表示可以读取目录清单的权限

w——(modify the contens of the directory)表示可以改变目录清单的权限,包括:

  • 建立新的文件&目录
  • 删除已存在的文件&目录
  • 将已存在的文件&目录改名
  • 移动目录内文件&目录的位置

x——(access the directory)表示可以进入该目录的权限,如果没有此权限,即使有可读可写的权限也是徒然,因为连进都进不去,更和谈读与写。