Linux操作系统中的权限模型详解
1、Linux操作系统基于UGO的基础权限体系:
用户身份划分:(文件和目录可以属于文件(u),组(g)或其他(o)的所有者)
- U(user/owner-所属者):文件或文件夹的所属用户的权限。
- G(group-所属组):文件或文件夹的所属组队权限。
- O(others-其他人):其他用户对文件夹或文件的权限。
用户权限划分:(Linux操作系统中存在3种类型的文件权限:读(r),写(w)和执行(x)权限。这些权限确定哪些用户可以读取,写入或执行文件)
- r:对文件和文件夹读权限,用数字表示是4(2^2)
- w:对文件和文件夹写权限,用数字表示是2(2^1)
- x:对文件的执行权限,和对文件的浏览权限,用数字表示是1(2^0)
2、在Linux操作系统中,一般使用 ls -l 命令查看的文件权限如下:
从左往右解释:
- -:文件类型;-表示文件,d表示文件夹,符号l表示符号链接。
- rwx:即U(user)类型的权限,表示文件的所属用户对文件具有 读 写 执行 权限,可以用7表示(4+2+1)。
- rwx:即G(group)类型的权限,表示文件的所属组对文件具有 读 写 执行 权限,可以用7表示(4+2+1)。
- rwx:即O(other)类型的权限,表示其他用户对文件具有 读 写 执行 权限,可以用7表示(4+2+1)。
- root:即文件的所属用户是root。
- root:即文件的所属组是root组。
3、文件默认权限是 644 = -rw-r--r-- ;目录默认权限是 755 = drwxr-xr-x。
4、命令相关
chgrp:修改文件或文件夹的所属组。
chown:修改文件或文件夹的所属用户。
chmod:修UGO权限。
5、举例:
chmod u+w 表示为所属用户添加写权限
chmod g+w 表示为所属组添加写权限
chmod o+x 表示为其他用户添加执行权限
chmod 750 表示为所属用户添加读写执行(7),为所属用户添加读执行(5),其他用户没有任何权限(0)
6、Linux操作系统中的权限拓展
①suid:只对文件有效,表示文件在执行的时候以文件的所属用户的权限执行,比如/usr/bin/passwd,在终端上文件会显示红色,并且U权限中的x会被替换成s。
例如:chmod u+s:将文件设置suid
②sgid:通常对文件夹有效,表示在文件夹中建立文件或文件夹的时候继承该文件夹的组用户。G权限中的x会被替换成s。
例如:chmod g+s:将文件夹设置sgid
③sticky:作用于文件夹,表示在该文件夹下的文件只能由文件的owner删除,其他人可以在文件夹下创建、浏览、但也只能删除自己为owner的文件。O权限中的x会被替换成t。
例如:chmod o+t:将文件夹设置sticky
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
2021-11-09 python中的collections模块
2021-11-09 跨域详解
2021-11-09 python标准库之glob模块:查找符合特定规则的文件路径名