9月14日任務centos
2.14 文件和目錄權限chmodbash
2.15 更改全部者和所屬組chowncentos7
2.16 umaskspa
2.17 隱藏權限lsattr/chattr3d
全部者user:擁有該文件/目錄的用戶code
所屬組group:擁有該文件/目錄的羣組同步
ls命令查看文件、目錄的詳細信息時,其第一個字段例如"-rwxr--r--.",將除首尾外的9位每3位爲一組,ast
分別是其全部者(u)、所屬組(g)、其餘用戶(o)對該文件/目錄的權限。class
注意,使用表示式方式修改權限,-不要寫,如g=r-x是錯誤的寫法!!須要寫成g=rx!!test
數字/表達式轉換
r - 讀權限 - 4
w - 寫權限 - 2
x - 執行權限 - 1
chmod -R 權限 DIR
一次性修改目錄及其下屬文件、目錄的權限
[root@centos7 test]# ll 總用量 0 ----------. 1 root root 0 ... file1 ----------. 1 root root 0 ... file2 -rwxrwxrwx. 1 root root ... file3 # 數字形式 [root@centos7 test]# chmod 755 file1 # 表達式形式 [root@centos7 test]# chmod u=rwx,g=rx,o=rx file2 # 刪減形式 [root@centos7 test]# chmod g-w,o-w file3 [root@centos7 test]# ll 總用量 0 -rwxr-xr-x. 1 root root 0 ... file1 -rwxr-xr-x. 1 root root 0 ... file2 -rwxr-xr-x. 1 root root 0 ... file3
chown命令能夠只修改全部者,也能夠只修改所屬組,也能夠同時修改其所屬主和所屬組。以下方的幾個重要用法
幾個具體用法
說明:
只修改全部者:chown castiel file1
只修改所屬組:chown :castiel file2
同時都修改:chown castiel:castiel file3
一次性修改目錄及其內的文件目錄的全部者、所屬組:chown -R DIR
[root@centos7 test]# ls -l 總用量 0 -rw-r--r--. 1 root root 0 ... file1 -rw-r--r--. 1 root root 0 ... file2 -rw-r--r--. 1 root root 0 ... file3 [root@centos7 test]# chown castiel file1 [root@centos7 test]# chown :castiel file2 [root@centos7 test]# chown castiel:castiel file3 [root@centos7 test]# ls -ll 總用量 0 -rw-r--r--. 1 castiel root 0 ... file1 -rw-r--r--. 1 root castiel 0 ... file2 -rw-r--r--. 1 castiel castiel 0 ... file3
[root@centos7 test]# ls -l 總用量 0 drwxr-xr-x. 2 root root 6 ... dir1 -rw-r--r--. 1 root root 0 ... file1 [root@centos7 test]# ls -ld /test/ drwxr-xr-x. 3 root root 31 ... /test/ [root@centos7 test]# chown -R castiel /test/ # /test目錄以及內部的文件目錄的全部者被一次性改變! [root@centos7 test]# ls -l 總用量 0 drwxr-xr-x. 2 castiel root 6 ... dir1 -rw-r--r--. 1 castiel root 0 ... file1 [root@centos7 test]# ls -ld /test/ drwxr-xr-x. 3 castiel root 31 ... /test/
root用戶的umask值爲0022,普通用戶的umask值爲0002。 系統默認建立的權限是跟系統設置的umask值有關的!
對於root用戶
默認的目錄權限爲:0777-0022=0755(rwxr-xr-x);
默認的文件權限爲:0666-0022=0644(rw-r--r--)。
計算方法是先將數字轉換爲rwx再進行計算。
同理,對於普通用戶
默認的目錄權限爲0775;
默認的文件權限爲0664。
修改umask值,默認建立的文件/目錄的權限也會隨之變化!
默認查看一個目錄下的文件或子目錄的隱藏權限;若是要查看目錄自己須要加上-d參數!
lsattr -R DIR
能夠一次性查看目錄及其下層文件、目錄的隱藏權限
chattr +i file 沒法修改文件(也不能追加)
chattr +a file 沒法修改文件,可是能夠追加內容
沒法修改的具體表現爲:沒法刪除、修改內容、追加內容、重命名、修改時間。a參數可追加內容,i參數不可追加,其餘方面全部都相同。
重要參數:-R
chattr -R DIR
一次性修改目錄及其下屬文件、目錄的隱藏權限!
chattr權限對於目錄有一點不一樣:對於目錄中已經存在的文件,能夠進行修改;目錄中不存在的新建的文件將沒法建立
(可是對於設置+a參數的目錄,能夠執行追加建立新文件,但沒法刪除)!
拓展:其餘chattr可用參數
A 設置了該參數的文件或目錄的atime不可修改
s 數據會自動同步寫入磁盤
c 自動壓縮該文件,讀取時自動解壓
補充知識點:目錄必須須要x權限才能執行:要在目錄下建立、修改文件,必須先進入該目錄!!
[root@centos7 ~]# chattr +a 111 [root@centos7 ~]# echo "1" >> 111/1.txt [root@centos7 ~]# echo "1" > 111/2.txt [root@centos7 ~]# rm -f 111/1.txt rm: 沒法刪除"111/1.txt": 不容許的操做 [root@centos7 ~]# chattr +i 111/ [root@centos7 ~]# touch 111/3.txt touch: 沒法建立"111/3.txt": 權限不夠 [root@centos7 ~]# echo "111" >> 111/3.txt -bash: 111/3.txt: 權限不夠