Linux以其强大而可靠的操作系统而闻名,它具有无与伦比的安全性、稳定性和灵活性。为了维护系统的完整性和安全性,Linux以 “权限” 的形式实现了特定设置。这些权限控制谁可以访问、修改或执行文件和目录。无论你是一个新的Linux用户还是一个经验丰富的老手,了解Linux的权限对于一个安全的系统是极其重要的。在这篇文章中,我们将深入探讨什么是Linux权限,以及如何以最佳方式保持你的文件和目录的安全。
- 了解Linux的权限
- 如何查看Linux中的文件权限
- 如何改变Linux中的文件权限
- 在Linux中改变文件/目录的所有者和组
了解Linux的权限
Linux文件权限是允许用户控制谁可以访问他们的文件的特定设置。在Linux中,每个文件或目录都有一组权限,分布在三个级别的系统用户中:
- User:用户,这是指文件或目录的所有者。一般来说,创建文件/目录的用户是所有者。
- Group:组,一个组是多个用户的集合,对一个文件或目录具有相同的权限。
- Others:其他,每一个既不是所有者也不是组的成员的其他用户都属于这个类别。
这些用户中的每一个都有三种类型的文件权限,决定了用户可以执行的不同类型的操作:
- Read (r):读取,允许用户查看一个文件或目录的内容。对于一个文件,读权限意味着用户可以打印和复制文件的内容。如果是目录,有了读的权限,用户可以查看和复制目录中的文件。
- Write (w):写入,允许用户修改文件/目录的内容。当为一个用户设置了写权限时,该用户可以添加、删除甚至重命名文件或目录。
- Execute (x):执行,允许用户执行文件或访问目录。这与我们在Windows上看到的情况形成鲜明对比,可执行文件有一个”.exe” 扩展名,用户可以简单地执行它。但在Linux中,如果文件对用户来说有可执行的权限,那么用户才可以执行它。
- Dash (-):破折号,它意味着没有设置权限或没有权限。
如何查看Linux中的文件权限
现在你知道了Linux中存在哪些文件权限,让我们看看如何查看授予文件的权限。查看文件权限是非常容易的,你只需要使用这个命令:
ls -l
一旦你执行这个命令,你将看到当前位置的所有文件和目录的列表。你的输出将类似于下面的屏幕截图:
看起来很混乱?让我们试着用一个例子来理解这个问题:
在上述例子中:
- 第一个字符(-)表示文件类型;'
-
‘表示该项目是一个文件,'d
‘表示一个目录。 - 接下来的九个字符指定了该条目的权限设置(后面会有更多介绍)。
- 接下来的数字显示了该文件的链接数。默认情况下,该项目将有1。
- 下一栏显示了文件所有者的名字。
- 接着下一栏显示哪个组对该文件有访问权。
- 倒数第三栏显示了文件的大小。
- 倒数第二栏显示了文件的最近修改时间。
- 最后一栏显示文件/目录的名称。
在简化了 ls-l
命令的输出后,让我们用” rwxr-xr--
“的样本权限集来展开权限部分:
- 这里,前3个字符,'
rwx
‘表示文件所有者有读(r),写(w),和可执行(x)的权限。 - 接下来的3个字符,'
r-x
‘表示组内用户有读取(r)和可执行(x)的权限,但没有写入权限(-)。 - 最后3个字符,'
r--
‘表示所有其他用户只有读(r)权限。最后的两个破折号表示没有权限(在这种情况下没有写和执行的权限)。
因此,总的来说,前3个字符表示文件所有者的权限;第二组3个字符表示组内用户的权限,最后3个字符表示其他用户的权限。
如何改变Linux中的文件权限
要改变Linux中的文件权限,我们使用chmod命令,它代表了 “change mode”。使用chmod命令的基本语法是:
你可以与chmod搭配的一些命令选项是:
选项 | 描述 |
---|---|
-v |
为每个被处理的文件显示诊断信息 |
-c |
与 -v 的工作原理相同,只是如果有任何改变,它只显示一个诊断信息。 |
-f |
用来抑制大多数错误信息。 |
-R |
用来递归地改变文件和目录。 |
原文地址:https://www.wbolt.com/linux-file-permissions.html