local umask 022是什麼意思?

2021-06-22 17:07:39 字數 1232 閱讀 2505

原文:

請問local_umask=022是什麼意思?是指什麼的掩碼?

原帖由 

norman_lu 於 2005-12-15 15:58 發表

777-022=755

666-022=644

明白否!

umask決定目錄和檔案被建立時得到的初始許可權

umask = 022時

新建的目錄 許可權是755 

檔案的許可權是 644

用umask命令檢視或設定當前的umask

$ umask

000$ umask 022

你可以改變一下umask,建立目錄和檔案,觀察一下

還有,umask是unix作業系統的概念,vsftpd的local_umask借鑑了它

umask=022中"022"是八進位制的寫法,如果換成二進位制是000010010

在unix中檔案許可權是三類使用者,三種許可權。三類使用者分別是檔案所有者user(u),檔案所有者所在主群組group(g)、其它使用者others(o),三種許可權分別是起讀read(r)、寫write(w)、執行execute(x)。

如果乙個檔案的許可權如下:所有者有讀寫的許可權,群組有讀和執行許可權、其它使用者有讀許可權,可以寫成:

rw-r-xr--

其中前三位指明了所有者的許可權、中間三位指明了組許可權、最後三位指明了其它使用者的許可權。我們用ls -l可以看到檔案許可權詳情,列出來的是10位,最前一位如果是d表示是子目錄。

說回來,如果把這上面9位字母換成二進位制數則是:

110101100

如果換成八進位制是多少?

因此檔案許可權可以用9位二進位制數表示。umask在英文中是遮蔽的意思,那麼

umask=022

指遮蔽檔案的022許可權,到底遮蔽了什麼?將這個八進位制數用二進位制表示

000010010

換算成字母是

----w--w-

指取消組的寫許可權、取消其它使用者的寫許可權。

遮蔽這些許可權後,剩下什麼許可權呢?用字母表示是:

rwxr-xr-x

用二進位制數表示是:

111101101

你可以對比一下

000010010

可以知道遮蔽前後的換算關係。

在vsftpd的配置檔案中,umask=022表示了上權後的檔案被遮蔽的許可權,另一句話說,就是上傳的檔案所具有的許可權。

你可以找一點講unix作業系統的書看看,寫得比我好得多。

display inline block是什麼意思

很多時候我們必須使一些塊元素併排顯示,一般想到的是必須使用浮動,但是塊元素浮動給邊距 margin 的時候在ie下會出現加倍的bug 所以很多時候不得不把這個塊元素套在乙個內聯元素裡面,然後給內聯元素浮動和邊距。今天看到了懌飛 秦歌和烏龍茶關於display inline block的文章,很不錯,...

no database selected是什麼意思

no database selected是什麼意思?是因為你沒有選擇新建立的表所在的資料庫,no database selected 意思就是沒有選擇資料庫。推薦 mysql 教程 解決辦法 在建立表之前使用use語句,格式 use database name,這樣就開啟了資料庫,就可以對資料庫進行...

python wx python wx模組是什麼

一 wxpython介紹 2.wxpython是跨平台的,可以在不修改程式的情況下在多種平台上執行。目前支援的平台有win32 win64 mac os x及大多數的unix系統。二 安裝wxpython 1.python圖形使用者介面的使用需匯入wxpython包,這是乙個成熟而且特性豐富的包,也...