set_gid
- set_gid(s):可做用於文件(二進制可執行文件)和目錄。
- 至關於set_gid 設置group組的權限位。
- 能夠使用chmod g+(-) 【文件名/目錄名】 來設置權限。
- 也就是將標誌s加到gid的x標誌位,sgid用在目錄上最多。
set_gid做用
- set_gid做用在文件上時,和set_uid效果一致,會使普通用戶臨時擁有所屬組的身份
[root@hf-01 ~]# chmod u=rwx /usr/bin/ls 將ls命令權限恢復成默認初始權限
[root@hf-01 ~]# !ls
ls -l /usr/bin/ls
-rwxr-xr-x. 1 root root 117616 6月 10 2014 /usr/bin/ls
[root@hf-01 ~]# chmod g+s /usr/bin/ls 設置set_gid權限
[root@hf-01 ~]# !ls
ls -l /usr/bin/ls
-rwxr-sr-x. 1 root root 117616 6月 10 2014 /usr/bin/ls
在切換到另外一個終端2hf(1)下
[hanfeng@hf-01 ~]$ ls /root/ 將set_gid權限賦給ls,當在其餘用戶下使用ls命令時,(由於ls的所屬組是root,因此就會以root身份來執行)
11.txt 123 234 2.txt 33.txt anaconda-ks.cfg.1 ha.txt hf
[hanfeng@hf-01 ~]$ ls -ld /root/
dr-xr-x---. 5 root root 4096 10月 26 09:41 /root/
set_gid用法——>目錄
[root@hf-01 ~]# ls -l
總用量 8
-rw-r--r--. 1 root root 0 10月 26 08:39 11.txt
drwxr-xr-x. 2 root root 6 10月 26 08:39 123
drwxrwxr-x. 2 root root 6 10月 26 08:57 234
-rwxrwxrwx. 1 root root 924 10月 25 06:49 2.txt
-rw-rw-r--. 1 root root 0 10月 26 08:56 33.txt
-rw-------. 1 root root 973 8月 21 05:05 anaconda-ks.cfg.1
-rw-rw-r--. 1 root root 0 10月 26 09:41 ha.txt
dr-x--xr-x. 2 root root 18 10月 26 06:56 hf
[root@hf-01 ~]# chmod g+s 234 更改234目錄的set_gid權限
[root@hf-01 ~]# ls -ld 234
drwxrwsr-x. 2 root root 6 10月 26 08:57 234
[root@hf-01 ~]# chown :hanfeng 234 再來更改234目錄所屬組的權限
[root@hf-01 ~]# ls -ld 234
drwxrwsr-x. 2 root hanfeng 6 10月 26 08:57 234
[root@hf-01 ~]# touch 234/gurui 在目錄234下新建文件gurui
[root@hf-01 ~]# ls -l 234/ 查看全部者和全部組
總用量 0
-rw-r--r--. 1 root hanfeng 0 10月 27 07:46 gurui
[root@hf-01 ~]# mkdir 234/am 在目錄234下新建目錄am
[root@hf-01 ~]# ls -l 234/
總用量 0
drwxr-sr-x. 2 root hanfeng 6 10月 27 07:47 am
-rw-r--r--. 1 root hanfeng 0 10月 27 07:46 gurui
[root@hf-01 ~]# chmod g-s 234 去除set_gid臨時權限
[root@hf-01 ~]# touch 234/gurui111 在234目錄下新建gurui111文件
[root@hf-01 ~]# !ls 發如今root用戶下建立的文件,全部組默認都是root
ls -l 234/
總用量 0
drwxr-sr-x. 2 root hanfeng 6 10月 27 07:47 am
-rw-r--r--. 1 root hanfeng 0 10月 27 07:46 gurui
-rw-r--r--. 1 root root 0 10月 27 07:48 gurui111
[root@hf-01 ~]# mkdir 234/am1 在目錄234下新建目錄am1
[root@hf-01 ~]# ls -l 234/ 發如今root用戶下建立的目錄,全部組默認都是root
總用量 0
drwxr-sr-x. 2 root hanfeng 6 10月 27 07:47 am
drwxr-xr-x. 2 root root 6 10月 27 07:49 am1
-rw-r--r--. 1 root hanfeng 0 10月 27 07:46 gurui
-rw-r--r--. 1 root root 0 10月 27 07:48 gurui111
- 當給一個目錄設置了set_gid以後,再去這個目錄下面建立子目錄和子文件的時候,那這個子文件和子目錄的所屬組會跟着父級目錄(就是剛剛建立的set_gid權限的目錄)保持一致。
set_gid總結
- set_gid這個權限的做用,他不單單能夠做用在文件上,也能夠做用在目錄上
- 看成用在文件上,和set_uid做用相似,能夠讓執行文件的普通用戶臨時擁有所屬組的身份。
- 看成用在目錄上,在建立子目錄和子文件的時候,子目錄和子文件所屬組和該目錄的所屬組保持一致