如何使用 Chmod 更改 Linux 上的文件和文件夹权限?
gudong366 2025-06-23 18:01 11 浏览
在 Linux 的世界里,权限就是秩序的基础。一个系统的安全性、文件访问策略、用户协作边界,无一不依赖于文件和目录权限的精细控制。而 chmod(Change Mode)命令,正是你手中调整权限的利剑。
这篇文章将从最基础的权限概念讲起,深入剖析 chmod 的使用方式,包括数字表示法、符号表示法、权限继承、批量修改、常见问题,以及实际运维案例,力求让你对权限操作了然于心、运用自如。
一、Linux 权限基础:三种角色 + 三类权限
每个文件和目录在 Linux 中都绑定有以下三种用户角色:
- owner:文件所有者,通常是创建文件的用户。
- group:所属用户组。
- others:系统中其他用户。
每种角色又对应三类基本权限:
权限 | 符号 | 含义 |
读取 | r | 查看文件内容,列出目录内容 |
写入 | w | 修改文件内容,创建/删除目录内文件 |
执行 | x | 执行文件(如脚本),进入目录 |
可以通过 ls -l 查看:
$ ls -l example.sh
-rwxr-xr-- 1 user group 1234 May 29 10:00 example.sh
第一列解释如下:
- rwx r-x r-- │ │ │ └── 其他人权限(others):读取│ │ └───── 用户组权限(group):读取 + 执行│ └──────── 文件所有者权限(owner):读取 + 写入 + 执行└────────── 文件类型(- 为普通文件,d 为目录)
二、数字 VS 符号:chmod 的两种用法
1. 数字表示法(最常用)
每个权限对应一个值:
- r = 4
- w = 2
- x = 1
组合后求和:
权限组合 | 数字表示 |
rwx | 7 |
rw- | 6 |
r-x | 5 |
r-- | 4 |
--- | 0 |
使用示例:
chmod 755 script.sh
解释:
- 7 → 所有者 rwx
- 5 → 用户组 r-x
- 5 → 其他人 r-x
目录建议权限:
- 普通文件:644(rw-r--r--)
- 可执行文件:755(rwxr-xr-x)
- 目录:755 或 700(rwxr-xr-x / rwx------)
2. 符号表示法(更灵活)
语法格式:
chmod [角色][操作][权限] 文件名
- 角色:u(用户)、g(组)、o(其他人)、a(全部)
- 操作:+(添加)、-(删除)、=(赋值)
- 权限:r、w、x
示例:
chmod u+x hello.sh # 给所有者添加执行权限
chmod go-w data.txt # 去掉组和其他人的写权限
chmod a=r file.log # 所有角色仅有读权限
三、应用场景实战
1. 只允许所有者访问的私密文件夹
mkdir secrets
chmod 700 secrets
此时其他用户无法 cd 进入该目录。
2. 给脚本文件添加执行权限
chmod +x deploy.sh
相当于 chmod ugo+x deploy.sh,适用于快速授权。
3. 去掉敏感配置的组写权限
chmod g-w /etc/ssh/sshd_config
避免配置文件被意外修改。
4. 批量修改多个文件权限
chmod 644 *.conf
chmod +x *.sh
配合 find 更强大:
find . -type f -name "*.sh" -exec chmod +x {} \;
四、特殊权限:s、t 和 SGID
除了基本权限外,还有三种特殊模式:
权限位 | 名称 | 作用与应用 |
s(Setuid) | 让执行程序以文件所有者身份运行 | 应用于如 passwd 命令 |
s(Setgid) | 目录中创建的文件继承该组 | 团队协作常用 |
t(Sticky Bit) | 只允许文件拥有者删除 | 应用于 /tmp |
示例:
chmod u+s /usr/bin/somebinary # 设置 setuid
chmod g+s /data/shared # 设置 setgid
chmod +t /tmp # 设置 sticky bit
配合 ls -l 可以看到特殊位:
drwxrwsr-x 2 dev team 4096 May 29 12:00 /data/shared
五、深入理解目录权限组合的行为
权限 | 作用说明 |
r | 能否列出目录中的文件(如 ls) |
w | 能否在该目录中创建/删除/重命名文件 |
x | 能否 cd 进入该目录、访问其中内容 |
示例说明:
- r-x:能进入目录并列出内容,但无法创建文件。
- --x:只能进入目录,但不知道目录内有什么(除非你知道具体文件名)。
快速对照表
chmod 值 | 含义 | 应用场景 |
777 | 所有人可读写执行 | 开发测试环境(不推荐生产使用) |
755 | 所有者全权限,其它只读执行 | 公共脚本或服务程序 |
700 | 所有者独享 | 私人脚本、文件夹 |
644 | 所有者可读写,其它只读 | 配置文件、文档 |
600 | 所有者只读写,其它无权限 | 私密密钥文件(如 .ssh/id_rsa) |
权限陷阱与排错技巧
1. 有执行权限但运行时报“权限被拒绝”?
可能的原因:
- 缺少“x”权限的目录。
- 文件系统挂载为 noexec。
- 文件属于 root,当前用户无权运行。
2. 目录权限设置正确但文件无法创建?
检查是否有 w 权限和 x 权限:
chmod u+wx /path/to/dir
3. 使用 chmod 无效?
文件可能是符号链接,建议使用 -h 参数:
chmod -h 644 symlink
权限即责任,掌握 chmod 是每个 Linux 用户的必修课
在 Linux 中,每一次权限的修改都意味着一次对资源访问策略的定义。chmod 不仅是文件安全的基础工具,更是运维、开发、安全团队日常工作的关键部分。
掌握 chmod,你就拥有了管理整个系统权限秩序的钥匙。
相关推荐
- U盘文件被删怎么简单恢复(u盘里的文件被误删了怎么找回)
-
现在这个社会不是靠关系靠路子,主要还是靠实力。刘强在机关工作,人长得帅气,工作能力又强。唯独一样不好,脾气太大,动不动就发火,因为小事常和同事发生口角。一次他火大的差点把办公桌给掀翻了,领导见他野蛮的...
- 不小心删除了一些文件?9 个最佳免费硬盘恢复软件
-
恢复您曾经无意或意外删除的所有文件和数据。您是否曾经错误地删除了一个对您的工作至关重要并导致您丢失所有进度的文件?我们为您提供了一些最好的免费硬盘恢复软件,以帮助您恢复意外删除的文件,以解决您的文件删...
- Studio 中文版:数据救援神器,误删 / 分区损坏 / RAID 恢复一键找回
-
Studio中文版:数据救援神器,误删/分区损坏/RAID恢复一键找回当文件意外删除、分区损坏,或RAID阵列崩溃时,一款可靠的数据恢复工具往往能挽回关键损失。R-Studio中文版...
- 你值得拥有的11款Linux数据恢复工具
-
如果你使用的是Linux操作系统,那么你一定想知道一旦硬盘崩溃的话又该如何保存和恢复数据。其实,现在有很多Linux数据恢复工具可以让我们摆脱数据安全的困扰。小编已经为各位准备好了一些最好的Linux...
- 误删文件内容怎么恢复(误删文件内容怎么恢复回来)
-
在日常使用电脑的过程中,误删文件的情况时有发生。无论是由于操作失误还是病毒攻击,误删文件都会给我们带来不小的困扰。幸运的是,随着技术的发展,误删文件恢复已不再是难题。本文将介绍几款国内外知名的误删...
- u盘如何恢复删除的文件?推荐5款u盘数据恢复软件!
-
在日常生活与工作中,U盘作为便捷的数据存储载体,频繁用于传输和保存各类重要文件。然而,误删文件的情况却时有发生,无论是珍贵的照片、重要的工作文档,还是精心制作的视频,一旦删除,都可能带来不小的麻烦。...
- 怎么恢复删除的数据?5种有效的数据恢复方法汇总!
-
在数字化办公与生活的时代,电脑里的每一份数据都承载着重要信息。然而,一个误操作就可能导致数据被删除,无论是尚未保存的重要文档,还是珍藏多年的照片,都可能瞬间“消失”。但其实,数据删除并不意味着永久丢...
- u盘删除文件怎么找回?5个数据恢复工具汇总,助你巧妙恢复数据!
-
在日常使用U盘的过程中,误删文件的情况时有发生,重要的工作文档、珍贵的照片视频一旦消失,难免让人焦急万分。别担心,只要选对数据恢复工具,被删除的数据仍有找回的可能。下面就为你汇总5款实用的数据...
- Linux下恢复误删文件:思路+实践(linux删除如何恢复)
-
周五篮球群里有人问误删文件了怎么恢复,得知是ext4文件系统之后我推荐了ext4magic这个工具,然后又有人提到了xfs的话怎么办,正好前几天看到DaveChinner在邮件列表里提到了这个问题,...
- 苹果放大招!不用虚拟机了,Mac直接跑Linux容器,开发者效率翻倍
-
苹果这次真给开发者送福利了!今天凌晨(6月10日),苹果在官宣的Containerization框架直接炸了技术圈——Mac现在能原生运行Linux容器镜像了!这可不是虚拟机那种“套娃”方案,而是基...
- 7 款老牌经典软件,值得收藏(经典老歌软件)
-
Calibrehttps://calibre-ebook.com/Calibre是一个电脑电子书管理软件。肯定有人说了,电子书还要管理?那当然了。它的功能更强大的让你想象不到,首先它可以导入PDF,...
- 神仙级的免费开源电子书阅读器,还支持听书功能
-
神仙级的免费开源电子书阅读器,还支持听书功能,极空间部署『KoodoReader』哈喽小伙伴们好,我是Stark-C~前段时间不是给大家分享的电子书管理工具『TaleBook』嘛~,然后就有粉丝私信...
- 如何在Ubuntu系统中重置root密码(ubuntu忘记密码重置root密码命令)
-
很多人有个问题,就是喜欢把密码设置得很长很复杂,结果谁也没防住,却成功防住了自己ヽ(.ˇдˇ;)ノ对于现代人,特别是年轻人,都有过忘记密码的经历吧。在这篇文章中,我们来了解如何在Ubuntu1...
- 5款功能强大的PDF阅读器,让PDF阅读更轻松
-
分享5款功能强大的PDF阅读器,拥有丰富的PDF阅读工具,支持PDF文档划线、笔记、标记等操作,让PDF阅读更轻松!1.嗨动PDF编辑器一款实用的PDF处理软件,不仅可以阅读PDF文档,还能直接编辑、...
- 上班摸鱼利器! 免费好用的电子书阅读器,NAS轻松部署Koodo Reader
-
哈喽,大家好我是生活爱好者。笔者也是一名小说爱好者,平时用手机用某信读书,会员也开了,在家看体验也不错,但是上班的时候,在工作快速完成之后,想摸个鱼用手机就不太方便啦,作为爱折腾的人,必须要工作认真,...
- 一周热门
- 最近发表
- 标签列表
-
- linux一键安装 (31)
- linux运行java (33)
- ln linux (27)
- linux 磁盘管理 (31)
- linux 内核升级 (30)
- linux 运行python (28)
- linux 备份文件 (30)
- linux 网络测试 (30)
- linux 网关配置 (31)
- linux jre (32)
- linux 杀毒软件 (32)
- linux语法 (33)
- linux博客 (33)
- linux 压缩目录 (37)
- linux 查看任务 (32)
- 制作linux启动u盘 (35)
- linux 查看存储 (29)
- linux乌班图 (31)
- linux挂载镜像 (31)
- linux 软件源 (28)
- linux题目 (30)
- linux 定时脚本 (30)
- linux 网站搭建 (28)
- linux 远程控制 (34)
- linux bind (31)