基本权限UGO以及三个相关命令

Linux 系统中文件的 ugo 权限是 Linux 进行权限管理的基本方式。本文将介绍 ugo 权限的基本概念。
文件的所有者和组
Linux 文件的 ugo 权限把对文件的访问者划分为三个类别:文件的所有者、组和其他人。所谓的 ugo 就是指 user(也称为 owner)、group 和 other 三个单词的首字母组合。
文件的所有者
文件的所有者一般是创建该文件的用户,对该文件具有完全的权限。在一台允许多个用户访问的 Linux 主机上,可以通过文件的所有者来区分一个文件属于某个用户。当然,一个用户也无权查看或更改其它用户的文件。
文件所属的组
假如有几个用户合作开发同一个项目,如果每个用户只能查看和修改自己创建的文件就太不方便了,也就谈不上什么合作了。所以需要一个机制允许一个用户查看和修改其它用户的文件,此时就用到组的概念的。我们可以创建一个组,然后把需要合作的用户都添加都这个组中。在设置文件的访问权限时,允许这个组中的用户对该文件进行读取和修改。
其他人
如果我想把一个文件共享给系统中的所有用户该怎么办?通过组的方式显然是不合适的,因为需要把系统中的所有用户都添加到一个组中。并且系统中添加了新用户该怎么办,每添加一个新用户就把他添加到这个组中吗?这个问题可以通过其他人的概念解决。在设置文件的访问权限时,允许其他人户对该文件进行读取和修改。
使用 ll 命令可以查看文件的属性信息:
在这里插入图片描述
(这里仅取一部分作解释)
第一组指明文件的类型和 ugo 权限信息。
第二组是对文件的引用计数。
第三组是文件的所有者。
第四组是文件所属的组。
其它的信息我们暂时忽略。

文件类型
第一组的第一个字符描述文件的类型,常见的类型有如下几种:
d 表示目录
- 表示普通文件

l 表示链接文件

b 表示块设备文件

c 表示字符设备文件

s 表示 socket 文件

下面让我们来详细的解释一下读写执行的权限。
r (read):可以读取文件的实际内容,比如读取文本文件内的文字等。
w (write):可以编辑、增加、删除文件的内容(但不含删除该文件)。
x (execute):该文件具有可以被系统执行的权限。
可以看出,对于文件来说,rwx 主要针对的是文件的内容。
保存用户和组的文件
用户和组的信息分别记录在 /etc/passwd、/etc/group 文件中。可以直接以读取文本文件的方式查看其内容:
接下来我们介绍如何通过下面的命令修改文件权限相关的信息:
chown :改变文件所有者

chgrp :改变文件所属的组

chmod :改变文件的权限
1 chown
将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。
命令格式:
chown[选项]…[所有者][:[组]]文件…
命令功能:通过chown改变文件的拥有者和群组。在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。

eg 1 创建用户 alice 创建组hr 创建文件file1 用于后续实验操作
查看文件file1 的具体信息,并将其主 组改写alice.hr(chown改属主,组)
基本权限UGO以及三个相关命令_第1张图片
2 chgrp 命令
chgrp 命令用于改文件的属组(直接写组名)
eg2 把文件file1的属组改成it
基本权限UGO以及三个相关命令_第2张图片
3 chmod 命令
chmod 命令用来变更文件或目录的权限
格式chmod(选项)(参数)
在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。

 a    All,即全部的用户,包含拥有者,所属群组以及其他用户;
 r    读取权限,数字代号为“4”;
 w    写入权限,数字代号为“2”;
 x    执行或切换权限,数字代号为“1”;
 -    不具任何权限,数字代号为“0”;
 s    特殊功能说明:变更文件或目录的权限。

例如
u+r (属主增加读)
chomd g - w file1 (属组减少写)
o=x (其他人执行)
eg3 对文件file1的属主增加执行
基本权限UGO以及三个相关命令_第3张图片

eg4 所有人都赋予读写执行
基本权限UGO以及三个相关命令_第4张图片
eg5 所有人没有权限
基本权限UGO以及三个相关命令_第5张图片
eg6 使用数字,属主读写执行,属组读写,其他用户只读
基本权限UGO以及三个相关命令_第6张图片
实际操作
针对hr部门的访问设置权限如下:
root用户和hr组的员工可以读写执行
其他用户没有任何权限

执行解析:
hr组我们已经创建,
创建用户hr1 hr2属于组hr,
创建目录/home/hr 让其属于组hr
将目录设置权限::root用户和hr组的员工可以读写执行
其他用户没有任何权限
基本权限UGO以及三个相关命令_第7张图片
验证
基本权限UGO以及三个相关命令_第8张图片
重要: r、w、x 权限对文件和目录的意义
文件:
r:可获取文件的数据;
w: 可修改文件的数据;
x:可将此文件运行为进程;
目录:
r:可使用 ls 命令获取其下的所有文件列表;
w: 可修改此目录下的文件列表;即创建或删除文件;
x: 可 cd 至此目录中,且可使用 ls -l 来获取所有文件的详细属性信
息;
对文件的影响
基本权限UGO以及三个相关命令_第9张图片
虽然文件设置为最高权限,可是其他用户对文件并不能删除,因为文件上的目录并不对其他用户开放w权限
基本权限UGO以及三个相关命令_第10张图片
上面的例子验证了 (w: 可修改此目录下的文件列表;即创建或删除文件;)的含义。

基本权限UGO以及三个相关命令_第11张图片
上面的案例进一步验证了

要alice用户 删除/下的任何文件?
基本权限UGO以及三个相关命令_第12张图片

你可能感兴趣的:(基本权限UGO以及三个相关命令)