關於FILE_MODE值的問題,!!!!!
眾所周知,FILE_MODE是一個巨集,它經常定義成如下形式;
#define FILE_MODE(S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH)
定義成這樣的意思是:允許使用者讀、寫;組成員只讀和其他使用者只讀。這些許可權位會被當前程式的檔案模式建立掩碼修正,也就是程式中用到FILE_MODE的地方,它的值會被替換為0644。
當然,這個值是可以使用者自定義的。但是,經過試驗我們發現,這個許可權是有限制的。無論是在FIFO中還是在Posix訊息佇列中,FILE_MODE的值都不可能是0777。因為使用者的許可權可以是讀、寫、執行的;但是使用者組和其它使用者最高許可權是可讀可執行,不可寫。因此,如果你將FILE_MODE自定義如下:
#define FILE_MODE (S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IWGRP|S_IXGRPS_IROTH|S_IWOTH|S_IXOTH);
或者#define FILE_MODE 0777;
假如生成的可執行檔名是test,當你通過ls -l test檢視時,你只能得到如下結果:
-rwxr-xr-x 1 jingjing jingjing13315 2011-07-28 09:09 test;
注意:這裡的許可權不是-rwxrwxrwx,因為使用者組和其他使用者根本沒有寫的許可權。
所以,以後在程式間通訊(IPC)中用到FILE_MODE的地方就要記得,可不能把它設定為0777啦!
相關文章
- 關於css權值的問題CSS
- 關於值物件的驗證的問題物件
- 關於Session值丟失問題Session
- 關於實體與值物件的問題物件
- 一個關於值傳遞呼叫的問題
- 關於python中填充缺失值的問題Python
- 關於int型別數值的運算問題型別
- 關於配置檔案中的預設值的問題
- (求教)關於js函式按值、引用傳遞的問題JS函式
- 關於SQLServerDriver的問題SQLServer
- 關於 JavaMail 的問題JavaAI
- 關於session的問題Session
- 回覆網友問題,關於一個數值和字串一起累加的問題!字串
- Python—關於Pandas缺失值問題(國內唯一)Python
- 關於javascript的this指向問題JavaScript
- 關於跨域的問題跨域
- 關於bit code的問題
- 關於序列同步的問題
- 關於IP地址的問題
- 關於橋模式的問題模式
- 求救 關於parallel的問題Parallel
- 關於web start的問題Web
- 關於action的error問題Error
- 關於ADAPTER的問題APT
- 關於session的奇怪問題Session
- php關於session的問題PHPSession
- 關於diag程式的問題
- 關於SimpleJdonFrameworkTest的問題Framework
- 關於 Puerts 的效能問題
- 關於盒模型相關的問題模型
- 關於FastHashMap問題ASTHashMap
- 【學習筆記】關於Freemark程式碼輸出值的問題筆記
- 關於PHP佇列的問題PHP佇列
- 關於 Laravel 分頁的問題?Laravel
- 關於搜尋地址的問題
- 關於PWA落地問題的思考
- 關於 API 合併的問題API
- 關於excelize庫的使用問題Excelize