Linux系统中的chmod命令通过数字表示文件权限,这是日常文件管理中极为常用的操作。很多用户对这些数字的含义感到困惑,其实只要掌握背后的计算规则,一眼就能快速解读。下面详细解析数字权限的构成逻辑。
首先,打开一个终端窗口。以Ubuntu系统为例,可以按下快捷键Ctrl+Alt+T,或者从应用程序菜单中找到并启动终端。


权限数字中的三位分别对应文件所有者(owner)、所属组(group)以及其他用户(others)。每一位数字是通过将4(读取权限)、2(写入权限)、1(执行权限)相加得到的。举个例子,777表示4+2+1=7,三个7意味着所有用户都同时拥有读取、写入和执行权限。使用sudo chmod -R 777可以递归地将整个目录及其子文件设置为该权限,操作虽然方便,但在生产环境或敏感场景下并不建议这样做,因为会带来安全隐患。

接下来看几组常见组合及其适用场景:
770:其他用户没有任何权限。前两位7表示文件所有者和所属组成员拥有全部读写执行权限,最后一位0意味着其他用户连查看文件列表的资格都没有。

771:其他用户只获得可执行权限。也就是说,这部分用户能够运行该文件,但不能读取其内容,也无法修改。

772:其他用户只获得可写权限。需要留意的是,单独赋予写入权限的情况较为少见,因为无读取权限时写入往往无法正常工作,但语法上这样的设置是允许的。

774:其他用户只获得可读权限。这种配置适合分享只读文件,例如配置文件模板,其他用户可以查看但无法修改。

773:其他用户拥有可写和执行权限,但缺少读取权限。这种情况使用频率较低,因为不能读取却能写入和执行,逻辑上有些反直觉,不过语法层面依然成立。

775:其他用户具备可读和可执行权限,但没有写入权限。这是日常共享文件时最常用的权限组合之一,允许他人运行和查看内容,但不能随意修改。

776:其他用户拥有可读和可写权限,但没有执行权限。这种设置适合共享文档类文件,别人可以编辑内容,但不能将其作为程序运行。

一旦理解了每一位数字的构成原理,chmod的八进制表示法就永远不会再混淆。牢记rwx分别对应4、2、1这三个权重值,想要给哪些用户什么权限,只需把对应的数值相加即可。
