【LINUX】LINUX权限

文章介绍:

本文主要介绍有关LINUX的权限及其相关知识,深入了解LINUX操作系统的管理机制。

用户分类:

一个国家,要想有好的管理和规划,必须要有贤明的领导人和勤劳肯干的群众。领导人相对于普通群众,最重要的是他拥有更高的权限以便统领全局。
为了管理好LIUNX这个“大家庭”,其内部特定划分了root用户和普通用户。

root用户:   也称超级用户,基本不受权限的限制
普通用户:    由root用户新建的用户,权限有一定限制

root切换到普通用户:

使用su 指令
su + 用户名

[root@xxx ~]# su okk
[okk@xxx root]$ whoami
okk

普通用户切换到root:

使用exit指令
有快捷键 ctrl + d

[okk@xxx root]$ exit
exit
[root@xxx ~]# whoami
root

提权操作:

特别注意的是,在本身是普通用户的情况下,如果只是想要让有限个指令能拥有root的权限,可以通过提权做到。
语法: sudo + 指令

但是普通用户不是想提权就可以做到的。
如果使用的是adduser新建的用户,没有颁发执行sudo,系统是不信任此操作的。
除非将用户加入到系统的信任白名单中。

权限:

上文由用户的分类引出分类的依据,也是引出了LINUX的核心概念之一 —— 权限。
简单地说,权限就是用户能不能干某件事。这牵扯到用户的身份和事物的属性。

从事物的属性出发,在LINUX中因为“万物都可视为文件”,着重看的是文件属性
在这里插入图片描述
文件名没什么好说的,和我们熟悉的windous差不多,不过多出一些在LIUNX环境下运行的特定后缀名。
看着第一列,其可以帮我们快速判断文件的类型。
常见的文件类型如下:

-:  普通文件:  文本,可执行文件,库等
d:  目录文件
b:  块设备文件  磁盘文件
c:  字符设备文件  键盘/显示器文件
p:  管道文件     用来进行通信的

在LINUX中,文件的后缀名不是那么重要,尤其对于可执行程序而言,只要该文件有可执行的权限,通过一定的指令都可以跑起来。主要看的,还是第一列所代表的文件类型。

在这里插入图片描述
让我们看看具体有哪些权限。
第二列到第十列都是文件所具有的权限,三三为组,因此我们目前只需看前三列。
权限的类型分为:

r:   文件拥有读权限
w:  文件拥有写权限
x:  文件拥有可执行权限
-:  对应的权限位置没有权限

每一组中权限对应的位置是  rwx

接下来看看身份:
用户的身份分类除了有root和普通用户这一分类外,还有另外一种分类。

拥有者:  一般一个文件的创建者就是所有者
其他人:  除拥有者外都可以被广泛定义为其他人,权限有所限制
所属组:  为了弥补其他人的权限限制,又不想让无关系的用户接触文件的某些属性,特地开一个组。
在组中的成员可以使用原本不开放的权限

这两种分类方法是互补的,root和普通用户更多地是针对某一个用户,刚刚提到的分类是对这个用户的一个身份表示。
在这里插入图片描述
在这里插入图片描述

修改权限:

使用chmod 修改权限。

语法: chmod 所属身份+/-权限  文件名
原来的权限:
drwxr-xr-x 4 root root 4096 Apr 21 11:50 test

减权限:
chmod a-rwx test
d--------- 4 root root 4096 Apr 21 11:50 test

加权限:
chmod a+rx test
dr-xr-xr-x 4 root root 4096 Apr 21 11:50 test

所属身份:
u 表示拥有者   g  表示所属组   o表示其他人  a表示全部

因为是三三分组,在计算机语言中我们常用的进制有八进制,因此每一组都可以用一个八进制数来表示。

比如说rwx   其二进制表示111 ,转换成八进制就为7

因此,r-xr-xr-x  可以表示为555

chmod 333 test
d-wx-wx-wx 4 root root 4096 Apr 21 11:50 test

权限的使用:

权限的使用和用户的身份息息相关。
在LINUX中,一个用户在对文件进行操作前会看其身份。如果该用户是拥有者,那在具体操作时会看向拥有者所具有的权限。
LINUX在具体操作时只会认定三组权限中的一组进行操作。
权限组的优先级为:拥有者 > 所属组 > other。

