chmod命令用于修改linux文件或目录权限,centos支持数值法(如755)与符号法(如u+x),权限分所有者、所属组、其他用户三类,每类含读(4)、写(2)、执行(1)权限,三位八进制数分别对应三类用户权限。

Chmod 命令用于修改 Linux 文件或目录的访问权限,CentOS 作为 RHEL 系统的衍生版本,完全支持标准 chmod 语法。掌握数值表示法(如 755、644)与符号表示法(如 u+x、go-w)的对应关系,是日常运维和脚本编写的基础能力。
权限三组与三位数字的对应逻辑
Linux 权限分为三类用户:所有者(user)、所属组(group)、其他用户(others)。每类用户有三种基本权限:读(r / 4)、写(w / 2)、执行(x / 1)。三位八进制数中:
- 第一位:所有者权限(4+2+1=7 表示 rwx)
- 第二位:所属组权限(4+0+1=5 表示 r-x)
- 第三位:其他用户权限(4+0+0=4 表示 r--)
例如:chmod 754 file.txt → 所有者可读写执行,组用户可读执行,其他人仅可读。
常用数值权限组合及适用场景
实际使用中,以下组合出现频率最高,需理解其安全含义:
- 644:文件默认权限(-rw-r--r--),适合普通配置文件、HTML 页面等无需执行的文本内容
- 755:目录常用权限(drwxr-xr-x),允许用户进入目录、列出内容,但不开放写入给组和其他人
- 600:高敏感文件(如 ~/.ssh/id_rsa),仅所有者可读写,杜绝信息泄露
- 700:私有脚本或工具目录,限制访问范围至当前用户
符号法与数值法的灵活切换技巧
符号法更直观,适合局部调整;数值法更高效,适合批量设置。两者可互相验证:
- 查看当前权限:用 ls -l filename,右侧九位字符即权限字符串(如 -rwxr-xr--)
- 从符号转数值:按顺序分组 rwx/r-x/r-- → 111/101/100 → 7/5/4 → 754
- 从数值转符号:分解每位数字为二进制(如 6=110→rw-,0=000→---),再拼接
- 混合使用:如 chmod u+x,g-w,o=r file.sh 等价于 chmod 754 file.sh
注意事项与典型误操作规避
权限设置不当易引发服务异常或安全风险,尤其在 CentOS 这类生产环境系统中:
- 不要对系统关键目录(如 /etc、/bin)随意递归赋权(chmod -R 777 /etc 是灾难性操作)
- 脚本文件需添加执行权限(x),但纯配置文件一般不应有 x,否则可能被意外执行
- 目录必须有执行(x)权限才能 cd 进入或访问其下文件,这是初学者常忽略的点
- 使用 chmod -c(显示变更)或 chmod -v(详细输出)辅助调试,避免静默失败










