許多使用者誤以為擁有檔案的 w(寫入)權限即可刪除該檔案,實際上 刪除檔案的權限取決於父目錄的權限,而非檔案本身。本文透過實戰場景演示此核心觀念。

/oldboy(權限 drwxr-xr-x,其他人無 w)。test1.sh(權限 -rw-r--r--)。-rwxr--rwx(全體可讀寫執行)。oldboy 可讀寫執行該檔案,但 無法刪除(rm: Permission denied)。檔案名稱與 inode 對應關係儲存在父目錄的區塊中。刪除檔案實質是修改父目錄內容(移除目錄項),因此必須擁有父目錄的 w 與 x 權限才能刪除其中的檔案。
授予父目錄其他人寫入權限:
chmod 757 /oldboy # 權限變為 drwxr-xrwx
此後普通用戶即可成功刪除 test1.sh。
ls)。x)。cd)、存取目錄下檔案細節。理解此機制,未來遇到「明明有 w 權限卻刪不掉」的情況,即知應檢查父目錄權限。