美文网首页
Linux / Unix中的文件权限与示例

Linux / Unix中的文件权限与示例

作者: 程序员will | 来源:发表于2019-07-19 14:42 被阅读0次

Linux / Unix中的文件权限与示例

Linux是UNIX的克隆,UNIX是多用户操作系统,可以被许多用户同时访问。Linux也可以在大型机和服务器中使用而无需任何修改。但这引发了安全问题,因为未经请求或恶意的用户可能会破坏,更改或删除关键数据。为了有效的安全性,Linux将授权分为两个级别。

  1. 所有权
  2. 允许

在本教程中,你将学习 -

[TOC]

权限所有权的概念在Linux中至关重要。在这里,我们将讨论它们。让我们从所有权开始

Linux文件的所有权

Unix / Linux系统上的每个文件和目录都分配了3种类型的所有者,如下所示。

用户

用户是文件的所有者。默认情况下,创建文件的人成为其所有者。因此,用户有时也被称为所有者。

用户组可以包含多个用户。属于组的所有用户对该文件具有相同的访问权限。假设你有一个项目,许多人需要访问文件。你可以将所有用户添加到组中,而不是手动为每个用户分配权限,并将组权限分配给文件,以便只有该组成员才能读取或修改文件。

其他

有权访问文件的任何其他用户。此人既没有创建文件,也没有属于可以拥有该文件的用户组。实际上,它意味着其他所有人。因此,当你为其他人设置权限时,它也被称为世界的设置权限。

现在,最大的问题是Linux如何区分这三种用户类型,以便用户“A”不会影响包含其他用户“B”重要信息/数据的文件。这就像你不希望在Linux计算机上工作的同事查看你的图像。这是权限设置的位置,它们定义用户行为

让我们了解Linux上的权限系统

权限

UNIX / Linux系统中的每个文件和目录都具有为上面讨论的所有3个所有者定义的以下3个权限。

  • 阅读:此权限授予你打开和读取文件的权限。对目录的读取权限使你能够列出其内容。
  • 写入:写入权限使你有权修改文件的内容。对目录的写入权限使你有权添加,删除和重命名存储在目录中的文件。考虑一种情况,你必须在文件上写入权限,但对存储文件的目录没有写入权限。你将能够修改文件内容。但是你将无法从目录重命名,移动或删除该文件。
  • 执行:在Windows中,可执行程序通常具有扩展名“.exe”,你可以轻松运行。在Unix / Linux中,除非设置了执行权限,否则无法运行程序。如果未设置执行权限,你可能仍然可以查看/修改程序代码(提供读写权限),但不能运行它。
image

ls - l在终端上给出

ls  -  l
image

在这里,我们突出显示了'-rw-rw-r--',这个奇怪的代码是告诉我们给予所有者,用户组和世界的权限的代码。

这里,第一个' - '表示我们选择了一个file.p>

image

否则,如果它是一个目录,则会显示d

image

权限很容易记住。

r = 读权限
w = 写权限
x = 执行权限
- = 无权限

将这段代码分成四部分

  • 第一部分是’r',说明这是一个文件;
  • 第二部分'rw-'表示所有者权限;
  • 第三部分'rw-'表示用户组权限;
  • 第四部分'r--'表示任何人权限;

代码的第一部分是'rw-'。这表明所有者'Home'可以:

image
  • 阅读文件
  • 编写或编辑文件
  • 由于执行位设置为“ - ”,因此无法执行该文件。

根据设计,许多Linux发行版如Fedora,CentOS,Ubuntu等都会将用户添加到与用户名相同的组名中。因此,用户'tom'被添加到名为'tom'的组中。

第二部分是'rw-'。它对于用户组'Home'和组成员可以:

  • 阅读文件
  • 编写或编辑文件

第三部分是针对世界的,意味着任何用户。它说'r--'。这意味着用户只能:

  • 阅读文件
image

使用'chmod'命令更改文件/目录权限

假设你不希望你的同事看到你的个人图片。这可以通过更改文件权限来实现。

我们可以使用' chmod'命令代表'更改模式'。使用该命令,我们可以在所有者,组和世界的文件/目录上设置权限(读,写,执行)。 句法:

