我測試的mkdir
函數來創建一個新的目錄:linux下的mkdir功能不能充分授權許可
或
folder = mkdir("./linux", 0777);
或
folder = mkdir("./linux", S_IRWXU | S_IRWXG | S_IRWXO);
,你可以看,我嘗試授權對目錄的完全許可,但這裏是ls -l | grep linux
:
drwxr-xr-x 2 manuzhang manuzhang 4096 2012-01-04 06:53 linux
爲什麼我不能授權組和其他人的寫入權限?
更新:
奇怪的事情,因爲你們告訴我,我試過umask
。它適用於任何umask(S_IWGRP)
或umask(S_IWOTH)
但失敗與umask(S_IWGRP | S_IWOTH)
,任何想法?
頭也不擡'的mkdir()',在「511」看起來很奇怪我的,因爲它不分配相同的權限組和其他因爲它給用戶。此外,您給出了兩個'mkdir()'的用法,以及一個不屬於任何一個的測試示例。在'ls'測試之前你使用了什麼版本? – 2012-01-03 23:06:38
mkdir的man(2)頁面表示該模式已提供,與777進行AND運算,因此應該可以工作。你能否提供更多的細節?你正在使用什麼發行版和Linux發行版?我希望這是你使用的完全標準的glibc? – tjarratt 2012-01-03 23:11:20
@DavidThornley 511 = 0777 – 2012-01-03 23:14:35