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

知网AIGC检测怎么过?2026最新降AI率全流程攻略

知网AIGC检测怎么过?2026最新降AI率全流程攻略

知网AIGC检测怎么过?2026最新降AI率全流程攻略 今年答辩季最让人头疼的事,不是论文写不出来,而是写出来过不了AIGC检测。 尤其是知网。 2026年知网的AIGC检测系统又升级了,身边好几个同学的论文,之前在其他平台检测AI率只有10%出头,结果到知网一测直接飙到40%以上。搞得整个宿舍楼都弥漫着一股焦虑的气息。 我自己也经历了这个过程,最后顺利过了检测。今天把整个流程整理出来,从理解检测原理到实际操作步骤,争取让你看完就知道该怎么做。 先搞懂:知网AIGC检测到底在查什么 很多人一听"AI检测"就慌,但其实搞明白它的检测逻辑之后,你会发现它并没有那么神秘。 知网的AIGC检测大致是从这几个维度来判断的: 语言模型的困惑度。 简单说就是,一段文字如果太"通顺"了,AI检测系统反而会觉得可疑。因为AI生成的文字有一个特点——它总是选择概率最高的下一个词。这就导致AI写的内容在语言模型看来"毫不意外",困惑度很低。而人写的东西偶尔会蹦出一些意想不到的表达,困惑度相对高一些。 文本的统计特征。 包括词汇丰富度、句子长度分布、段落结构等。AI生成的文字在这些统计指标

谈谈你对 AI Code Assistant(如 GitHub Copilot)的看法,它如何改变开发者的工作流?

AI Code Assistant深度剖析:从GitHub Copilot看开发者工作流的革命性变革 摘要/引言 开门见山:当AI成为你的编程搭档 想象一个场景:你正专注于解决一个复杂的业务逻辑问题,手指悬停在键盘上,准备编写一个数据处理函数。突然,IDE中弹出几行灰色的代码建议——正是你脑海中即将实现的逻辑,甚至连你没考虑到的边界条件处理都已包含在内。你轻轻按下Tab键,代码瞬间补全,仿佛有一位无形的搭档在你耳边低语:“这样实现如何?”。这不是科幻电影中的场景,而是 millions of 开发者正在经历的日常——AI Code Assistant(人工智能代码助手)已从概念走向现实,深刻重塑着软件开发的 landscape。 作为一名拥有10年+开发经验的工程师,我亲历了从"查手册编程"到"Stack Overflow复制粘贴"再到"AI协同编码"的三次范式转变。2021年GitHub

一文看懂: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画出赛博朋克雨夜街道——所有操作一步接一步,复制粘贴就能