Linux 权限管理命令chmod(change mode)

发布于 2024-12-09  301 次阅读


在 Linux 系统中,更改文件和目录的权限是系统管理中的一个基本任务。主要用到的命令是 chmod(change mode)。以下是 chmod 命令的一些常见用法:

1. 符号模式(Symbolic Mode)

符号模式使用字符来表示用户类型、操作类型和权限类型。

用户类型:

u:文件所有者(user)
g:文件所属组(group)
o:其他用户(others)
a:所有用户(all,即 ugo 的总和)

操作类型:

+:添加权限
-:移除权限
=:设置权限(覆盖原有权限)

权限类型:

r:读权限(read)
w:写权限(write)
x:执行权限(execute)

示例:

给所有用户添加执行权限:

chmod a+x filename

移除文件所有者的写权限:

chmod u-w filename

设置文件所有者的权限为读和执行,组的权限为读,其他用户的权限为无:

chmod u=rx,g=r,o= filename

2. 八进制模式(Octal Mode)

八进制模式使用一个三位或四位的八进制数来表示权限。每一位分别对应所有者、所属组和其他用户的权限。

八进制数表示:
4:读权限(read)
2:写权限(write)
1:执行权限(execute)

4:读权限(read)
2:写权限(write)
1:执行权限(execute)
0:无权限0:无权限
将这些数字相加即可得到权限的八进制表示。例如:

7(4+2+1):读、写、执行权限
6(4+2):读、写权限
5(4+1):读、执行权限
4(4):读权限4(4):读权限

示例:

设置文件权限为所有者有读、写、执行权限,组有读、执行权限,其他用户有读权限:

chmod 754 filename

一般习惯 直接 chmod 777 filename

3. 更改文件或目录的所有者和所属组

虽然这不是 chmod 的功能,但更改文件或目录的所有者和所属组也是权限管理的一部分,分别使用 chown 和 chgrp 命令。

更改所有者:

chown newowner filename

更改所属组:

chgrp newgroup filename

同时更改所有者和所属组:

chown newowner:newgroup filename

4. 递归更改权限

在更改目录及其内部所有文件和子目录的权限时,可以使用 -R 选项。

示例:

示例:

递归地给目录及其所有内容添加执行权限:递归地给目录及其所有内容添加执行权限:

chmod -R a+x directoryname
一位普通的java开发者,学习中~~
最后更新于 2024-12-09