❏ 站外平台:

Linux 权限入门指南

作者: Bryant Son 译者: LCTT qfzy1233

| 2019-07-04 13:38   评论: 12 收藏: 4    

Linux 安全权限能够指定谁可以对文件或目录执行什么操作。

与其他系统相比而言 Linux 系统的众多优点中最为主要一个便是 Linux 系统有着更少的安全漏洞和被攻击的隐患。Linux 无疑为用户提供了更为灵活和精细化的文件系统安全权限控制。这可能意味着 Linux 用户理解安全权限是至关重要的。虽然这并不一定是必要的,但是对于初学者来说,理解 Linux 权限的基本知识仍是一个明智之选。

查看 Linux 安全权限

在开始 Linux 权限的相关学习之前,假设我们新建了一个名为 PermissionDemo 的目录。使用 cd 命令进入这个目录,然后使用 ls -l 命令查看 Linux 安全管理权限信息。如果你想以时间为序排列,加上 -t 选项

ls -lt

因为这一目录下没有文件,所以这一命令执行不会返回结果。

No output from ls -l command

要了解关于 ls 命令的更多信息,请通过在命令行中输入 man ls 来查看命令手册。

ls man page

现在,让我们创建两个名为 cat.txtdog.txt 的空白文件;这一步使用 touch 命令将更为简便。然后继续使用 mkdir 命令创建一个名为 Pets 的空目录。我们可以再次使用ls -l命令查看这些新文件的权限。

Creating new files and directory

我们需要留意这个命令输出结果的两个部分。

谁拥有权限?

首先要注意的是具有访问文件/目录的权限。请注意下面红色框中突出显示的部分。第一列是指具有访问权限的用户,而第二列是指具有访问权限的

Output from -ls command

用户的类型主要有三种:用户、组和其他人(本质上既不是用户也不是组)。还有一个全部,意思是几乎所有人。

User types

由于我们使用 root 作为当前用户,所以我们可以访问任何文件或目录,因为 root 是超级用户。然而,通常情况并非如此,你可能会被限定使用你的普通用户登录。所有的用户都存储在 /etc/passwd 文件中。

/etc/passwd file

“组”的相关信息保存在 /etc/group 文件中。

/etc/passwd file

他们有什么权限?

我们需要注意的是 ls -l 命令输出结果的另一部分与执行权限有关。以上,我们查看了创建的 dog.txtcat.txt 文件以及 Pets 目录的所有者和组权限都属于 root 用户。我们可以通过这一信息了解到不同用户组所拥有的相应权限,如下面的红色框中的标示。(LCTT 译注:下图的“OWNER”应为“OTHER”)

Enforcing permissions for different user ownership types

我们可以把每一行分解成五部分。第一部分标志着它是文件还是目录:文件用 -(连字符)标记,目录用 d 来标记。接下来的三个部分分别是用户、组和其他人的对应权限。最后一部分是访问控制列表 (ACL)的标志,是记录着特定用户或者用户组对该文件的操作权限的列表。

Different Linux permissions

Linux 的权限级别可以用字母或数字标识。有三种权限类型:

  • 可读取:r4
  • 可写入:w2
  • 可执行:x1

(LCTT 译注:原文此处对应的字母标示 x 误写为 e,已更正)

Privilege types

每个字母符号(rwx)表示有该项权限,而 - 表示无该项权限。在下面的示例中,文件的所有者可读可写,用户组成员仅可读,其他人可读可执行。转换成数字表示法,对应的是 645(如何计算,请参见下图的图示)。

Permission type example

以下是一些示例:

Permission type examples

完成下面的测试,检查你是否掌握了权限管理相关的知识。

Permission type examples


via: https://opensource.com/article/19/6/understanding-linux-permissions

作者:Bryant Son 选题:lujun9972 译者:qfzy1233 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出



最新评论

[1]
来自上海的 Chrome 75.0|Windows 10 用户 发表于 2019-07-05 10:05 的评论:
750 rwx r-w ---????
来自广东广州的 Chrome Mobile 74.0|Android 10 用户 2020-03-25 22:48 8 回复
650
来自安徽淮南的 Chrome 75.0|Windows 10 用户 2019-07-29 18:19 9 回复
里面有好多错误,虽然有部分已标注
delrey [Mobile Safari 12.1|iOS 12.3] 2019-07-16 15:10 15 回复
Dj
来自湖北武汉的 Chromium 74.0|Ubuntu 用户 2019-07-05 09:59 9 回复
中间一个图里面错了,不是owner,而是others
权限还有sticky bit,setuid,setgid
文件类型还有block file,socket, link等等
来自湖北武汉的 Chromium 74.0|Ubuntu 用户 2019-07-05 09:58 12 回复
中间一个图里面错了,不是owner,而是others
权限还有sticky bit,还有setuid,setgid
来自湖北武汉的 Chromium 74.0|Ubuntu 用户 2019-07-05 09:57 8 回复
中间一个图里面错了,不是owner,而是others
权限还有sticky bit,还有setuid,setgid
来自湖北武汉的 Chromium 74.0|Ubuntu 用户 2019-07-05 09:57 13 回复
中间一个图里面错了,不是owner,而是others
权限还有sticky bit,还有setuid,setgid
来自湖北武汉的 Chromium 74.0|Ubuntu 用户 2019-07-05 09:57 8 回复
中间一个图里面错了,不是owner,而是others
权限还有sticky bit,还有setuid,setgid
az3901077 [Firefox 67.0|Windows 10] 2019-07-04 18:11 11 回复
复习了,基础的linux知识!
robin [Chrome 77.0|Mac 10.12] 2019-07-04 17:10 9 回复
学习了
来自山东临沂的 Chrome 77.0|Windows 10 用户 2019-07-04 13:42 8 回复
速度好快!
LCTT 译者
qfzy1233 🌟🌟🌟
共计翻译: 15.0 篇 | 共计贡献: 1258
贡献时间:2019-06-07 -> 2022-11-15
访问我的 LCTT 主页 | 在 GitHub 上关注我


返回顶部

分享到微信

打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。