系統管理-文件權限
用戶對文件的操作權限
======================================
文件的所有者和所屬組
#chown 用戶 文件
#chown user2 a.txt
#chown {.|:}組 文件
#chown .grp2 a.txt
#chown 用戶.組 文件
#chown user3:grp3 a.txt
-R recoursive 遞歸修改,修改目錄的時候連帶目錄的所有子文件一起修改
======================================
ugo權限
u user
g group
o other
--- --- --- u g o rwx r-x --x r read w write x execute
======================================
權限修改
chmod 權限 文件
# chmod u-r-w a.txt # chmod u+r a.txt # chmod g+w a.txt # chmod o+x a.txt # chmod u+w,g-w,o+w a.txt # chmod a-r a.txt a表示ugo3個位置 # chmod -r a.txt (建議少用) 4=r 2=w 1=x rwx 4+2+1=7 r-- 4 r-x 4+1=5 745 [tom@wing ~]$ chmod 604 a.txt [tom@wing ~]$ ll a.txt -rw----r-- 1 tom tom 44 Nov 25 11:43 a.txt
======================================
隱藏權限
lsattr a.txt
# chattr +a a.txt
# chattr -a a.txt
# chattr +i a.txt
# chattr -i a.txt
+A:Atime,告訴系統不要修改對這個文件的最後訪問時間
+S:Sync,一旦應用程序對這個文件執行了寫操作,使系統立刻把修改的結果寫到磁盤。
+d:No dump,在進行文件系統備份時,dump程序將忽略這個文件。
chattr命令不能保護/、/dev、/tmp、/var目錄
======================================
umask 用戶掩碼
控制用戶創建文件和目錄的默認權限
用戶 目錄777 文件666
755 644
#umask
0022 root賬戶默認
0002 普通用戶默認
先把掩碼做取反操作,然後在與原始權限做與運算
或者
按位減
suid 提權
#chmod 4755 命令
#chmod u+s 命令
suid只能給命令添加,當給命令添加了suid之後,後面再有人去執行這個命令的時候
就會擁有命令操作符所有者的權限
sgid 組權限繼承
#chmod 2755 目錄
#chmod g+s 目錄
sgid只能給目錄添加,當你給一個目錄添加了sgid之後,後面不管誰來這個目錄下創
建文件,文件的所屬組都會繼承目錄的所屬組
sticky(t權限) 權限控制
#chmod 1777 目錄
#chmod o+t 目錄
t權限只能給目錄添加,當你給一個目錄添加了t權限之後,後面所有人在這個目錄下不
能刪除其他人的文件
-R 遞歸修改權限
facl權限
擴展ugo權限,可以單獨的對某一個用戶或者某一組用戶設置權限
查看facl
#getfacl 文件(目錄)名
設置facl
#setfacl -m u:tom:r a.txt
#setfacl -m u:tom:4 a.txt
#setfacl -m g:組名:rwx a.txt
-R 遞歸修改 必須寫到-m的前面,可以寫到一起
#setfacl -R -m u:tom:4 目錄名稱
設置facl的繼承權限
只能對目錄,對目錄本身不生效
setfacl -m d:u:wing:r dir1
mask:和權限做與運算,最後的結果是有效權限
setfacl -m m::rw ccc.txt
取消
setfacl -b ccc.txt
# setfacl -x u:wing: ccc.txt
======================================
純手動創建賬戶過程
創建jim賬戶
1.在passwd文件添加一個行jim賬戶信息
在shadow文件添加一個行jim賬戶信息
2.創建家目錄
#cp -r /etc/skel /home/jim
3.在group文件添加一行jim組信息
在gshadow文件添加一行jim組信息
4.修改權限
#chown jim.jim /home/jim
#chmod 700 /home/jim
5.創建個人郵箱
#mkdir /var/spool/mail/jim
#chown jim.mail /var/spool/mail/jim
#chmod 660 /var/spool/mail/jim
系統管理-文件權限