1次把自己锁在生产服务器上的文件之外,我正在按照一个教程说"设置为600",而没有解释600是什么意思,我输入了命令,部署脚本无法再读取文件,我花了二十分钟弄清楚我已经删除了web服务器进程所需的组读取访问,对于私钥,这个数字没有错,对于那个文件,这是错误的,而且我没有直觉的原因,因为我已经将权限视为一种魔法咒语,而不是我理解的值。
Unix文件权限是那些看起来很吓人,一旦有人画出图片就很简单的话题之一,三类用户,三种访问,以及少量将复选框变成数字的算术 chmod expects。的麻烦在于,这两种表示,数字模式喜欢 755 还有符号模式 rwxr-xr-x看起来一点也不相似,在你的脑海中转换它们是没有人喜欢练习的技能。
的 Chmod 计算器 does the conversion for you and,更有用的是,同时显示所有三个视图。切换复选框和八进制数,符号字符串和准备运行 chmod command all update 一起,那是我希望自己有那天打破那个部署的工具,因为同时从三个角度看到权限,才是建立单个数字永远不会的直觉。
TL;博士: Unix权限涵盖三个类(所有者,组,其他),每个类三个位(读=4,写=2,执行=1)。像755这样的数字模式将每个类添加这些值;像rwxr-xr-x这样的符号模式将它们拼写出来。该计算器在八进制,符号和rwx复选框之间实时转换,处理setuid,setgid和粘性特殊位,并生成精确的chmod命令。它完全在浏览器中运行,无需注册。
chmod计算器解决了什么问题?
核心难点是,同一权限有两个面孔,没有视觉相似性。文档和 ls -l 给你看 rwxr-xr-x. X = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 = 1000 chmod 命令通常想要 755。在它们之间移动需要将每个三字母组转换为数字,方法是将读取、写入和执行相加,并在压力下可靠地执行此操作,在服务器上,在距离锁定一键的键盘之外输入错字,这正是当一个人犯错误时。
计算器去除了算术,同样重要的是去除了歧义。当你能看到这一点时 755 於 rwxr-xr-x is "所有者:读,写,执行;组和其他人:读,执行,"权限不再是你记住的数字,而是成为你可以阅读的语句,那就是从教程中复制模式和知道模式是否适合你的文件之间的区别。
Ye有安全角度,权限是少数小错误造成巨大后果的,设置私钥to 644 并且框上的任何用户都可以读取。设置一个 Web 目录 777 and you have hand write access to the world。a工具,用通俗的英语拼写出模式允许什么,在数字旁边,是你在提交更改之前运行的理智检查,而不是在你造成事件之后运行的相同的隐私优先,在行动之前理解心态贯穿于 数据隐私在线工具 guide,并且它适用于权限,就像适用于您粘贴到表单中的任何内容一样。
Unix文件权限是如何工作的?
POSIX系统上的每个文件和目录都带有三类用户的权限,所有者是拥有该文件的帐户,该组是一组有名的用户,共享一个级别的访问权限,其他的则是系统上的其他所有人,这三个类中每一个都有三个独立的位:读、写和执行。
(films)和目录(directory)之间,这些位元的意思略有不同,这是一个会使人绊倒的细节,在一个文件上,读让你查看内容,写让你更改它们,执行让你以程序运行文件,在一个目录上,读让你列出条目,写让你创建和删除其中的条目,执行让你输入目录并按名称访问其中的文件,这就是为什么一个目录几乎总是需要为任何应该完全能够使用的类设置执行位元,即使"执行目录"听起来很奇怪,计算器将九个位元中的每一个映射到复选框,这样你就可以一眼看到全图,并准确切换你打算的访问。
八进制权限号是如何计算的?
这是一次值得理解的算术,因为之后数字会自己读取。在每个类中,读值为 4,写值为 2,执行值为 1。选择这三个值是因为它们是二次方,这意味着每个组合加起来都有一个唯一的总和,介于 0 到 7 之间。这里是完整的映射。
| 八进制数字 | 二进制 | 象征性的 | 意义 |
|---|---|---|---|
| 7 | 111 | rwx | 读、写、执行 |
| 6 | 110绔 涔诲芥澶澧 | rw-x-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1-1 | 读,写 |
| 5锛屽湪娴欐睙鏉 | 101 | rx | 读,执行 |
| 4锛屽湪娴欐睙鏉 | 100 | r-- | 仅阅读 |
| 3 | 011 | -wx | 写,执行 |
| 2 | 010 | -w- | 只写 |
| 1 | 001 | -x | 仅执行 |
| 0 | 000 | --- | 无障碍 |
完整模式是其中三个数字,按顺序所有者、组、其他。所以 755 7(读、写、执行)、组5(读、执行)、其他5(读、执行)的所有者来读,计算器在两个方向上都做这个加法:勾选方框,看数字出现,或者键入数字,看方框填入工具中做几次,就是上面的表格如何停止是你查找的东西,变成你知道的东西。
chmod 755 和 chmod 644 是什么意思?
这是您比任何其他模式使用的两种模式,因此它们值得投入内存,而计算器是了解为什么每种模式都是其工作的默认模式的最快方法。
chmod 755 give owner 完全存取(读、写、执行),并给予群组及其他读取和执行,是目录的标准模式,也是对于每个人都应该能够运行但只有所有者才应该能够改变的脚本或程序,group ow other 上的 execution bit 是让其他用户进入目录或运行脚本的。
chmod 644 give 所有者读写,只给组和其他人读取,在任何地方都不执行,是常规文件的标准模式,如 HTML 页面、图像、配置应该可以世界读取,源文件,所有者编辑,其他人都只需要读取一个纯文本文件就没有理由可执行,所以 644 留下了那个位。
To noted的模式是目录和可执行文件得到755而普通文件得到644,而唯一的区别就是执行位,在计算器中并排看到那两种模式,符号字符串 rwxr-xr-x 並 rw-r--r-- 在下面,以一种记忆两个数字永远不会做到的方式使这种关系变得明显。
设置、设置和粘性位是什么?
9个标准位之外还有3个特殊位,由模式前面可选的第四位设置,它们是权限真正微妙的地方计算器将每个都作为自己的复选框暴露出来,并将结果折叠成前导八进制数字和符号字符串,完全如 ls -l 显示它们。
Setuid位,在特殊数字中值4,它以所有者的权限而不是启动它的用户的权限进行可执行运行,经典的例子是 passwd command,它需要写入一个普通用户无法触摸的系统文件,在符号列表中,setuid将所有者's执行字符变成 s如此 755 用 setuid 变为 rwsr-xr-x 并且模式已写入 4755。
Setgid位,值2,对组做同样的事情,在一个目录上,它做了一些额外的事情:在内部创建的新文件继承目录's组而不是创建者's主组,这是一个共享项目文件夹需要它显示为 s 组's执行位置中。
1的粘性位主要适用于目录,设置时只有文件's所有者可以删除或重命名目录内的那个文件,即使其他人对目录有写访问,这就是保留的 /tmp 可用作共享刮擦空间,用户无法相互删除's文件。它显示为 t 在其他'执行位置,因此可写入世界的 temp 目录是 1777、或者 rwxrwxrwt。设置特殊位但底层执行位关闭时,字母大写, S 或 T并且计算器再现它,因此其输出始终与真实列表匹配。
数字模式和符号模式有什么区别?
2个都描述相同的权限;它们只是两个符号,知道什么时候使用每个都节省了摩擦。数值模式,八进制数字喜欢 755,紧凑而绝对,它一次设置每一个位,这就是为什么它是你在大多数情况下看到的形式 chmod 示例和部署脚本。符号模式,字母喜欢 rwxr-xr-x,是什么 ls -l prints,所以它是你在检查系统时读到的表单。
符号符号也有一种相对形式 chmod accepts并且计算器不需要生成但值得知道: chmod u+x file 添加对所有者的执行而不触及任何其他内容,并且 chmod go-w file remove write from group 和其他。当你想改变一位并留下其余部分时,该相对形式在命令行很方便。计算器处理绝对模式,这是当你决定什么文件时正确的模型's权限应该而不是轻推一位,它给你八进制到类型和符号来验证反对 ls -l 之后。对于权威行为,POSIX 规范为 chmod 文件模式位是主要参考。
计算器如何保持每个视图同步
该工具背后的设计原则是,真值有一个来源,即权限位集,并且每个表示形式都源自它。切换复选框,八进制、符号、命令和纯英文描述都从同一状态重新计算。键入有效的八进制或符号值以及位更新,它会流回其他每个视图。这意味着三种符号永远不会不同意,这就是整个要点:一个可以显示的转换器 755 靠近错误的符号字符串比手工数学更糟糕。
Plain-English summary是我发现自己读得最多的部分,它拼写出来,每堂课一行,准确地说明了当前模式允许什么,它标记了单词中的任何特殊位,在我对真实系统应用权限之前,那句话是检查我输入的内容和我的意思之间的区别,在我使用的其他开发人员实用程序旁边保留一个快速,可靠的这样的转换器, base64 转换器 和 哈希生成器 其中,是 中描述的工作流程的一部分 开发人员生产力工具 指南,更广泛的收藏生活在其中 编码工具指南。
用于正确获取权限的快速工作流程
I在实践中如何使用工具,当教程或错误消息给我一个模式时,我将八进制粘贴到计算器中,并阅读纯英文摘要以确认它做了上下文需要什么,当我从头开始设置权限时,我从接近我想要的预设开始, 644 对于文件或 755 对于目录或脚本,然后切换各个位并观看描述更新,直到它准确说明我的意图。然后我复制生成的 chmod command 并且运行它。整个循环需要几秒钟,自从我不再猜数字以来,它已经使我无法进行不止一次锁定。
预设涵盖了每天出现的模式,当您真正需要在共享目录上设置 setgid 或在 temp 文件夹上设置粘性位时,特殊位复选框就在那里。如果您还在同一服务器上使用 JSON、YAML 和其他格式,则 JSON 格式化程序 並 CSS 格式化程序 完善了一套小型客户端实用程序,使日常工作更快。
常见问题
什么是 chmod 计算器?
Chmod计算器在数字八进制模式、符号rwx字符串和单独的读取、写入和执行设置之间转换Unix文件权限,它为您提供了无需手动八进制数学即可获得所需权限的精确chmod命令。
chmod 755 是什么意思?
chmod 755给所有者读写执行(7),群组等读取执行(5和5),是脚本和目录的常用模式:所有者可以更改,其他人都可以运行或输入但不修改。
chmod 644 是什么意思?
chmod 644给所有者读写(6)和群组和其他人只读(4和4),是常规文件的标准模式,应该由其所有者编辑,其他人可以读取。
八进制权限号是如何计算的?
(4)、写(2)和执行(1)相加构建的每个权限类都是一个八进制数字,所以7是读、写和执行,6是读和写,5是读和执行,4是只读,三位数字依次是所有者、组和其他。
什么是 setuid、setgid 和粘性位?
它们是由第四个前导八进制数字设置的特殊权限位。 setuid (4) 以所有者权限运行文件,setgid (2) 以组权限运行它或在目录上共享组,粘性位 (1) 只允许文件所有者在共享目录中删除它。
数字模式和符号模式有什么区别?
Numeric 模式使用像 755 这样的八进制数字,符号模式使用像 rwxr-xr-x 这样的字母,匹配 ls -l 列表,它们描述相同的权限;这个工具在它们之间进行转换,这样你就可以使用文档或命令期望的任何一个。
Chmod 计算器在移动设备上工作吗?
是。该工具完全响应,可在手机、平板电脑和台式机上的任何现代浏览器中工作。无论您使用何种设备,转换都是相同的。
Chmod 计算器免费吗?
Yes。完全免费,没有注册,没有水印,也没有使用限制。所有转换都发生在你的浏览器中,没有任何东西发送到服务器。



