在unix或者linux中,每建立乙個檔案或者目錄時,這個檔案或者目錄都具有乙個預設的許可權,比如目錄755,檔案644,那麼這些預設許可權是怎麼控制的呢?
答案是「umask」許可權掩碼。一般預設的umask值為022,其最終效果就是新建立的目錄許可權為755,檔案許可權為644。所以只要修改了使用者的umask值,就可以控制預設許可權。
怎麼檢視當前umask值?
umask
umask -s (suse linux enterprise 11例項)
u=rwx,g=rx,o=rx
怎麼根據實際需要設定umask值?
其實umask是許可權的反碼,你可以根據檔案或者目錄許可權的數字表示值計算得到。
目錄:7- 許可權數字
檔案:目錄許可權去掉執行許可權(不要使用目錄許可權減1,否則本來就沒有執行許可權還要減1就搞錯了)
如果您希望新建目錄的預設許可權為755,那麼可以設定umask值為:
7-7=0 7-5=2 7-5-2 即022
此時檔案的許可權為目錄許可權去掉執行許可權,即644。
常見許可權掩碼示例
umask
值
目錄
檔案
022
027
002
006
007
怎麼修改umask值?
umask 三位數字(每位數字只能是1-7中的任一數字)
示例:umask 022
執行該命令只能使得本次登入有效,如果退出本次登入,下次不會有作用。
怎麼讓umask值在使用者每次登入後都有效?
將umask命令語句放到使用者環境變數profile檔案中。
修改所有使用者的umask值
在/etc/profile中增加語句umask nnn(許可權掩碼數字)
修改指定使用者的umask值
根據不同的shell,修改不同的配置檔案,在其中增加語句umask nnn(許可權掩碼數字),重新登入即可生效。
bourne shell (sh):$home/.profile
korn shell (ksh):$home/.profile
c shell (csh): $home/.login
bourne again shell(bash):它會在使用者目錄$home下依次查詢.bash_profile,.bash_login,.profile檔案,並用找到的第乙個作為自己的配置檔案,因此根據實際環境修改相應的檔案
Linux之檔案與目錄的預設許可權與隱藏許可權
指定目前使用者在建立檔案或目錄時候的預設許可權值 語法 umask 這裡的數字是值該預設值需要減掉的許可權,root的umask預設是022,一般使用者的umask為002。以符號的顯示方式顯示出許可權 語法 umask s 當使用者建立檔案則預設沒有可執行 x 許可權,即只有rw許可權,也就是66...
linux 修改FTP預設訪問目錄
先做個記錄,以備後用 修改 etc passwd 然後修改ftp使用者那行 ftp x 14 50 ftp user var ftp sbin nologin 比如我們想把ftp使用者的家目錄改為 opt ftp,則要把類似上一行改為 ftp x 14 50 ftp user usr local w...
linux檔案目錄預設許可權 詳解
1 檔案的預設許可權是沒有x的,即檔案的最大預設許可權為666 rw rw rw 2 由於進入目錄和目錄的x許可權有關,故目錄的最大預設許可權為777 drwxrwxrwx 檢視預設許可權需要使用umask命令 123 123 umask 數字方式顯示 0022 123 123 umask s 符號...