chmod 是 Linux/Unix 系统中用于更改文件或目录权限的重要命令。下面我将详细介绍如何为不同用户设置权限。
Linux 系统中,每个文件和目录都有三组权限: 1. 所有者(User) - 文件/目录的创建者 2. 组(Group) - 文件/目录所属的用户组 3. 其他用户(Others) - 系统上的其他所有用户
每组权限包含: - 读(r/4) - 写(w/2) - 执行(x/1)
chmod [选项] 模式 文件/目录
权限用三位八进制数表示,每位对应一组权限:
chmod 755 filename
使用字母表示权限变更:
chmod [ugoa][+-=][rwx] 文件/目录
设置所有者可读写执行,组可读执行,其他用户无权限
chmod 750 filename
给所有用户添加执行权限
chmod a+x script.sh
移除其他用户的写权限
chmod o-w sensitive_file
设置目录权限(递归设置)
chmod -R 755 directory/
设置组用户可写
chmod g+w shared_file
SUID (Set User ID) - 以文件所有者身份执行
chmod u+s file
SGID (Set Group ID) - 以文件所属组身份执行
chmod g+s file
粘滞位(Sticky Bit) - 常用于/tmp目录,防止用户删除他人文件
chmod +t directory
使用 ls -l
命令查看文件权限:
-rwxr-xr-- 1 user group 1024 Jan 1 10:00 filename
掌握chmod命令是Linux系统管理的基础技能,合理设置权限可以大大提高系统安全性。