關於linux檔案預設許可權的問題,可以實際先嘗試一下如下命令:
root使用者登入
[root@localhost test]# touch file1
[root@localhost test]# ls-l file1
-rw-r--r-- 1 root root 0 may 5 08:28 file1 #輸出結果 對應的數字許可權 644
[root@localhost test]# touch file2
[root@localhost test]# ls-l file2
-rw-r--r-- 1 root root 0 may 5 08:29 file2 #輸出結果 對應的數字許可權 644
[root@localhost test]# mkdir dir1
[root@localhost test]# ls-ld dir1
drwxr-xr-x 2 root root 4096 may 5 08:29 dir1 #輸出結果 對應的數字許可權 755
[root@localhost test]# mkdir dir2
[root@localhost tmp]# ls-ld dir2
drwxr-xr-x 2 root root 4096 may 5 08:29 dir2 #輸出結果 對應的數字許可權 755
user1使用者登入
[user1@localhost test]# touch file1
[user1@localhost test]# ls-l file1
-rw-rw-r-- 1 root root 0 may 5 08:28 file1 #輸出結果 對應的數字許可權 664
[user1@localhost test]# touch file2
[user1@localhost test]# ls-l file2
-rw-rw-r-- 1 root root 0 may 5 08:29 file2 #輸出結果 對應的數字許可權 664
[user1@localhost test]# mkdir dir1
[user1@localhost test]# ls-ld dir1
drwxrwxr-x 2 root root 4096 may 5 08:29 dir1 #輸出結果 對應的數字許可權 775
[user1@localhost test]# mkdir dir2
[user1@localhost tmp]# ls-ld dir2
drwxrwxr-x 2 root root 4096 may 5 08:29 dir2 #輸出結果 對應的數字許可權 775
通過上面的執行結果可以得出以下結論:如果是root使用者建立的檔案預設許可權是644,目錄預設許可權是755;普通使用者建立的檔案預設許可權是664,目錄預設許可權是775.兩者的預設許可權是不同的,造成兩者使用者許可權不同的原因就是linux針對不同的使用者建立檔案和建立目錄預設的許可權不同,linux系統通過umask(遮罩)的概念來控制相應的許可權。可以在/etc/profile 檔案中進行檢視。
內容如下(51-55行):
if [ $uid-gt 99 ] && [ "`id-gn`" = "`id-un`" ]; then
umask 002
else
umask 022
fi通過上面的檔案內容可以看出:如果uid>99 設定的umask值為002,如果uid不大於99則umask值為022.關於遮罩計算許可權的方式如下:比如 777 用字串表示 rxwrwxrwx,如果遮罩值是022 對於的字串是 ----w--w-,計算方法是如果遮著包含字母的,計算出真正的許可權就不包含該位置的字母用-代替即可,個人理解公式:遮罩值+計算的真正許可權=rxwrwxrwx
上面的許可權可以這樣理解: ----w--w-+rxwr-xr-x=rxwrwxrwx
Linux檔案預設許可權
一 檢視預設許可權命令 umask 檢視預設許可權 0022 第一位0 檔案特殊許可權 022 檔案預設許可權 二 檔案的預設許可權 1 檔案預設不能建立未執行檔案,必須手工賦予執行許可權 2 所以檔案預設許可權最大未666 3 預設許可權需要換算成字母再相減 4 建立檔案之後的預設許可權,為666...
設定linux檔案和目錄預設許可權
對於linux檔案系統中,檔案的最大許可權應該是666,針對目錄最大的是777 因為目錄必須要有x才能進入 umask user的反掩碼 的值的作用是,設定使用者環境下,建立檔案或者目錄的許可權控制。一般umask的值是在 etc profile 檔案中定義的,使用者登入必須會讀取這個檔案,所以一般...
Linux 檔案預設許可權與umask
大家都知道檔案有屬主屬組和其他許可權rwx,每乙個檔案剛建立的時候都有乙個預設許可權。那麼這個預設許可權是怎麼規定的呢。這就要用到 umask 許可權掩碼。可以用 umask 檢視當前umask值 我們假設是 0022 其中第乙個0表示特殊許可權。022 表示屬主屬組和其他許可權。在linux中檔案...