Linux 入门:读懂文件权限并安全地修改

举报
yd_223091300 发表于 2026/11/13 00:43:06 2026/11/13
【摘要】 在 Linux 中,程序能否读取、修改或执行文件,常常由文件权限决定。遇到“Permission denied”时,先看清权限和身份,再决定是否调整,比直接把所有权限开放更安全。一、查看权限。执行 ls -l 文件名,输出开头通常类似 -rw-r--r--。第一个字符表示类型,普通文件常见为横线,目录为 d;后面九位依次描述所有者、所属组和其他用户的权限。r 表示读取,w 表示写入,x 表示...

在 Linux 中,程序能否读取、修改或执行文件,常常由文件权限决定。遇到“Permission denied”时,先看清权限和身份,再决定是否调整,比直接把所有权限开放更安全。

一、查看权限。执行 ls -l 文件名,输出开头通常类似 -rw-r--r--。第一个字符表示类型,普通文件常见为横线,目录为 d;后面九位依次描述所有者、所属组和其他用户的权限。r 表示读取,w 表示写入,x 表示执行。紧随其后的所有者和组名称,帮助我们判断当前用户属于哪一类。

二、目录权限与文件不同。对目录而言,r 通常允许列出目录项,x 允许穿过目录访问其中已知名称的项目,w 与 x 一起影响创建和删除目录项。能读取某个文件并不代表一定能进入它的上级目录;排查时应沿路径检查每一级目录。

三、按需修改。chmod u+x script.sh 为文件所有者增加执行权限;chmod g-w report.txt 移除所属组写权限。也可以使用数字形式:r、w、x 分别对应 4、2、1,chmod 640 report.txt 表示所有者可读写、组可读、其他用户无权限。先用 ls -l 确认修改结果,再以目标用户验证实际访问。

四、所有权也很重要。如果文件属于其他用户或服务账号,单纯增加所有人的权限可能掩盖所有权问题。确有需要且明确影响范围时,管理员可以用 chown 调整所有者,用 chgrp 调整所属组。操作前确认路径,特别是在递归修改之前,避免把无关目录一起更改。

五、权限排查还要看其他因素。即使传统权限位看起来正确,访问控制列表、只读挂载、容器用户映射或安全策略也可能阻止访问。可以检查当前身份(id)、文件详细信息以及挂载状态,再结合系统日志分析。不要在不了解影响时随意关闭安全机制。

建议先在临时目录创建测试文件,试验读取和执行,再把经过验证的最小权限应用到真实项目。对于包含密钥的配置文件,更应限制访问范围,并避免把敏感信息提交到代码仓库。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。