Permissions
無法重命名我擁有的目錄
我有一個包含大量子目錄的目錄。我都擁有,權限都是777。
pascal@azazel /box $ ls -al total 147872 drwxr-xr-x 293 root root 12288 aoû 22 19:44 . drwxr-xr-x 25 root root 4096 jun 28 18:49 .. drwxrwxrwx 7 pascal pascal 4096 aoû 4 2010 131082 [...]
我想重命名目錄:
pascal@azazel /box $ mv 131073 NewName mv: impossible de déplacer « 131073 » vers « NewName »: Permission non accordée
該消息是法語的,基本上它說我沒有重命名(移動)目錄的權限。
怎麼了?
重命名文件(無論其類型如何,包括目錄)意味著在其所在目錄中更改其名稱。事實上,在文件系統內部重命名和移動是同一個操作;該文件與其舊名稱分離並附加到其新名稱,這需要修改源目錄和目標目錄(在一個目錄內重命名,源目錄和目標目錄相同)。結果是,
/box
在您的範例中,您需要對包含目錄的寫入權限。順便說一句,這些權限與您複製文件然後刪除原始文件所需的權限完全相同。