需要什麼權限才能保留副本檔案的所有權?

需要什麼權限才能保留副本檔案的所有權?

我有一個關於 Linux 核心程式設計的家庭作業問題。問題是:

複製檔案時需要什麼特定於 Linux 的權限才能保留檔案的所有權,如何取得它?

透過實驗,我發現我需要成為root超級用戶才能使其正常工作。有沒有更具體的方法來解釋這種效應?

答案1

請參閱capabilities(7)手冊頁 – 您需要CAP_CHOWN能夠通過chown(). (Root會自動啟用所有能力。手冊頁說明了其他情況下如何取得能力。)

沒有單獨的方法/能力儲存所有權,因為 Linux 檔案副本是透過簡單地將資料讀取/寫入目標檔案來建立的,然後對元資料執行相同的操作。 (作為比較,Windows NT 具有SeBackupPrivilegeSeRestorePrivilege特權以及BackupRead()/BackupWrite()呼叫。)

相關內容