7.linux文件权限与所有权
Linux 文件权限与所有权
文件权限
在 UNIX 和 Linux 系统中,文件和目录的访问权限是系统安全的基础。
权限类型
每个文件和目录都有三种基本权限:
r(Read - 读取):- 对于文件:可以查看文件内容。
- 对于目录:可以列出目录中的文件和子目录。
w(Write - 写入):- 对于文件:可以修改文件内容。
- 对于目录:可以在目录中创建、删除或重命名文件。
x(Execute - 执行):- 对于文件:可以将文件作为程序执行。
- 对于目录:可以进入该目录(例如,使用
cd命令)。
权限级别
这三种权限分别应用于三个不同的级别:
u(User - 用户): 文件的所有者。g(Group - 组): 拥有该文件的用户组。o(Others - 其他): 系统上的所有其他用户。
查看权限
使用 ls -l 命令可以查看文件和目录的详细信息,包括其权限。

权限字符串(例如 -rwxr-xr--)的第一位表示文件类型(- 表示普通文件,d 表示目录)。接下来的九位分为三组,分别代表所有者、所属组和其他用户的权限。
示例分析 (-rw-r--r--):
- 所有者 (
rw-): 可以读取和写入,但不能执行。 - 所属组 (
r--): 只能读取。 - 其他用户 (
r--): 只能读取。
修改权限 (chmod)
chmod 命令用于修改文件或目录的权限。
使用方法:
可以使用符号模式(u, g, o, a (all) 和 +, -, =)来添加、删除或设置权限。

示例:
- 为所属组添加写入权限:
1
chmod g+w error.log


文件所有权
所有权概念
- 用户 (User): 文件或目录的创建者,即所有者。
- 组 (Group): 一个用户组,可以共享文件访问权限。
修改所有权
chown 命令
chown 命令用于更改文件或目录的所有者和/或所属组。
使用方法:
1 | chown [选项] 新所有者[:新组] 文件或目录 |
示例:
- 将
file.txt的所有者更改为user1:1
chown user1 file.txt
- 同时更改所有者和所属组:
1
chown user1:group1 file.txt
chgrp 命令
chgrp 命令仅用于更改文件或目录的所属组。
使用方法:
1 | chgrp [选项] 新组 文件或目录 |
示例:
- 将
file.txt的所属组更改为group1:1
chgrp group1 file.txt
递归更改 (-R)
-R 选项可以递归地更改目录及其所有内容的所 有权。
示例:
- 递归地将
/data目录的所有权赋予user1:1
chown -R user1 /data