| 数字(八进制) | ||
|---|---|---|
| 所有者完全访问;组和其他人可读和执行。 | chmod 755 script.sh | |
| 所有者可读写;组和其他人只读。 | chmod 644 notes.txt | |
| 仅所有者可读写;其他人无任何权限。 | chmod 600 ~/.ssh/id_rsa | |
| 仅所有者完全访问;其他人无任何权限。 | chmod 700 ~/.ssh | |
| 所有人完全访问。存在安全风险。 | chmod 777 shared/ | |
| 所有人可读写。不设置执行位。 | chmod 666 log.txt | |
| 所有者完全访问;组可读和执行;其他人无权限。 | chmod 750 app/ | |
| 所有主体仅可执行。目录可穿越但不能列出内容。 | chmod 111 dir/ | |
| 任何主体都无权限。root 仍可读取文件。 | chmod 000 private.key | |
| 所有者和组完全访问并加 setgid;团队共享目录的常用模式。 | chmod 2775 /srv/team | |
| umask 结果 | ||
| 默认掩码。新文件为 644;新目录为 755。 | umask 022 | |
| 私有掩码。新文件为 600;新目录为 700。 | umask 077 | |
| 符号模式 | ||
| 为所有者添加执行权限。 | chmod u+x deploy.sh | |
| 移除组的写权限。 | chmod g-w config.yml | |
| 移除其他人的读权限。 | chmod o-r secret.env | |
| 为所有主体设为只读。 | chmod a=r readme.md | |
| 为所有主体授予全部权限。 | chmod ugo+rwx public/ | |
| 特殊位 | ||
| 设置 setuid 位。二进制文件以文件所有者身份运行。 | chmod 4755 /usr/bin/passwd | |
| 设置 setgid 位。新文件和子目录继承目录的组。 | chmod 2755 /shared | |
| 设置粘滞位。只有文件所有者才能删除。 | chmod 1777 /tmp | |
| 普通文件上的粘滞位。这是现代 Linux 已忽略的旧式驻留交换提示。 | chmod 1755 legacy.sh | |
| 命令 | ||
| 更改文件模式位。 | chmod 755 file | |
| 更改文件所有者和组。 | chown user:group file | |
| 更改文件的属组。 | chgrp devs file | |
| 为新文件设置默认权限掩码。 | umask 022 | |
| 以长格式列出文件及权限。 | ls -l /etc | |
| 显示文件的 POSIX ACL 条目。 | getfacl report.pdf | |
| 设置或修改 POSIX ACL 条目。 | setfacl -m u:alice:rw report.pdf | |
| 查找权限位匹配指定模式的文件。 | find / -perm /4000 | |
| 打印文件元数据,包括八进制模式。 | stat -c '%a %n' file | |
| 列出路径中每个组成部分的权限。 | namei -l /var/www/index.html | |
| 更改文件属性,例如不可变。 | chattr +i /etc/resolv.conf | |
| 列出文件属性。 | lsattr /etc/resolv.conf | |
| 显示授予文件的能力。 | getcap /usr/bin/ping | |
| 授予文件能力,无需 setuid。 | setcap 'cap_net_raw=+ep' /usr/bin/ping | |
| 列出当前 shell 生效的能力。 | capsh --print | |
| 显示用户的 UID、GID 和所属的组。 | id alice | |
| 列出用户所属的组。 | groups alice | |
| 按 sudoers 策略以其他用户身份运行命令。 | sudo systemctl restart nginx | |
| 带语法检查地编辑 sudoers 文件。 | visudo | |
| 切换到其他用户账户。 | su - deploy | |
| 以不同的主组启动 shell。 | newgrp developers | |