1. 特殊权限

1.1 特殊权限set_uid

 

set_uid可以让“执行该命令的用户临时拥有该命令所有者的权限”。

查看passwd命令的权限;

特殊权限及软链接、硬链接文件

可以看到passwd命令的权限为“rwsr-xr-x”,可以看到root用户拥有读写和执行的权限,而普通用户只有读和执行的权限,而实际上,普通用户也可执行passwd命令来修改密码。

所以设置了set_uid的权限,它的标志是“s”,可以让普通用户在执行passwd命令时,临时拥有root用户的权限,从而修改密码。

对别的文件设置set_uid权限,如下:

特殊权限及软链接、硬链接文件

可以看到ls命令也有了“s”权限,删除“s”权限执行命令。

特殊权限及软链接、硬链接文件

如果使用“u=rws”命令,不会得到“s”权限,原因是没有“x”权限;

特殊权限及软链接、硬链接文件

可以看到,加上“x”权限后,ls命令才会有“s”权限。

1.2 特殊权限set_gid

 

set_gid可以让“执行该命令的用户临时拥有该命令所有组的权限”。

set_gid作用于目录上时,创建的子目录和子文件都将和该目录的所属组保持一致。例如:

特殊权限及软链接、硬链接文件

 

当取消set_gid权限后,新创建的子目录和子文件并不会受到该目录所属组的影响。

 

特殊权限及软链接、硬链接文件

1.3 特殊权限stick_bid

为了了解stick_bid权限的用法, 先看下tmp目录的权限;

[[email protected] ~]# ll -d /tmp
drwxrwxrwt. 32 root root 4096 3月  30 21:13 /tmp

可以看到/tmp目录对普通用户的权限是‘rwt’,‘t’这个权限位表示如果a用户在此目录下创建了文件,那么用户b就不能对该文件进行删除(root用户除外),只能对该文件进行创建和修改。‘t’权限位是针对目录的。

在yuioplv这个用户下创建一个名为yuioplv的文件;

特殊权限及软链接、硬链接文件

在yu这个用户下去删除该文件,提示“不允许的操作”。

[[email protected] tmp]$ ll
总用量 0
drwxrwxr-x  2 yuioplv yuioplv  6 3月  31 00:45 ll
drwx------. 3 root    root    17 3月  20 07:50 systemd-private-0aeaad95fcee44b3a28b619ddcfedd8f-chronyd.service-45s7eP
-rw-rw-r--  1 yuioplv yuioplv  0 3月  31 00:50 yuioplv
[[email protected] tmp]$ rm -f yuioplv
rm: 无法删除"yuioplv": 不允许的操作

2. 软链接文件

软链接文件类似于Windows的快捷方式,文件实质上是一个文本,其中包含的有另一文件的位置信息。

查看/lib目录,实际上lib目录的位置为:usr/lib;

[[email protected] ~]# ll /lib
lrwxrwxrwx. 1 root root 7 3ÔÂ  20 07:39 /lib -> usr/lib

也可以自定义软链接文件,可以对文件和目录做软链接。

特殊权限及软链接、硬链接文件

一般要将软链接文件放在绝对路径。

3. 硬链接文件

硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。

对同一个文件创建硬链接和软链接,可以看到硬链接文件与源文件,创建时间等信息完全相同;

特殊权限及软链接、硬链接文件

查看inode信息,硬链接文件与源文件(互为硬链接)inode信息一致;

特殊权限及软链接、硬链接文件

删除源文件,硬链接文件不受影响,软链接文件则会报错。

特殊权限及软链接、硬链接文件

需要注意的是,硬链接只对文件有效。多个硬链接文件不会占用多个内存,因为它们的inode信息一致,实际上就是同一文件。

 

相关文章:

  • 2021-06-01
  • 2021-09-11
  • 2021-07-01
  • 2021-04-29
  • 2021-04-29
  • 2021-07-03
  • 2021-03-25
  • 2021-11-19
猜你喜欢
  • 2022-01-18
  • 2021-07-18
  • 2021-05-25
  • 2021-12-31
  • 2022-01-23
  • 2021-12-22
  • 2021-09-18
相关资源
相似解决方案