日期: 2015年08月27日
權限的種類:
在Linxu系統中,用戶對文件的訪問權限有三種:
分別爲:可讀、可寫、可執行
r | w | x |
readable | writable | executable |
每種權限的詳細解釋:
目錄:
r: 可使用ls命令列出目錄中的文件或子目錄列表
w: 可在此目錄中創建或刪除文件
x: 可使用`ls -l` 列出目錄文件及子目錄的詳細屬性信息;
可使用cd命令切換進此目錄
文件:
r: 可使用文件查看工具查看其內容
w: 可使用文件編輯工具編輯其內容
x: 可向內核請求將此文件運行爲進程
//使用ls命令-l選項可以列出每個文件或目錄的詳細權限
[root@localhost~]# ls -ld /etc/
drwxr-xr-x. 93 root root8192 Aug 28 13:14 /etc/
[root@localhost~]#
每個文件的權限主要針對三類對象進行定義:
owner: u, 屬主
group: g, 屬組
other: o, 其他用戶
d | rwx | r-x | r-x |
類型 | 屬主 | 屬組 | 其他 |
某類用戶對某文件的訪問權限:
--- 000 0
--x 001 1 =執行
-w- 010 2 =寫入
-wx 011 3 =寫入+執行
r-- 100 4 =只讀
r-x 101 5 =讀+執行
rw- 110 6 =讀+寫
rwx 111 7 =讀+寫+執行
------------------------------------------------
例如:
644: rw-rw-r--
rwxr-x---: 750
關於目錄權限的管理:
目錄權限 對應目錄中文件的操作
rwx | ls | rm | cd |
000 | N | N | N |
001 | N | N | Y |
010 | N | N | N |
011 | N | Y | Y |
100 | ? | N | N |
101 | Y | N | Y |
110 | ? | N | N |
111 | Y | Y | Y |
目錄的r權限意味着可以列出其中的內容。w權限意味着可以在該目錄中創建文件,如果不希望其他用戶在目錄中創建文件,可以取消響應的w權限。x權限則意味着搜索和訪問該目錄。
如果對目錄具有wx權限,則默認可以刪除目錄中任何文件。
如果把同組用戶或其他用戶針對某一個目錄的權限設置爲--x,那麼他們將無法列出該目錄中的文件的屬性。如果該目錄中有一個x權限的腳本或程序,只要用戶知道它的路徑和文件名,仍然可以執行它。用戶不能夠進入該目錄但並不妨礙他執行該目錄中的文件。
<<========================================【chmod】========================================>>
chmod命令
功能:
用來變更文件或目錄的權限。
用法1:
chmod u+|-[r|w|x] filename #修改用戶權限
chomd g+|-[r|w|x] filename #修改組權限
chomd g+|-[r|w|x] filename #修改其他用戶權限
用法2:
chmod ### FileName
實例:
改變文件的擁有者或者組:
<<========================================【chown】========================================>>
chown命令
chown UserName FileName #把某個文件的擁有者修改爲某個用戶
chown UserName.GroupName FileName #同時修改文件的擁有者和擁有組
chown -R username /DirName #把某個目錄下所有文件的擁有者修改爲某個用戶
chown .GroupName FileName #修改某個文件的擁有組
chgrpGroupName Filename #同上(chgrp只用於修改擁有組)
實例:
<<========================================【umask】========================================>>
umask值:
功能:
確定創建文件或文件夾的缺省權限,默認情況下文件夾權限爲755,文件權限爲644。
/etc/bashrc #umask值保存在此文件中。
系統默認UID小於99的用戶umask值爲220,UID大於99的用戶umask值爲200,設置一個合理的umask值,可確保創建的文件或文件夾具有所希望的缺省權限,防止其他非同組用戶對你的文件具有w權限。
在shell下直接輸入umask,顯示的是當前umask值。
666- umask值 = 實際文件的權限
777- umask值 = 文件夾的權限
對普通用戶而言,其umask值爲002,即其建立的普通文件默認權限爲664,目錄權限爲775.
root用戶的umask值爲022,即其建立的普通文件默認權限爲644,目錄權限爲755.
★Linux系統在創建文件時默認不給予執行權限,如果777-umask值=有執行權限時,默認會+1。
查看umask設置:
[root@localhost~]# umask -S
u=rwx,g=rx,o=rx
[root@localhost~]# umask -p
umask0022
[root@localhost~]#