我的電腦有一堆額外的驅動器。其中大多數包含 Windows 和程式檔案的舊副本。我的電腦稱為“PC”,我的管理員使用者稱為“Tim”。我已將這些第二個驅動器的所有權分配給用戶“PC\Tim”,並授予用戶“PC\Tim”對驅動器的完全控制權。然後,我嘗試刪除這些磁碟機上的 Windows 或 Program Files 資料夾,並收到訊息。
“您需要獲得 PC\Tim 的許可才能更改此資料夾。”
這些資料夾的目前擁有者被列為「Tim (PC\Tim)」。這些資料夾的有效權限列出了該使用者擁有的所有權利。
微軟社群上荒謬的「答案」當然提供了諸如「使用磁碟清理」(這是一個明顯沒有受過教育的答案)或「只是重新格式化磁碟機」(格式化可以避免問題而不是解決問題)之類的內容。
刪除這些舊文件的正確步驟是什麼?
答案1
使用管理權限開啟命令提示字元。
一次執行一個命令(將“Z:\Program Files”更改為要刪除的資料夾):
takeown /F "Z:\Program Files" /A /R /D Y icacls "Z:\Program Files" /T /grant administrators:F rd /s /q "Z:\Program Files"
註 1 - 作業系統語言:takeown ... /D Y
輸入 Y 代表“是”,並且會根據作業系統語言而有所不同。 Program Files 資料夾和管理員的名稱也可能不同。
註 2 - 舊版本的 Windows:如果不支援icacls
和 ,則嘗試使用和代替rd
cacls
rmdir
解釋和文件:
問題可能是您沒有正確的權限 任意存取控制清單 (DACL)資料夾及其內容。 DACL 標識允許或拒絕存取安全性物件的受託者。因此,僅僅授予資料夾所有權可能還不夠,您還需要在 DACL 中授予權限。您可以使用 icacls 指令授予權限,如上例所示。存取控制清單和 DACL 解釋
帶走 自備文檔 透過將管理員群組設為擁有者,管理員可以恢復先前被拒絕的目錄及其內容的存取權限。/F [目錄]指定哪個目錄,/A將所有權授予管理員群組,/R對目錄、所有檔案和子目錄執行遞歸操作,/D當使用者沒有「列出資料夾」權限時,會抑制確認提示,如下所示是取得目錄所有權的選項。 (注意:Y 選項可能因作業系統語言而異)。
伊卡克斯 icacls 文件 授予管理員群組對目錄的完全存取 DAC 權限。[目錄]指定哪個目錄,/T對目錄和子目錄中的所有指定檔案執行操作,/授予授予指定使用者存取權限:F這提供了完全存取權限。 (註:根據作業系統語言,群組名稱管理員可能會有所不同)
RD 研發文件 刪除目錄及其所有子目錄和檔案。/秒刪除指定目錄及其子目錄,包括所有文件,/q指定安靜模式,這樣您就不會收到確認提示,[目錄]指定要刪除的目錄。
答案2
對我有用的是一個簡化版本這個建議:
- 將資料夾重新命名
Windows
為Windows.old
- 從「開始」功能表執行磁碟清理
Windows.old
選擇包含該資料夾的驅動器- 上一頁“Windows 安裝”,然後按一下“確定”
答案3
注意:現在我想了一下,您應該可以從第 4 步開始,只需點擊「更改權限」按鈕即可獲得存取權限。我會測試,但我沒有要刪除的目錄。
在 Windows 10 上(也可能適用於 Windows 7 和 8):
- 右鍵單擊資料夾->屬性->安全性->進階。
- 點擊所有者旁邊的“更改”(位於頂部)。在方塊中輸入您的用戶名,然後點擊檢查名稱。 (應轉換為 MACHINENAME\USERNAME 樣式。)
- 點選「確定」、「確定」、「確定」退出安全選項。
您現在應該擁有該目錄。
- 右鍵單擊資料夾->屬性->安全性->進階。 (再次。)
- 在權限清單中找到「使用者」。點擊它,選擇編輯,然後選擇完全控制。
- 在底部,選取“替換所有子權限條目...”。
- 點擊“確定”,然後在警告框中選擇“是”。等待電腦應用新的權限。
您現在應該擁有刪除檔案所需的權限。這樣做。 (在 Program Files 資料夾和 Windows.old 上進行了測試。)
答案4
簡單地將 Program Files 重新命名為 Windows.old 並執行 disk clean 來清除系統檔案。同樣的技巧適用於任何您無法刪除的資料夾。