2015-04-17 124 views
0

假定FOLDER設置爲chmod 777,但文件夾中的FILES設置爲chmod 755. 非所有者用戶可以將文件寫入FOLDER。那麼如何覆蓋已經存在的文件呢?現有文件是否可以被非所有者用戶覆蓋?Unix權限:對文件夾及其文件的不同chmod

+1

這個問題不是關於編程。這將更適合http://unix.stackexchange.com/ –

回答

2

如果您授予每個人對目錄的讀取,寫入和執行權限,則每個人都可以創建和刪除文件,包括其他用戶創建的文件。

如果你想避免這樣的行爲(您的意見一個提到),你應該創建另一個/ tmp或/ var/tmp目錄:設置粘位:

$ chmod +t directory 

隨着粘滯位設置,每個用戶都可以創建新文件,但無法從其他文件中刪除文件。

雖然這裏有一個公平的警告詞:我不建議使用這種功能來保護您的上傳。改爲在前端實現更好的訪問控制。

+0

那麼'用戶'是如何定義的?這是服務器運行的默認用戶名嗎?即。 'apache'? –

1

是的。雖然非所有者將而不是能夠打開一個文件進行編輯並更改其內容,但他們能夠刪除該目錄中的任何文件並將其替換爲具有相同名稱的新文件。

+0

有沒有辦法達到這樣的目的?我希望非用戶能夠上傳新文件,但無法操作已存在的文件... –

+0

是的,請參閱@TobiasStoeckmann的答案 – dg99