Linux权限详解:从入门到掌握

Linux权限详解:从入门到掌握
在这里插入图片描述

Linux权限详解:从入门到掌握

在Linux系统中,权限管理是一个核心概念。如果你是初学者,可能会觉得它有些抽象,但只要理解了设计思想,你会发现它既严谨又优雅。本文将带你深入理解Linux权限体系,让你轻松管理文件和目录的访问控制。

一、Linux中的两类用户

Linux系统将用户分为两种:

用户类型提示符权限范围
超级用户(root)#可以在系统中做任何事情,不受限制
普通用户$只能做有限的操作,无法影响系统核心

切换用户命令:su

bash

# 从普通用户切换到root(需要输入root密码) su root # 从root切换到普通用户 su username 
💡 小贴士:日常操作建议使用普通用户,只有在需要系统级配置时才切换到root,这样更安全。

二、文件访问者的三类身份

Linux将访问文件的用户划分为三个角色:

角色代号说明
所有者(User)u创建文件的用户,拥有最高控制权
所属组(Group)g与所有者同组的用户,用于团队协作
其他人(Others)o既不是所有者也不在所属组中的用户

这种设计非常巧妙:既保证了文件主人的控制权,又允许灵活的团队共享。


三、文件类型与基本权限

3.1 文件类型(第一个字符)

执行 ls -l 时,第一个字符表示文件类型:

字符含义示例
-普通文件文本、可执行程序
d目录文件夹
l软链接类似Windows快捷方式
b块设备硬盘、光驱
c字符设备屏幕、串口
p管道文件进程间通信
s套接字文件网络通信

3.2 三种基本权限(后面9个字符)

权限对文件的意义对目录的意义数值
读(r)可读取文件内容可浏览目录中的文件列表4
写(w)可修改文件内容可在目录中创建/删除文件2
执行(x)可执行该文件(如脚本)可cd进入该目录1
⚠️ 重点:目录的x权限决定能否cd进入,即使你有r权限,没有x也无法进入目录!

四、权限的两种表示方法

4.1 字符表示法

rwxr-xr-- 这样的格式,每三个一组:所有者/所属组/其他人。

4.2 八进制数值表示法

权限组合数值
---0
--x1
-w-2
-wx3
r--4
r-x5
rw-6
rwx7

例如:rwxr-xr-- = 7(所有者) + 5(所属组) + 4(其他人) = 754


五、修改权限的命令

5.1 chmod — 修改权限

字符方式:

bash

# 给所有者增加执行权限 chmod u+x file.txt # 取消所属组的写权限 chmod g-w file.txt # 设置其他人的权限为只读 chmod o=r file.txt # 给所有角色添加读权限 chmod a+r file.txt 

数值方式(推荐):

bash

# 设置权限为 rw-r--r-- chmod 644 file.txt # 设置权限为 rwxr-x--- chmod 750 script.sh # 递归修改目录下所有文件 chmod -R 755 myfolder/ 

5.2 chown — 修改所有者

bash

# 修改文件所有者 chown alice file.txt # 同时修改所有者和所属组 chown alice:developers file.txt # 递归修改目录 chown -R alice myfolder/ 

5.3 chgrp — 修改所属组

bash

# 修改文件所属组 chgrp developers file.txt # 递归修改 chgrp -R developers myfolder/ 

六、umask — 默认权限掩码

当你创建一个文件或目录时,系统会赋予一个默认权限:

  • 普通文件默认:666(rw-rw-rw-)
  • 目录默认:777(rwxrwxrwx)

但实际创建出来的权限会受umask影响。最终权限 = 默认权限 & (~umask)

bash

# 查看当前umask umask # 输出:0022 (普通用户通常是0002) # 设置新的umask umask 027 

计算示例(umask=0022):

  • 新建文件:666 & (~022) = 666 & 755 = 644(rw-r–r–)
  • 新建目录:777 & (~022) = 777 & 755 = 755(rwxr-xr-x)
💡 root用户的默认umask通常是0022,普通用户是0002。

七、目录权限的特殊注意事项

目录权限的行为与文件略有不同,这里有一个常见误区:

权限组合能否cd进入能否ls列出内容能否创建/删除文件
r-- (4)❌ 不能❌ 不能❌ 不能
r-x (5)✅ 能✅ 能❌ 不能
rwx (7)✅ 能✅ 能✅ 能

关键结论

  • 进入目录需要x权限
  • 列出目录内容需要r权限
  • 创建/删除文件需要w权限

八、粘滞位(Sticky Bit)— 解决“删别人文件”的问题

问题场景

如果某个目录对所有人开放了w权限(如/tmp),那么任何用户都可以删除目录中的任何文件,哪怕文件不属于自己。这显然不合理!

解决方案

粘滞位(Sticky Bit)正是为了解决这个问题。设置粘滞位后,目录中的文件只能由以下角色删除

  1. 超级管理员(root)
  2. 目录的所有者
  3. 文件的所有者

设置方法

bash

# 给目录添加粘滞位 chmod +t /shared # 查看效果(权限末尾出现t) ls -ld /shared # 输出:drwxrwxrwt. 2 root root 4096 ... 
📌 /tmp 目录就是一个经典的粘滞位例子,任何用户都可以在里面创建临时文件,但只能删除自己的。

九、总结速查表

命令作用示例
chmod 755 file设置权限所有者全权,组和其他人读+执行
chmod u+x file给所有者加执行常用在脚本上
chown user:group file修改所有者和组转移文件归属
chgrp group file修改所属组让团队共享
umask 027设置默认掩码新文件默认640
chmod +t dir设置粘滞位保护共享目录

