权限基础概念
Linux目录权限分为三类:
- 读(r):允许查看目录内容(如
ls
命令) - 写(w):允许创建/删除目录内文件
- 执行(x):允许进入目录(如
cd
命令)
权限分配对象:
- 所有者(owner):目录创建者
- 所属组(group):共享权限的用户组
- 其他用户(others):系统所有其他用户
修改权限的核心命令:chmod
方法1:数字模式(推荐)
权限用三位八进制数表示:
- 4=读(r) | 2=写(w) | 1=执行(x)
组合示例:chmod 755 /path/to/directory # 所有者:rwx,组和其他:r-x chmod 644 /path/to/directory # 所有者:rw-,组和其他:r--
方法2:符号模式
通过字符修改特定对象的权限:
- u(所有者) g(组) o(其他) a(所有用户)
- (添加权限) (移除权限) (精确设置)
chmod g+w /data/shared # 给组添加写权限 chmod o-rx /confidential # 移除其他用户的读和执行权限 chmod a=rwx /public # 所有用户获得全部权限(慎用!)
递归修改目录权限
添加 -R
参数可修改目录及其内部所有内容:
chmod -R 750 /project/ # 递归设置:所有者rwx,组r-x,其他无权限
关键应用场景
- 团队协作
chmod 775 /team_project # 组内成员可共同编辑
- Web目录安全
chmod 755 /var/www/html # 允许公共读取,但仅所有者可修改
- 私有目录锁定
chmod 700 /personal # 仅所有者可访问
安全风险与避坑指南
- 禁止滥用777权限
chmod 777
会开放所有权限,可能导致恶意文件篡改或删除。 - 递归修改前备份
使用-R
前建议执行cp -r /target /backup
防止误操作。 - 权限继承原则
目录需有 执行(x) 权限才能访问内部文件,文件通常无需此权限。 - 验证结果
用ls -ld /path
检查权限(目录显示示例:drwxr-xr--
)。
高级技巧
- 默认权限控制:通过
umask
设置新建目录的默认权限(如umask 022
对应默认755)。 - ACL精细管理:复杂场景使用
setfacl
命令分配多用户权限:setfacl -m u:user1:rwx,g:team:rx /shared_dir
重要提醒:修改系统目录(如
/etc/
、/bin/
)权限可能导致系统崩溃,非必要不操作,生产环境建议先在测试目录练习。
引用说明基于Linux核心文档(man7.org)及Filesystem Hierarchy Standard标准,权限管理实践参考Red Hat官方安全指南,操作命令适用于所有主流Linux发行版(Ubuntu/CentOS等)。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6925.html