特殊权限、软硬链接

简介:

sset_uid的权限

除了所有者之外的其他用户临时拥有所有者的身份。(前提是一个二进制可执行文件),目录页可以设置但是没意义

[root@localhost ~]# ll /usr/bin/passwd

-rwsr-xr-x. 1 root root 27832 6月  10 2014 /usr/bin/passwd

 

[root@localhost ~]# ll -d /usr/bin/ls

-rwxr-xr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

[root@localhost ~]# chmod u+s /usr/bin/ls

[root@localhost ~]# ll /usr/bin/ls

-rwsr-xr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

 

[root@localhost ~]# chmod u=rws /usr/bin/ls

[root@localhost ~]# ll /usr/bin/ls   //S也可以执行

-rwSr-xr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

[root@localhost ~]# chmod u+x /usr/bin/ls

[root@localhost ~]# ll /usr/bin/ls

-rwsr-xr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

 

2.19 特殊权限set_gid

sset_gid的权限

执行文件的普通用户拥有所有组的身份

[root@localhost ~]# ll /usr/bin/ls

-rwxr-xr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

[root@localhost ~]# chmod g+s /usr/bin/ls

[root@localhost ~]# ll /usr/bin/ls

-rwxr-sr-x. 1 root root 117616 6月  10 2014 /usr/bin/ls

 

给目录增加set_gid权限后,在目录下创建子目录或者文件所属组的名字都是设置set_gid的组名保持一致

[root@localhost ~]# chmod g+s lsx

[root@localhost ~]# touch lsx/2.txt

[root@localhost ~]# ll lsx/

总用量 0

-rw-r--r--. 1 root root  0 10月 21 02:34 1.txt

-rw-r--r--. 1 root user1 0 10月 21 02:37 2.txt

 

2.20 特殊权限stick_bit

stick_bit:防删除位(靠父级目录决定的)

[root@localhost ~]# ll -d /tmp/  //该目录下防止其他用户删除自己的文件。除了root

drwxrwxrwt. 10 root root 4096 10月 21 02:28 /tmp/

 

[user1@localhost tmp]$ whoami

user1

[user1@localhost ~]$ pwd

/home/user1

[user1@localhost ~]$ mkdir lsx

[user1@localhost ~]$ mkdir lsx/lshx

[user1@localhost ~]$ mkdir lsx/1.txt

[user1@localhost ~]$ ll  //目录可读写、执行

drwxrwxrwx. 4 user1 user1 29 10月 21 03:01 lsx

[user1@localhost ~]$ ll lsx/  //

drwxrwxr-x. 2 user1 user1 6 10月 21 03:01 1.txt

drwxrwxr-x. 2 user1 user1 6 10月 21 03:01 lshx

 

User2用户

[user2@localhost lsx]$ ls

1.txt  lshx

[user2@localhost lsx]$ rm -rf 1.txt/  //其他用户可以删除user1用户创建的目录下的文件是因为该文件所在目录的文件权限为777,而不是看删除文件本身的权限

[user2@localhost lsx]$ ll

drwxrwxr-x. 2 user1 user1 6 10月 21 03:01 lshx

 

2.21 软链接文件

[root@localhost ~]# ls -l /bin  //bin是软链接,源文件在/usr/bin

lrwxrwxrwx. 1 root root 7 10月 15 22:36 /bin -> usr/bin

软链接:

[root@localhost ~]# ln -s 源文件 软链接文件

 

[root@localhost ~]# ln -s /tmp/yum.log /root/111  //软链接文件

[root@localhost ~]# ll

lrwxrwxrwx. 1 root root  12 Oct 21 03:56 111 -> /tmp/yum.log

 

[root@localhost ~]# ln -s /tmp/lsx /root/222  //软链接目录

[root@localhost ~]# ll

lrwxrwxrwx. 1 root root   8 Oct 21 03:59 222 -> /tmp/lsx

 

相对路径设置软链接弊端,当目录改名时会出现问题。尽量使用绝对路径设置软链接

[root@localhost tmp]# ln -s yum.log lsx.log  //相对路径设置软链接

[root@localhost tmp]# ls -l

lrwxrwxrwx. 1 root  root    7 Oct 21 04:04 lsx.log -> yum.log

 

生产场景:

[root@localhost tmp]# df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/sda3        11G  903M  9.8G   9% /

devtmpfs        260M     0  260M   0% /dev

tmpfs           265M     0  265M   0% /dev/shm

tmpfs           265M  4.4M  261M   2% /run

tmpfs           265M     0  265M   0% /sys/fs/cgroup

/dev/sda1       197M   81M  117M  41% /boot

比如:有一个服务lsx,写日志到了/boot/lsx.log下面,把/boot/lsx.log写的很大。

怎么把/boot/lsx.log,挪到/分区下。因为这个服务路径不能动,所以

cp /boot/lsx.log /lsx.log

ln -s /lsx.log /boot/lsx.log

 

2.22 硬链接文件

 

[root@localhost ~]# ll

total 4

-rw-------. 1 root root 973 Oct 15 22:41 anaconda-ks.cfg

drwxr-xr-x. 2 root root  16 Oct 21 04:19 lsx

 

硬链接:

1.不支持目录做硬链接

2.硬链接时间和大小、inode和源文件一样

3.删除源文件对硬链接没影响,软连接异常

4.真正存文件的是inode(多个硬链接指向一个inode,但是至少留一个硬链接),里面存放数据的信息,inode只占一份空间

5.硬链接不能跨分区(各个分区初始化inode已经分好了)

[root@localhost ~]# ln anaconda-ks.cfg 1_hard.txt

[root@localhost ~]# ln -s anaconda-ks.cfg 1_soft.txt

[root@localhost ~]# ll

-rw-------. 2 root root 973 Oct 15 22:41 1_hard.txt

lrwxrwxrwx. 1 root root  15 Oct 21 04:41 1_soft.txt -> anaconda-ks.cfg

-rw-------. 2 root root 973 Oct 15 22:41 anaconda-ks.cfg



本文转自 虾米的春天 51CTO博客,原文链接:http://blog.51cto.com/lsxme/1975890,如需转载请自行联系原作者

相关文章
|
存储 Linux 索引
【Linux】—— 详解软硬链接
【Linux】—— 详解软硬链接
|
16天前
|
存储 Linux Shell
【Linux】15. 文件系统与软硬链接
【Linux】15. 文件系统与软硬链接
29 6
|
27天前
|
Linux 应用服务中间件
Linux命令——ln命令创建和删除软、硬链接
Linux命令——ln命令创建和删除软、硬链接
9 0
|
3月前
|
存储 数据管理 Linux
Linux之文件系统与软硬链接
Linux之文件系统与软硬链接
45 0
|
9月前
|
Linux
【Linux命令200例】chgrp更改文件或目录的组所有权
chgrp是Linux系统中的一个命令,用于更改文件或目录的组所有权。chgrp命令可以将指定文件或目录的组所有权更改为指定的组。
|
存储 Linux 索引
软硬连接基本介绍
软硬连接基本介绍
197 1
软硬连接基本介绍
|
10月前
|
存储 Linux 索引
文件系统和软硬链接
文件系统和软硬链接
|
存储 Linux Windows
理解文件系统/inode的概念/磁盘/软硬链接
本文目标:⭐理解文件系统中inode的概念⭐认识软硬链接,对比区别。讲解了文件系统,加深了对文件的理解,与此同时对于磁盘的理解也有很大的帮助!
理解文件系统/inode的概念/磁盘/软硬链接

热门文章

最新文章