歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux文件的訪問權限和文件模式

Linux文件的訪問權限和文件模式

日期:2017/2/28 16:20:22   编辑:Linux教程

SUID含義:文件的該位被設 置為1,在該文件被執行時,該文件將以所有者的身份運行,也就是說無論誰來執行這個文件,他都有文件所有者的特權,如果所有者是root的話,那麼執行人就有超級用戶 的特權了,這是該位將變成一個安全漏洞,因此不要輕易設置該位。

SGID含義:運行者將具有文件所有組的權限。

STICKY粘合位: 要求操作系統既是在可執行程序退出後,仍要在內存中保留該程序的映像,這樣做是為了節省大型程序的啟動時間,但是會占用系統資源,因此設置該位,不如把程序寫好。

set uid ;set gid;sticky bit區別

每一個文件有所有者及組編號,set uid ;set gid可以改變用戶對文件具有的權限:寫和執行.

setuid: 在執行時具有文件所有者的權限.
setgid: 設置目錄. 一個目錄被標上setgid位,此目錄下創建的文件繼承該目錄的屬性.
sticky bit: 該位可以理解為防刪除位. 設置sticky bit位後,www.linuxidc.com就算用戶對目錄具有寫權限,但也只能添加文件而不能刪除文件。

如何設置:

操作這些標志與操作文件權限的命令是一樣的, 都是 chmod. 有兩種方法來操作,
1) chmod u+s temp -- 為temp文件加上setuid標志. (setuid 只對文件有效,U=用戶)
chmod g+s tempdir -- 為tempdir目錄加上setgid標志 (setgid 只對目錄有效,g=組名)
chmod o+t temp -- 為temp文件加上sticky標志 (sticky只對文件有效)

2) 采用八進制方式. 這一組八進制數字三位的意義如下,
abc
a - setuid位, 如果該位為1, 則表示設置setuid
b - setgid位, 如果該位為1, 則表示設置setgid
c - sticky位, 如果該位為1, 則表示設置sticky

設置後, 可以用 ls -l 來查看. 如果本來在該位上有x, 則這些特殊標志顯示為小寫字母 (s, s, t). 否則, 顯示為大寫字母 (S, S, T)
如:

rwsrw-r-- 表示有setuid標志 (rwxrw-r--:rwsrw-r--)
rwxrwsrw- 表示有setgid標志 (rwxrwxrw-:rwxrwsrw-)
rwxrw-rwt 表示有sticky標志 (rwxrw-rwx:rwxrw-rwt)

Copyright © Linux教程網 All Rights Reserved