一 檔案安全和許可權
1 檔案類型
d 目錄
l 符號連結
s 通訊端檔案
b 塊裝置檔案
c 字元裝置檔案
p 具名管道檔案
- 普通檔案
2 對於檔案屬主來說,在只有讀許可權位被置位的情況下,仍然可以通過檔案重新導向的方法向該檔案寫入。
3 改變許可權位
a 符號模式
chmod [who] operator [permission] filename
who:
u 檔案屬主許可權
g 同組使用者權限
o 其他使用者權限
a 所有使用者
operator
+ 增加許可權
- 取消許可權
=設定許可權
permission的含義:
r 讀許可權
w 寫入權限
x 執行許可權
s 檔案屬主和組set-ID
t 粘性位*
l 給檔案加鎖
b 絕對模式
chmod [mode] file
mode:八位元
4 目錄
目錄的讀許可權位意味著可以列出其中的內容,寫入權限位意味著可以在該目錄中建立檔案,執行許可權位意味著搜尋和訪問該目錄。
5 suid/guid
suid意味著如果某個使用者對屬於自己的 shell指令碼設定了這種許可權,那麼其他使用者在執行這一指令碼時也會具有其屬主的相應許可權。於是,如果根使用者的某一個指令碼設定了這樣的許可權,那麼其他普通使用者在執行它的期間也同樣具有根使用者的許可權。同樣的原則也適用於 guid,執行相應指令碼的使用者將具有該檔案所屬使用者組中使用者的許可權。
如果想要對檔案 l o g i n設定s u i d,它當前所具有的許可權為 rwx rw- r-- (741) ,需要在使用chmod命令時在該許可權數位前面加上一個 4,即chmod 4741,這將使該檔案的許可權變為 rws rw- r--
chmod u+s <filename>
6 chown和chgrp
只有檔案的屬主和系統管理員可以改變檔案的所有權。一旦將檔案的所有權交給另外一個使用者,就無法再重新收回它的所有權。如果真的需要這樣做,那麼就只有求助於系統管理員了。
chmod -R -h owner file
-h意味著在改變符號連結檔案的屬主時不影響該連結所指向的目標檔案。
7 umask
umask命令確定了你建立檔案的預設模式。一般來說,umask在/etc/profile檔案中設定。
系統不允許你在建立一個文字檔時就賦予它執行許可權,必須在建立後用chmod命令增加這一許可權。目錄則允許設定執行許可權,這樣針對目錄來說, umask中各個數字最大可以到 7。