許可權除了rwx外還有其他的特殊許可權
suid:讓執行者臨時擁有屬主的許可權(只對擁有執行許可權的二進位制程式有效)
例:所有使用者都可以通過passwd命令來修改自己的密碼,但密碼儲存在了/etc/shadow檔案裡,而檔案的預設許可權是000,也就是除了屬主root外其他使用者沒有任何對該檔案操作的許可權,但如果對passwd命令加上suid許可權位,那麼就可以讓普通使用者臨時獲得程式所有者root的身份來更改密碼資訊到shadow檔案裡了,可以看到:
[root@okaka desktop]# ls -l /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 jan 30 2014 /usr/bin/passwd
裡面的s許可權就是suid了
setgid針對檔案
1. 只有可執行檔案才能設定sgid許可權
2. 命令執行者要對該檔案擁有x許可權
3. 命令在執行時,組身份公升級為該檔案的所屬組
4. setgid許可權與setuid一樣,只在檔案(程式)執行過程中有效
舉例mlocate 命令
mlocate命令通過查詢/var/lib/mlocate/mlocate.db檔案中的快取資料來查詢檔案位置,但是可以看出,/var/lib/mlocate/mlocate.db檔案的other許可權是---,普通使用者沒有rwx許可權
bl@ubuntumma:~$ ls -l /usr/bin/mlocate
-rwxr-sr-x 1 root mlocate 39520 jun 20 2013 /usr/bin/mlocate
bl@ubuntumma:~$ ls -l /var/lib/mlocate/mlocate.db
-rw-r-----1 root mlocate 1889860 aug 26 06:34 /var/lib/mlocate/mlocate.db
普通使用者bl執行mlocate時,會得到mlocate檔案的組許可權,也就是說bl臨時變成了mlocate檔案所屬組(mlocate組)的成員,而/var/lib/mlocate/mlocate.db檔案的所屬組也是mlocate組,並且/var/lib/mlocate/mlocate.db組許可權是r--,也就是mlocate組的成員都可以檢視/var/lib/mlocate/mlocate.db檔案。這樣,普通使用者bl就可以通過mlocate命令檢視/var/lib/mlocate/mlocate.db檔案鳥。
和suid類似,sgid是讓執行者臨時擁有所屬組的許可權(只對擁有執行許可權的二進位制程式有效)
setgid針對目錄
1. 普通使用者bl需要擁有目錄 testdir/的rx許可權
2. bl在testdir/中的有效組會變成testdir/目錄的所屬組(testgroup)
3. bl在testdir/中新建檔案的預設組都會屬於testgroup,而不是bl的所屬組
setgid基本沒鳥用,不用,不用
設定setgid
2代表sgid
chmod 2755 檔名
chmod g+s 檔名
Linux筆記之身份與許可權2 檔案許可權和歸屬
linux系統中一切都是檔案,檔案和目錄的所屬與許可權,分別用來規定所有者 所有組 其餘人的讀 寫 執行許可權 讀read 寫write 執行xexcute。也可分別用4 2 1表示 某檔案許可權為7代表可讀可寫可執行 4 2 1 5代表可讀可執行 4 1 下面是例子 root okaka desk...
Linux使用者身份與檔案許可權學習筆記
uid user identification uid具有唯一性,可以通過uid進行區分使用者的身份 gid group identification 可以把多個使用者加入到乙個組,方便分配許可權 在linux系統中建立每個使用者時,將自動建立乙個與其同名的基本使用者組,而且這個基本使用者組只有該使...
linux使用者身份與檔案許可權
useradd 引數作用 d指定使用者的家目錄 預設為 home username e賬戶的到期時間,格式為 yyyy mm dd.u指定該使用者的預設 uid g指定乙個初始的使用者基本組 必須已存在 g指定乙個或多個擴充套件使用者組 n不建立與使用者同名的基本使用者組 s指定該使用者的預設 sh...