对Linux文件权限的理解

755,775,777,ugoa 等分别代表什么含义?这些数字是如何得到的?

1.常用的linux文件权限:

444 -r--r--r--
600 -rw-------
644 -rw-r--r--
666 -rw-rw-rw-
700 -rwx------
744 -rwxr--r--
755 -rwxr-xr-x
777 -rwxrwxrwx

注:使用ll命令查看文件/文件夹属性时候,一共有10列,第一个小格表示是文件夹或者连接等等
d表示文件夹,l表示连接文件,-表示文件

2.用户分组权限概念

从左至右:

  • 1-3位数字代表文件所有者的权限
  • 4-6位数字代表同组用户的权限
  • 7-9数字代表其他用户的权限

3.数字概念解析

  • 读(r)=4
  • 写(w)=2
  • 执行(x)=1
  • 读+写+执行=4+2+1=7
通过4、2、1的组合,得到以下几种权限:
    0(没有权限)
    4(读取权限)
    5(4+1 | 读取+执行)
    6(4+2 | 读取+写入)
    7(4+2+1 | 读取+写入+执行)

4.rwx字符的概念

以755为例

  • 1-3位7等于4+2+1,rwx,所有者具有读取、写入、执行权限
  • 4-6位5等于4+1+0,r-x,同组用户具有读取、执行权限但没有写入权限
  • 7-9位5,同上,也是r-x,其他用户具有读取、执行权限但没有写入权限

5.对ugoa的理解

ugoa简写的含义:

简称 含义
u user(文件的所有者)
g group(与文件相关联的组)
o other(所有其他用户)
a all(ugo的所有用户)

操作运算符:

operator 含义
  • | 为指定的用户类型添加权限
  • | 为指定的用户类型删除权限
    = | 设定或重置指定用户类型的权限

设计ugoa的含义:

  • 我之前有个疑问以数字的形式去修改文件权限,为什么还需要有ugoa这种形式去修改权限呢?
    原因可能是:虽然有了数字形式修改权限,但是修改起来可能不是很方便,使用ugoa的形式可以快速的去更改一个文件的权限,例如我需要去掉group和other用户的执行权限:chmod go-x hello.sh 或者给所有用户添加读写执行权限: chmod a+rwx hello.sh 等等
posted @   0xcafedaddy  阅读(16940)  评论(0编辑  收藏  举报
编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥
点击右上角即可分享
微信分享提示