最后的话

Linux权限体系的设计思想可以概括为:最小权限原则 — 每个用户和进程只拥有完成工作所必需的最小权限。理解并善用这套机制,是保障系统安全的基础。

希望这篇文章能帮你建立起对Linux权限的清晰认识。如果有任何疑问,欢迎在评论区留言讨论!

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

Read more

一文看懂:AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code

一文看懂:AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code

AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code 引言 在人工智能技术蓬勃发展的今天,AI编程工具已成为开发者提高效率的重要助手。从早期的代码补全插件到如今能够理解整个代码库的智能助手,AI编程工具正在不断进化。本文将对当前主流的AI编程工具——Cursor、GitHub Copilot、Trae和Claude Code进行全面对比,帮助开发者选择最适合自己的工具。 主流AI编程工具概述 Cursor Cursor是一款基于VSCode的AI驱动代码编辑器,它最大的特点是能够理解整个代码库的上下文,提供智能的代码补全和重构建议。Cursor默认使用Claude-3.5-Sonnet模型,即使是OpenAI投资的公司,也选择了Claude模型作为默认选项,这足以说明其在代码生成领域的优势。 GitHub Copilot GitHub Copilot是由GitHub与OpenAI合作开发的AI编码助手,集成在VSCode、Visual Studio等主流编辑器中。它基于OpenAI的模型,能够根据注释和上下文自动生成代码,是AI编程工具

5分钟部署麦橘超然Flux,低显存设备也能玩转AI绘画

5分钟部署麦橘超然Flux,低显存设备也能玩转AI绘画 1. 为什么你值得花5分钟试试这个Flux控制台 你是不是也遇到过这些情况: * 想试试最新的Flux模型,但显卡只有8GB甚至6GB,一加载就报“CUDA out of memory”; * 下载完模型还要手动配置路径、改代码、调参数,折腾两小时还没看到一张图; * 网页版用着方便,但担心隐私泄露、生成被限速、图片被缓存; 别再纠结了——麦橘超然 - Flux 离线图像生成控制台,就是为这类真实场景而生的。它不是又一个需要编译、调参、查文档的实验项目,而是一个开箱即用的本地Web服务:模型已打包进镜像,float8量化技术让DiT主干网络显存占用直降近一半,Gradio界面简洁到连提示词输入框都标好了占位符,连SSH隧道怎么转发都给你写好了命令。 更重要的是,它真的能在你的旧笔记本、远程小内存服务器、甚至实验室里那台只配了RTX 3060的工位机上跑起来。本文不讲原理推导,不堆术语,就带你从零开始,5分钟内完成部署、打开浏览器、输入第一句描述、亲眼看到AI画出赛博朋克雨夜街道——所有操作一步接一步,复制粘贴就能

2026年用豆包降维普AIGC查重率的正确姿势(附完整指令)

2026年用豆包降维普AIGC查重率的正确姿势(附完整指令)

我用豆包改了3天论文,AIGC率从61%只降到了43% 考虑用豆包降维普AIGC的同学,先听我说完这个教训。 上个月我的论文维普AIGC检测结果61.4%,学校要求20%以下。我第一反应就是用豆包来改写,毕竟免费嘛。于是我把论文分成十几段,一段一段喂给豆包,让它“用更自然的方式重新表述”。改了整整3天,信心满满再测一次:43.2%。降了18个百分点,离达标还差23个百分点。 后来我才搞明白,不是豆包不行,是我的用法有问题。直接让AI改AI写的内容,改出来的还是AI风格。就好比让一个说普通话的人模仿方言,怎么模仿都带着普通话味儿。 这篇文章就把我后来摸索出来的正确用法整理出来。附上完整的指令模板,直接复制就能用。 为什么直接让豆包改写效果差 先搞清楚问题出在哪。豆包本身也是一个大语言模型,它生成的文本天然就带有AI的统计特征。你让它“重新表述”一段话,它输出的内容在词汇选择、句式结构、过渡方式上跟原文风格高度一致。维普检测引擎看的就是这些统计特征,所以改来改去AIGC率降不下去。 我做过一个对比实验。同一段500字的AI生成文本,分别用三种方式处理: 第一种,直接让豆包

宇树VR遥操与IL——从遥操程序xr_teleoperate到unitree_IL_lerobot:如何基于G1进行manipulation开发

宇树VR遥操与IL——从遥操程序xr_teleoperate到unitree_IL_lerobot:如何基于G1进行manipulation开发

前言 如之前的文章所述,我司「七月在线」正在并行开发多个订单,目前正在全力做好每一个订单,因为保密协议的原因,暂时没法拿出太多细节出来分享 但可以持续解读我们所创新改造或二次开发的对象,即解读paper和开源库「当然 有些paper/库还没开始用,但也可以提前解读,作为关注了解」 而对于我司人形开发的订单,截止到25年4月,背后的机器人多半基于这几家:宇树、智元、傅利叶、乐聚「之所以用的这几家,一半因为我和这些公司熟,一半因为客户已有其中某一家或某几家的本体 需在其基础上做定制开发,如其它厂商看到 有兴趣合作,欢迎私我,比如星动纪元、星海图、众擎等等」 * 通过此文《Fourier-Lerobot——把斯坦福人形动作策略iDP3封装进了Lerobot(含我司七月的idp3落地实践)》可知,傅利叶 把idp3 装进了lerobot * 类似的,宇树 通过此开源库「unitree_IL_lerobot」,也把lerobot 集成了下 该库包含了π0策略 且无论咱们是用傅利叶集成的lerobot—