chmod permision filename

有两种方法可以使用该命令 -

  1. 绝对模式
  2. 符号模式

绝对(数字)模式

在此模式下,文件权限不表示为字符,而是三位数的八进制数

下表给出了所有权限类型的数字。

许可类型 符号
0 没有许可 ---
1 执行 - X
2 -W-
3 执行+写入 -wx
4 R--
5 读+执行 RX
6 读+写 RW-
7 读+写+执行 RWX

让我们看一下chmod命令的运行情况。

image

在上面给出的终端窗口中,我们已将文件'sample的权限更改为'764'。

image

'764'绝对代码说明如下:

  • 所有者可以读,写和执行
  • 用户组可以读写
  • 世界只能阅读

这显示为'-rwxrw-r-

符号模式

在绝对模式下,你可以更改所有3个所有者的权限。在符号模式下,你可以修改特定所有者的权限。它利用数学符号来修改文件权限。

操作者 描述
+ 添加文件或目录的权限
- 删除权限
= 设置权限并覆盖先前设置的权限。

各用户类型的代表是 -

用户表示
u 用户/所有者
g
o 其他
a 所有

我们不会在像755这样的数字中使用权限,而是使用像rwx这样的字符。让我们看一个例子

image

改变所有权和集团

要更改文件/目录的所有权,可以使用以下命令:

chown user

如果要更改用户以及文件或目录的组,请使用该命令

chown user: groupfilename

让我们看看这个在行动

image

如果你只想更改组所有者,请使用该命令

chgrp group_name filename

' chgrp'代表变革组。

image

Tips

  • 文件/ etc / group包含系统中定义的所有组
  • 你可以使用命令“groups”查找你所属的所有组
image
  • 你可以使用命令newgrp作为默认组以外的组的成员
image
  • 你不能拥有2个拥有相同文件的组。
  • 你在Linux中没有嵌套组。其中一组不能成为其他组的子组
  • x-执行目录意味着允许“输入”目录并获得对子目录的可能访问权限
  • 你可以在“文件和目录”上设置其他权限,这些权限将在以后的高级教程中介绍

总结

  • 作为多用户系统的Linux使用权限和所有权来实现安全性。
  • Linux系统上有三种用户类型即。用户,组和其他
  • Linux将文件权限划分为读,写和执行,由r,w和x表示
  • 可以通过'chmod'命令更改文件的权限,该命令可以进一步分为绝对模式和符号模式
  • 'chown'命令可以更改文件/目录的所有权。使用以下命令:chown user file或chown user:group file
  • 'chgrp'命令可以更改组所有权chrgrp组文件名
  • x - 执行目录是什么意思?答:被允许“进入”一个目录并获得对子目录的访问权限。

相关文章

  • Linux / Unix中的文件权限与示例

    Linux / Unix中的文件权限与示例 Linux是UNIX的克隆,UNIX是多用户操作系统,可以被许多用户同...

  • Linux命令之文件管理 (四)

    Linux chmod命令 Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chm...

  • 每天一条linux命令——chmod

    Linux chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令 Linux/Unix ...

  • Linux系统权限

    Linux系统权限 Linux操作系统是基于Unix的多用户以及权限隔离的文件系统,想要掌握Linux,理解Lin...

  • 十 修改权限命令

    前言 如何对一个文件/目录的权限进行管理呢?Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其...

  • 每天一个Linux命令(04):chmod 命令

    Linux / Unix 的文件调用权限分为三级:文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如...

  • Linux常用命令,选项,及使用示例 file 文件:判断文件类型 dos2unix file windows文件...

  • 说说Linux文件权限那些事儿

    首先我们要知道Linux的标准文件权限和安全机制与Unix的一致,因此要学习这方面的知识,我们可以参考一下Unix...

  • 一枚Linux命令 -- chmod

    一、前置内容Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控...

  • linux修改权限的相关命令

    Linux命令-用户、权限管理 用户是Unix/Linux系统工作中重要的一环,用户管理包括用户与组账号的管理。 ...

网友评论

      本文标题:Linux / Unix中的文件权限与示例

      本文链接:https://www.haomeiwen.com/subject/vptslctx.html