Linux 【01- chmod命令超详细教程】

📅 2026/7/2 12:52:31
Linux 【01- chmod命令超详细教程】
Linux chmod 超详细完整教程一、基础概念Linux 文件权限三角色Linux 每个文件/目录权限分为三类用户权限互不干扰u user文件所有者创建文件的用户g group文件所属用户组o other其他所有人既不是所有者、也不在用户组a allugo 全部用户三种权限标识符号名称文件作用目录作用r读(read)查看文件内容列出目录内文件列表(ls)w写(write)修改、覆盖、删除文件新增/删除/重命名目录内文件x执行(execute)运行脚本/二进制程序进入目录(cd)、访问内部文件关键区别目录没有x权限就算有r也无法读取里面文件目录w权限可以删文件和文件本身权限无关。二、查看权限ls -l执行ls -l查看文件权限示例-rwxr-xr-- 1 root test 123 Jul 1 10:00 run.sh拆解权限段-rwxr-xr--第1位文件类型-普通文件d目录l软链接2~4位 u(所有者)rwx 读写执行5~7位 g(用户组)r-x 读执行无写8~10位 o(其他人)r-- 仅读三、chmod 两种用法符号模式 / 数字八进制模式方式1符号权限模式直观适合微调语法chmod[角色][操作符][权限]文件/目录角色u/g/o/a操作符增加权限-移除权限直接赋值权限覆盖原有权限r/w/x常用示例# 给所有者增加执行权限chmodux test.sh# 移除其他用户写权限chmodo-w test.sh# 给组和其他人添加读权限chmodgr,or test.sh# 所有人赋予读执行清除所有写权限chmodar-x test.sh# 仅所有者读写组和其他人只读chmodurw,gr,or test.txt# 所有用户增加执行权限chmodax *.sh方式2八进制数字模式最常用、简洁权限对应数值r 4w 2x 1权限相加得到单个角色数字三位数字依次对应u g o数字权限组合符号等价0—无任何权限1–x仅执行2-w-仅写3-wx写执行4r–仅读5r-x读执行6rw-读写7rwx读写执行计算示例755u7(rwx)、g5(r-x)、o5(r-x) → 程序/目录标准权限644u6(rw-)、g4(r–)、o4(r–) → 普通文件标准权限777全部读写执行生产环境禁止使用极度不安全600仅所有者读写密钥、隐私文件专用数字模式命令示例# 普通文本文件标准权限chmod644info.txt# 脚本/程序标准权限chmod755startup.sh# 私密密钥文件仅自己可读可写chmod600id_rsa# 目录全开慎用chmod777temp/# 批量修改当前目录所有sh脚本权限chmod755*.sh四、递归修改目录权限 -R 参数目录内部所有子目录、文件同步修改权限必须加 -R# 递归给网站目录全部755权限chmod-R755/home/www# 递归移除所有其他人写权限chmod-Ro-w /data/logs# 符号模式递归增加执行权限chmod-Rax scripts/⚠️ 注意不要随便chmod -R 777极易造成安全漏洞。五、特殊权限SUID / SGID / Sticky粘滞位1. 三位数字扩展为四位权限第一位特殊权限4 SUID2 SGID1 Sticky(粘滞位)完整格式chmod 特殊位ugo如4755SUID (4xxx) 二进制文件专用程序运行时临时拥有文件所有者权限示例passwd命令权限4755chmod4755/usr/bin/mycmdSGID (2xxx) 目录/文件文件运行时拥有文件组权限目录新建文件自动继承目录所属组chmod2775/shared/groupdirSticky粘滞位 (1xxx) 公共目录目录内文件仅文件所有者能删除典型/tmpchmod1777/tmp查看特殊权限ls -l权限位会出现 s/t 标识SUID所有者x位变为sSGID组x位变为sSticky其他x位变为t六、目录 vs 文件 权限最佳实践1. 普通静态文件txt/html/js/css推荐644chmod644*.html2. 可执行脚本/程序sh/python二进制推荐755chmod755run.sh3. 隐私文件密钥、证书、数据库配置推荐600chmod600~/.ssh/id_rsachmod600config/db.ini4. 普通业务目录推荐755chmod755/project5. 多人共享协作目录推荐2770SGID同组可读写chmod2770/team/share6. 公共临时目录任何人可写只能删自己文件推荐1777chmod1777/public/tmp七、常见实用场景命令批量修改所有文件为644目录为755网站常用# 文件统一644find/www-typef-execchmod644{}\;# 目录统一755find/www-typed-execchmod755{}\;只给脚本添加执行权限其他文件不变find./-name*.sh-execchmodux{}\;禁止任何人写入日志目录chmod-Rgo-w /var/log移除所有文件SUID高危权限服务器安全加固find/-perm-4000-typef-execchmodu-s{}\;八、常见坑与注意事项目录缺少x权限无法进入例chmod 644 testdir无xls能看到目录但cd进去报错。目录最低权限建议755。777极度危险任何用户都能修改、删除文件线上生产环境严禁使用。-R递归慎用不要执行chmod -R 644 /会把系统目录执行权限全部抹除系统直接崩溃。软链接修改权限无效chmod 作用于链接指向的真实文件而非链接本身。root用户不受权限限制root无视rwx权限可读写删除任意文件。九、快速记忆总结数字模式优先文件644、脚本755、密钥600、目录755符号模式适合临时加减权限ux、o-w修改文件夹内部全部内容必须加-R四位数字首位控制SUID/SGID/粘滞位目录x权限是进入目录的必要条件