原理:
1、將目錄或文件的默認最高權限(目錄:777,文件:666)和umask掩碼值都轉換為二進制。
2、對umask取反
3、將兩個二進制做與運算
4、將運算后的二進制轉換為十進制,即為用戶的新建目錄或文件的默認權限
公式:
按照umask計算原理很麻煩,所以公式總結如下:
目錄(文件)的初始權限=目錄(文件)的最大默認權限-umask權限
這種公式方法要注意分類:
目錄公式:用戶目錄默認權限=777-umask值
文件公式:
1、偶數umask:用戶文件默認權限=666-umask偶數值
2、奇數umask: 用戶文件默認權限=666-umask奇數值+1
原理示例:
1、原理法:
目錄情況:假設umask值為223
777轉化為二進制:0111 0111 0111
umask 223轉化為二進制:0010 0010 0011:取反后:1101 1101 1100
0111 0111 0111
& 1101 1101 1100
= 0101 0101 0100
結果轉化為十進制:554
文件情況:假設umask值為223
666轉化為二進制:0110 0110 0110
umask233轉化為二進制: 0010 0010 0011:取反后:1101 1101 1100
0110 0110 0110
& 1101 1101 1100
= 0100 0100 0100
結果轉化為十進制:444
公式示例:
2、公式法:
目錄情況:假設umask值為223
目錄公式:用戶目錄默認權限=777-umask值
777-223=554
文件情況:假設umask值為223
文件公式:
1、偶數umask:用戶文件默認權限=666-umask偶數值
2、奇數umask: 用戶文件默認權限=666-umask奇數值+1
666-223+1=444