一、特殊权限
在linux系统中,有一些特殊的权限,它们适用于极少数特殊的场景。虽然适用的场景比较少,但不代表它们不重要。比如set_uid权限,这个权限的存在,才使得操作系统的用户才能自如的更改登录口令。
在linux操作系统中,特殊权限主要有以下几个:
1、set_uid
当普通用户执行带set_uid标识位的命令文件时,将临时使用所有者的权限执行该命令。
[root@server02~]#ll/usr/bin/ls -rwxr-xr-x.1rootroot11765611月62016/usr/bin/ls [root@server02~]#chmoda+s/usr/bin/ls [root@server02~]#ll/usr/bin/ls -rwsr-sr-x.1rootroot11765611月62016/usr/bin/ls [root@server02~]#chmodu-s/usr/bin/ls [root@server02~]#ll/usr/bin/ls -rwxr-xr-x.1rootroot11765611月62016/usr/bin/ls [root@server02~]#chmodu=rws!$ chmodu=rws/usr/bin/ls [root@server02~]#ll/usr/bin/ls -rwSr-xr-x.1rootroot11765611月62016/usr/bin/ls
注:标识位会显示大写的“S”是因为没有执行权限。
2、set_gid
当普通用户执行带set_gid标识位的命令文件时,将临时使用所属组的权限执行该命令;
设置了set_gid标识位的目录,可以作用于子目录和子文件有相同的所属组。
[root@server02test]#ll 总用量0 drwxr-xr-x.4rootuser1755月3007:54test [root@server02test]#chmodg+stest [root@server02test]#touchtest/10.txt [root@server02test]#lltest/ 总用量0 -rw-r--r--.1rootuser105月3008:3210.txt
3、stick_bit
设置了stick_bit标识位的文件或目录无法被其他用户删除。
[root@server02/]#ll 总用量16 lrwxrwxrwx.1rootroot75月2706:10bin->usr/bin dr-xr-xr-x.4rootroot40965月2706:35boot drwxr-xr-x.19rootroot31605月3000:04dev drwxr-xr-x.75rootroot81925月3007:14etc drwxr-xr-x.5rootroot455月3007:14home lrwxrwxrwx.1rootroot75月2706:10lib->usr/lib lrwxrwxrwx.1rootroot95月2706:10lib64->usr/lib64 drwxr-xr-x.2rootroot611月52016media drwxr-xr-x.2rootroot611月52016mnt drwxr-xr-x.2rootroot611月52016opt dr-xr-xr-x.98rootroot05月2912:05proc dr-xr-x---.3rootroot1635月3005:40root drwxr-xr-x.21rootroot5805月2920:45run lrwxrwxrwx.1rootroot85月2706:10sbin->usr/sbin drwxr-xr-x.2rootroot611月52016srv dr-xr-xr-x.13rootroot05月2912:05sys drwxrwxrwt.10rootroot1705月3004:20tmp//tmp目录是一个典型的例子 drwxr-xr-x.13rootroot1555月2706:10usr drwxr-xr-x.19rootroot2675月2912:05var [root@server02/]#
二、链接模式
1、软链接
概念:相当于一个快捷方式,通过这个快捷方式能够更方便使用者调用文件或目录。
[root@server02tmp]#ln-stesttest-ln [root@server02tmp]#ll 总用量0 drwxr-xr-x.3rootroot185月3008:27test lrwxrwxrwx.1rootroot45月3008:43test-ln->test [root@server02tmp]#
从上面的代码可以看到,软链接占的空间资源比较少。当源文件删除时,软链接文件也就失效了。此外,需要注意的是,软链接命令推荐使用绝对路径。
2、硬链接
概念:使用同一个inode的多个文件。
[root@server02tmp]#lntesttest-hd ln:"test":不允许将硬链接指向目录 [root@server02tmp]#touch1.txt [root@server02tmp]#ln1.txt1-hd.txt [root@server02tmp]#ls-il 总用量0 16777289-rw-r--r--.2rootroot05月3008:501-hd.txt 16777289-rw-r--r--.2rootroot05月3008:501.txt 33595402drwxr-xr-x.3rootroot185月3008:27test 16958225lrwxrwxrwx.1rootroot45月3008:43test-ln->test