Chmod 计算器是什么?
Chmod 计算器是一个交互式工具,用于计算和转换 Unix/Linux 文件权限。它帮助您通过直观的可视化界面快速设置正确的权限,而无需记忆八进制代码或符号表示法。
为什么使用 Chmod 计算器?
Unix 文件权限控制谁可以读取、写入或执行文件和目录。权限设置错误可能导致安全漏洞或应用程序损坏。此工具可以轻松帮助您:
可视化权限
交互式复选框矩阵,直观管理权限
格式转换
在八进制 (755)、符号 (rwxr-xr-x) 和 chmod 命令之间无缝切换
生成命令
生成可直接复制粘贴到终端的即用型命令
特殊权限
处理高级权限,如 Setuid、Setgid 和粘滞位
理解权限基础
Unix 中的每个文件和目录都有三个权限集:
所有者 (u)
组 (g)
其他 (o)
如何使用 Chmod 计算器
权限矩阵
点击权限矩阵中的复选框,为每个角色(所有者、组、其他)切换读、写和执行权限。八进制值、符号表示法和生成的命令会实时更新。
八进制输入
直接在八进制输入字段中输入 3 位八进制值(例如 755)或包含特殊权限的 4 位值(例如 4755)。所有复选框和输出会自动同步。
符号输入
在符号输入字段中输入符号表示法(例如 rwxr-xr-x)。支持特殊字符,如 s、S、t 和 T,用于 setuid、setgid 和粘滞位。
使用预设
点击任何预设按钮快速设置常见权限值:
| 八进制 | 符号 | 用途 |
|---|---|---|
644 |
rw-r--r-- |
常规文件标准权限(所有者读/写,其他只读) |
755 |
rwxr-xr-x |
目录和可执行文件(所有者完全访问,其他读/执行) |
600 |
rw------- |
私密文件,如 SSH 密钥(仅所有者读/写) |
777 |
rwxrwxrwx |
警告 所有人完全访问 |
复制命令
输出部分显示八进制和符号格式的即用型 chmod 命令。点击任何命令旁的复制按钮将其复制到剪贴板,然后粘贴到您的终端。
功能
交互式权限矩阵
一个可视化的 3x3 网格让您为所有者、组和其他用户切换权限。每列显示数值权重(读=4、写=2、执行=1),当您点击时,每个角色的八进制总数会更新。
双向同步
更改任何输入,所有其他内容都会实时更新 — 无需点击"计算"按钮。编辑复选框、输入八进制值或输入符号表示法,所有其他字段都会保持同步。
特殊权限
切换 Setuid (4)、Setgid (2) 和粘滞位 (1) 以生成 4 位八进制值。符号表示法正确显示 s/S 表示 setuid/setgid,t/T 表示粘滞位。
Setuid (4)
Setgid (2)
粘滞位 (1)
文件和目录模式
在文件和目录之间切换,查看权限在 ls -l 输出中的显示方式。文件显示 - 前缀,而目录显示 d。
递归标志
启用递归选项以将 -R 添加到生成的 chmod 命令,适用于对目录及其内容应用权限。
chmod -R 755 /path/to/directory
八进制分解
查看每个角色的八进制值如何计算。例如,所有者具有读 + 写 + 执行权限显示 4 + 2 + 1 = 7。
常见预设
一键预设常用权限值(644、755、777、700、600、400、775、000),带有描述性工具提示,解释每个用途。
常见问题
644 和 755 有什么区别?
rw-r--r--
- 常规文件标准权限
- 所有者:读和写
- 组和其他:仅读
- 无执行权限
rwxr-xr-x
- 用于目录和可执行文件
- 所有者:完全访问
- 组和其他:读和执行
- 启用执行权限
何时应该使用 777 权限?
权限 777 为所有人授予完全的读、写和执行访问权限。这通常不建议用于生产环境,因为存在安全风险。
更安全的替代方案:
- 对共享目录使用
775(其他用户无写权限) - 对公共可执行文件使用
755 - 对仅限组的访问使用
770
什么是 Setuid、Setgid 和粘滞位?
Setuid (4)
Setgid (2)
粘滞位 (1)
/tmp。4755 表示启用了 Setuid (4) 加上标准 755 权限。符号表示法和八进制表示法有什么区别?
755
- 使用数字 (0-7)
- 每位数字是权限的总和
- 4 = 读,2 = 写,1 = 执行
- 紧凑且精确
rwxr-xr-x
- 使用字母 (r、w、x)
- 明确显示每个权限
- r = 读,w = 写,x = 执行
- 更易读和直观
如何递归应用权限?
启用递归 (-R)选项以生成类似 chmod -R 755 directory 的命令。这会对目录及其内的所有文件和子目录应用相同权限。
# Apply 755 to directory and all contents
chmod -R 755 /var/www/html
# Apply 644 to all files recursively
find /path/to/dir -type f -exec chmod 644 {} \;
# Apply 755 to all directories recursively
find /path/to/dir -type d -exec chmod 755 {} \;
SSH 密钥应该使用什么权限?
SSH 私钥应使用 600 (rw-------)— 仅所有者可以读和写。SSH 会因安全原因拒绝使用权限过于宽松的密钥。
| 文件/目录 | 权限 | 八进制 | 原因 |
|---|---|---|---|
~/.ssh/ |
rwx------ |
700 | SSH 目录必须是私密的 |
id_rsa |
rw------- |
600 | 私钥必须仅限所有者 |
id_rsa.pub |
rw-r--r-- |
644 | 公钥可读 |
authorized_keys |
rw------- |
600 | 控制服务器访问 |
known_hosts |
rw-r--r-- |
644 | 用户可读 |
# Set correct permissions for SSH directory
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub
chmod 600 ~/.ssh/authorized_keys
chmod 644 ~/.ssh/known_hosts
还没有评论,快来发表第一条!