檔案目錄許可權管理
檔案目錄許可權管理
一、檔案資訊簡介
ls -l/-lR(遞迴) file(檢視檔案資訊)
-rw-rw-r–. 1 kiosk kiosk 0 Jan 3 20:16 unit4
1|2 |3 |4 | 5| 6 | 7 |8| 9 | 10
[2] 檔案擁有者對檔案能做什麼操作 ##r-----讀
[3] 檔案所有組對檔案能做什麼操作 ##w-----寫
[4] 其他人對檔案能做什麼操作 ##x-----訪問
[5]對檔案:檔案硬連結個數(檔案內容被記錄的次數)
對目錄:目錄中子目錄的個數
[6]檔案的所有人
[7]檔案所有組
[8]對檔案:檔案大小
對目錄:目錄中子檔案元資料(matedate)大小
[9]檔案內容被修改時間
[10]檔名稱
二、改變檔案的所有人和所有組
1)改變所有人
chown 使用者名稱 檔名/目錄名
2)改變所有組
chgrp 組名 檔名/目錄名
3)同時改變所有人和所有組
chown 使用者名稱:組名 檔名/目錄名
三、改變檔案的許可權
1)對檔案讀寫許可權的理解
1.r
對檔案:是否可以檢視檔案的內容 cat file
對目錄:是否可以檢視目錄中有什麼子檔案或者子目錄 ls dir
2.w
對檔案:是否可以改變檔案裡記錄的字元
對目錄:是否可以對目錄中的子目錄或者子檔案的元資料進行修改
3.x
對檔案:是否可以通過檔名稱呼叫檔案內記錄的程式
對目錄:是否可以進入目錄
2)檔案讀寫許可權更改方式
chmod u/g/o|+/-/=|r/w/x file|dir
例:
chmod u+w /mnt/file
chmod -r /mnt/file ##相當於u-r,g-r,o-r
chmod u+w,g+x /mnt/file
chmod ug+r /mnt/file
3)更簡潔的數字命令
r=4, w=2, x=1
數字所對應命令
0=- - -
1=- -x
2=-w-
3=-wx
4=r- -
5=r-x
6=rw-
7=rwx
例:chmod 777 file = chmod ugo=rwx file
四、umask 檢視系統建立檔案預設保留的權力
1)臨時設定umask
umask 077 ##臨時設定系統預留許可權為077
2)永久更改umask
vim /etc/profile ##系統配置檔案
59 if [ $UID -gt 199]&&[''`id -gn`''=''`id -un`''];then
60 umask 002 ##普通使用者的umask
61 else
62 umask 022 ##超級使用者的umask
##更改相應的umask的值,使用者重新登陸生效!59/60/61/62為命令在檔案裡所在行數
source /etc/profile ##讓更改立即生效
或
70 if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; th en
71 umask 002
72 else
73 umask 022
74 fi
source /etc/bashrc
五、特殊許可權
1、sticky ##粘制位
作用:
只針對目錄生效,當一個目錄上有sticky許可權時,
在這個目錄中的檔案只能被檔案的所有者刪除
設定方式:
chmod o+t dir ##-rwxrwxrwx變為-rwxrwxrwt
chmod 1xxx dir ##xxx為數字,有更改許可權作用
解除方式:
chmod o-t dir ##-rwxrwxrwt變為-rwxrwxrwx
chmod xxx dir
2、sgid ##強制位
作用:
對檔案: 只針對與二進位制可執行檔案
當檔案上有sgid時,任何人執行此檔案產生的程序都屬於檔案的組
對目錄: 當目錄上有sgid許可權時,任何人在此目錄中建立的檔案都屬於目錄的所有組
設定方式:
chmod g+s file|dir
chmod 2xxx file|dir
解除方式:
chmod g-s file|dir
chmod xxx file|dir
3、suid ##冒險位
只針對與二進位制可執行檔案
當檔案上有suid時,任何人執行這個檔案中記的程式產生的程序都屬於檔案的所有人
設定方式:
chmod u+s file
chmod 4xxx file
解除方式:
chmod u-s file
chmod xxx file
六、acl許可權列表
1、作用
讓特定的使用者對特定的檔案擁有特定許可權
2、acl列表檢視
drwxrwxr-x+ 2 root root 6 Jan 3 23:57 666
^
acl開啟標誌
getfacl file1 ##檢視acl開啟的檔案的許可權
檔案資訊解釋:
#file: file1 ##檔名稱file1
#owner: root ##檔案擁有者
#group: root ##檔案擁有組
user::rwx ##檔案擁有人的權力
user:hahaha:rwx ##指定使用者hahaha的許可權
group::r-x ##檔案擁有組的權力
mask::rwx ##能賦予使用者的最大權力伐值
other::r-x ##其他人的權力
3、acl操作
1)getfacl file1 ##檢視檔案許可權
2)setfacl -m u:username:rwx file ##設定username對file擁有rwx許可權
3)setfacl -m g:group:rwx file ##設定group組成員對file擁有rwx許可權
4)setfacl -x u:username:rwx file ##從acl列表中刪除username
5)setfacl -b file ##關閉file上的acl列表
4、mask值
在許可權列表中mask表示能生效的權力值
當用chmod減小開啟acl檔案許可權時,mask值會發生改變
chmod g-w file
恢復mask:
setfacl -m m:rw file
5、acl的預設許可權設定
acl預設許可權只針對目錄決定
‘‘acl許可權只針對設定完成之後新建立的檔案或者目錄生效,而已經存在的檔案不會繼承預設許可權’’
setfacl -m d:u:使用者名稱:rwx /mnt/file
setfacl -k /mnt/file