chmod
是 Linux/Unix 系统中的一个命令,用于改变文件或目录的权限。每个文件和目录都有三个基本权限类别:
每个文件和目录有三类用户相关的权限:
u
)。g
)。o
)。权限可以用符号模式或数字模式来表示。
chmod
使用语法chmod [options] mode file
mode
: 用来指定权限的符号模式或数字模式。file
: 需要修改权限的文件或目录。符号模式是通过 u
(用户)、g
(组)、o
(其他人)以及 r
(读)、w
(写)、x
(执行)来设置权限。
+
: 添加权限。-
: 移除权限。=
: 精确设置权限。chmod u+x myfile
解释:为文件 myfile
的所有者添加执行权限。
chmod g-w myfile
解释:移除 myfile
所属组成员的写权限。
chmod a+r myfile
解释:为文件的所有用户(a
代表所有人,即 u
、g
和 o
)添加读权限。
chmod u=rw,g=r,o=r myfile
解释:将 myfile
的权限设置为用户拥有读写权限,组和其他用户只有读权限。
数字模式使用一个三位八进制数字,每位数字代表用户、组、其他人的权限。权限的数值计算如下:
通过将这些数值相加,得出不同的权限组合。
7
:读、写、执行权限 (4 + 2 + 1
)6
:读、写权限 (4 + 2
)5
:读、执行权限 (4 + 1
)4
:读权限0
:无权限数字模式语法示例:
u
),g
),o
)。chmod 755 myfile
解释:用户具有 rwx
权限(7
),组和其他人具有 rx
权限(5
)。
chmod 644 myfile
解释:用户具有 rw
权限(6
),组和其他人具有 r
权限(4
)。
chmod 777 mydir
解释:用户、组和其他人都具有 rwx
权限。
可以使用 -R
选项递归地更改目录及其所有子目录和文件的权限。
chmod -R 755 /path/to/directory
解释:对 /path/to/directory
目录及其所有文件和子目录设置权限。