Permissions

Freebsd 輔助組不允許刪除文件夾

  • March 7, 2013

TLDR:我有一個使用者是作為輔助組的組的成員。此使用者可以作為輔助使用者刪除權限為 664 的文件,但不能刪除權限為 775 的目錄。

詳細資訊:我有一個使用者。讓我們稱他為ftpuser。我使用他將文件上傳和下載到我的 devbox。使用者的主要組是“ftp”,並且在組“www”中作為次要組。我的網路伺服器以使用者 www 和 www 組執行,並且我已將proftpd(以 www 和 www 執行)配置為將所有文件作為 www 和 www(用於文件所有權)拖放到所需的目錄中,並在文件上允許 664,在目錄上允許 775。

我的問題是(嘗試使用 2 個 ftp 客戶端)ftp 客戶端可以刪除文件,但不能刪除文件夾。Filezilla 返回 550 權限被拒絕。沒有設置所有者只能刪除標誌,我已經三次檢查了權限,它們確實是 775。

每次都必須登錄我的伺服器以手動刪除文件夾,這讓我發瘋。一些文件夾和文件是由我的 1 個 php 腳本創建的,但是當我檢查文件的屬性時權限設置正確。

目錄和文件創建工作非常出色。可以刪除文件,但不能刪除目錄。

Freebsd 9.0 在 VirtualBox 中執行(32 位) Proftpd(作為 www 和 www 執行)作為 ftp 伺服器(嘗試使用 dreamweaver 和 filezilla 作為客戶端)基本放大器設置(apache、mysql 和 php)。

編輯:

父文件夾是 755。我知道這將是一些愚蠢的簡單且容易被忽視的東西。我以為我將質量權限設置為 775 兩個目錄(apache22/data),但我必須在設置權限後創建該目錄。你每天學習新的東西。謝謝!

要刪除目錄,您必須對其父目錄具有寫入權限。例如,給定這個目錄:

drwxr-xr-x    3 owner  staff   102 Nov  5 22:00 .
drwxr-xr-x  160 owner  admin  5440 Nov  5 22:00 ..
drwxr-xr-x    2 owner  staff    68 Nov  5 22:00 foo

onlyowner可以刪除目錄foo(因為只owner對父目錄有寫權限)。

如果您授予staff組對父目錄的寫入權限:

drwxrwxr-x    3 owner  staff   102 Nov  5 22:00 .
drwxr-xr-x  160 owner  admin  5440 Nov  5 22:00 ..
drwxr-xr-x    2 owner  staff    68 Nov  5 22:00 foo

然後該組的任何成員都staff可以刪除該目錄foo

但是請注意,為了刪除目錄,他們還需要能夠刪除其所有內容,因為您無法刪除非空目錄。

引用自:https://serverfault.com/questions/445758