Linux系统中,文件和文件夹的权限和所有权核心概念
在Linux系统中,文件和文件夹的权限和所有权是两个核心概念,它们共同决定了用户可以对文件和文件夹执行哪些操作。
文件夹权限
Linux系统中的每个文件和文件夹都有三种类型的权限:
- 读(r):允许查看文件内容或列出文件夹内容。
- 写(w):允许修改文件内容或向文件夹中添加/删除文件。
- 执行(x):允许执行文件或进入文件夹。
这些权限可以为三种用户类型设置:
- 所有者(Owner):文件或文件夹的创建者。
- 组(Group):文件或文件夹所属的用户组。
- 其他(Others):系统中除了所有者和组用户之外的所有用户。
文件夹所有权
所有权指的是文件或文件夹的所有者和所属组。所有者可以改变文件的权限,而组用户可以基于文件的组权限来访问文件。
相关命令
-
查看权限:
ls -l
- 这个命令列出文件和文件夹的详细信息,包括权限、所有者、组和大小等。
-
改变权限:
chmod
- 例如,
chmod 755 foldername
会给文件夹的所有者全部权限,组和其他用户读和执行权限。
- 例如,
-
改变所有权:
chown
- 例如,
chown user:group filename
会将文件的所有者改为user
,组改为group
。
- 例如,
-
改变组:
chgrp
- 例如,
chgrp groupname filename
会改变文件的组。
- 例如,
-
递归改变权限:
chmod -R
- 例如,
chmod -R 755 foldername
会递归地给文件夹及其所有子文件和子文件夹设置权限。
- 例如,
-
查看文件所有者:
ls -l
- 同查看权限命令。
-
查看当前用户和组:
whoami
和groups
whoami
显示当前用户,groups
显示当前用户所属的所有组。
示例
假设你有一个名为example.txt
的文件,你想给它设置权限,使得所有者可以读、写和执行,组和其他用户只能读。
chmod 644 example.txt
如果你想改变这个文件的所有者和组:
chown username:groupname example.txt