1.8 umask
當最初登錄到系統時,umask命令確定了你創建文件的缺省模式
umask命令允許你設定文件創建時的缺省模式,對應每一類用戶(文件屬主、同組用戶、其他用戶)存在一個相應的umask值中的數字。
對於文件來說,這一數字最大值分別是6.(系統不允許你在創建一個文本文件時就賦於執行權限,需用chmod增加)
對於目錄來說,這一數字最大值分別是7
計算umsak值:
計算umsak值的方法 我們只要記住umask是從權限中"拿走"相應的位即可
示例:
1.首先寫下具有全部權限的模式,即777(所以用戶具有讀、寫、執行權限)
2.按照umask值寫下相應的位
3.對於目錄來說,寫下上面兩行沒有匹配的位
4.對於文件來說 ,在創建是不具有執行權限,拿掉相應的執行權限位即可
我們按照上面的假設umask值爲002:
1. rwx rwx rwx (777)
2. --- --- -w- (umask值爲:002)
3.rwx rwx r-x (寫下沒有匹配的位:775) 兩行匹配位爲其他用戶的w權限位 所以把其它位寫下 即是目錄創建缺省權限
4.rw- rw- r-- (寫下沒有匹配的位,並去掉執行權限:664) 即是文件創建的缺省權限
下面我們在Linux下使用umask:
1.首先使用下面命令設置umask值:
# umask 002
2.接着創建一個目錄和一個文件
使用下面命令創建目錄
# mkdir cs
#ls -l
drwxrwxr-x 2 root root 4096 05-23 12:57 cs 創建了一個cs目錄 其缺省值爲775
使用下面命令創建文件
# touch css
#ls -l
-rw-rw-r-- 1 root root 0 05-23 12:58 css 創建了一個css文件 其缺省值爲 664
使用如下命令查看當前使用umask值:
# umask
如果想要修改其值 只需重新設置即可
# umask 002
一般來說,umask命令是在/etc/profile文件中設置的,每個用戶在登錄時候會引用這個文件,所以如果希望改變所有用戶的umask,可以在該文件中加入相應條目。如果希望永久性的設置自己的umask值,那麼就把它放在自己$HOME目錄下的.profile或.bash_profile文件中。