chmod是Linux中修改文件权限的核心命令,支持数字法(如755、644)和符号法(如u+x、go-w),分别用于精准设定或灵活调整所有者、所属组及其他用户的读(r=4)、写(w=2)、执行(x=1)权限。

Linux 运维中修改文件权限,chmod 是最核心的命令。掌握数字法和符号法,能快速、准确地控制谁可以读、写或执行文件——既保障安全,又避免“Permission denied”报错。
数字法:三位八进制,精准设定每类用户的权限
数字法用三个 0–7 的数字,分别代表所有者(u)、所属组(g)、其他用户(o)的权限总和。每个数字是 r=4、w=2、x=1 的加总:
- 7 = rwx(4+2+1),如脚本需所有人可执行:chmod 755 script.sh → rwxr-xr-x
- 6 = rw-(4+2+0),常用于普通文件:chmod 644 file.txt → rw-r--r--
- 600 = rw-------,仅所有者可读写,适合密钥或配置文件
- 目录通常需要 x 权限才能进入:chmod 755 mydir/ 或 chmod 700 private/
符号法:按需增删改,操作更灵活直观
符号法由 用户标识 + 操作符 + 权限字母 构成,适合在原有权限基础上微调:
- u/g/o/a:指定对象(所有者 / 组 / 其他人 / 全体)
- + / - / =:添加 / 移除 / 完全重置权限
- r / w / x:对应读、写、执行
- 常用示例:
chmod u+x deploy.sh(给所有者加执行权)
chmod go-w config.ini(去掉组和其他人的写权限)
chmod a=r file.log(所有人只读,覆盖原有权限)
实用技巧与注意事项
运维中高频场景需注意这些细节:
- 对目录设权限时,x 表示“可进入”,缺它就 cd 不进去;r 表示“可列出内容”,w 表示“可增删文件”
- 批量处理加 -R(递归),如 chmod -R 644 *.txt,但慎用于目录:chmod -R 755 myproject/ 可能误开执行权
- 用 ls -l 验证结果,例如 -rwxr-xr-- 表示所有者有全部权限,组和其他人只有读和执行
- 修改系统关键文件或属主非自己的文件,可能需要 sudo,如 sudo chmod 600 /etc/shadow


