初始权限:

有没有想过,在我们创建文件时系统就给文件加上权限了。
在LINUX中,默认给普通文件加的权限是666。
默认给目录文件加的权限是777。

但实际上:

目录文件的权限是755
 mkdir okk
 drwxr-xr-x 2 root root 4096 Jul 17 15:15 okk

普通文件的权限是644
-rw-r--r-- 1 root root    0 Jul 17 15:17 okk.txt

这里就涉及到了权限掩码。
通过 umask指令查询权限掩码。

[root@xxx ~]# umask
0022

不必在意第一位,只看后三位

凡是在umask中出现的权限,都不会在最终的文件权限中出现。
这是通过位运算得来的。

最终权限 = 起始权限 &  (~  权限掩码)

权限掩码可以更改:

[root@xxx ~]# umask
0022
[root@xxx ~]# umask 0001
[root@xxx ~]# umask
0001

权限的功能:

我们看到普通文件和目录文件的起始权限不同,这是与文件所需的功能相联系。

对应目录文件而言:
r:   是否允许用户查看指定目录/文件的内容
w:   是否允许用户在当前目录/文件下进行创建,删除,移动文件,或者是修改文件数据
x:	 是否允许用户进入相应的目录/文件是否可执行

普通文件的权限相较于目录文件,正好少了x。
对于普通文件而言,不可能进入目录;可执行文件占比普通文件不是很大,需要时可以自己添加。

文件的共享与删除:

文件的共享和权限要受到目录权限的限制。
对于每一个普通用户,其家目录的权限都是700,这很好地保护了用户个人的相关信息。
但有些时候,普通用户之间想进行文件数据的共享,为了实现这一目的,可以在根目录下创建shared目录。

drwxrwxrwx   2 root root  4096 Jul 17 16:04 shared

但是,一个文件是否可以被删除,并不由文件本身决定,而是由文件所在的目录决定。
在shared文件中,任何用户都可以随意地删除文件。
那么将w权限去掉?不行,那样文件就无法修改了。
为了解决这一问题,LINUX有粘滞位。只允许文件拥有者和root用户删除此文件。
LIUNX也有tmp文件,其为共享目录。

chmod o+t shared
drwxrwxrwt   2 root root  4096 Jul 17 16:04 shared

注意到最后一位是t,这就是粘滞位
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux 操作系统中,文件和目录都有权限属性,用于控制对它们的访问权限。这些权限属性包括读、、执行权限,以及文件所有者、所属组等信息。以下是一些常用的 Linux 权限相关的命令和操作: 1. 查看文件和目录权限 使用 `ls -l` 命令可以查看文件和目录的权限信息: ``` ls -l file_name ls -l directory_name ``` 其中,`file_name` 是要查看权限文件名称,`directory_name` 是要查看权限的目录名称。 2. 修改文件和目录权限 使用 `chmod` 命令可以修改文件和目录的权限: ``` chmod permissions file_name chmod permissions directory_name ``` 其中,`permissions` 是要设置的权限,可以使用数字或符号两种方式设置。数字方式的权限设置方式为三位数,每一位分别代表所有者、所属组和其他用户的权限。符号方式的权限设置方式为 `u`(所有者)、`g`(所属组)、`o`(其他用户)和 `a`(所有用户),以及 `+`(添加权限)、`-`(删除权限)和 `=`(设置权限)等符号。 例如,要将文件 `file.txt` 的所有者权限设置为可读,所属组权限设置为只读,其他用户权限设置为不可访问,可以使用以下命令: ``` chmod 640 file.txt ``` 3. 修改文件所有者和所属组 使用 `chown` 命令可以修改文件所有者和所属组: ``` chown owner_name file_name chown owner_name:group_name file_name ``` 其中,`owner_name` 是要设置为文件所有者的用户名,`group_name` 是要设置为文件所属组的组名。 例如,要将文件 `file.txt` 的所有者设置为 `user1`,所属组设置为 `group1`,可以使用以下命令: ``` chown user1:group1 file.txt ``` 以上是一些常用的 Linux 权限相关的命令和操作。在 Linux 系统中,文件和目录的权限管理非常重要,可以保护文件和目录的安全性,防止未经授权的访问和操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值