[指令日記] 010 換電腦後外接舊硬碟出現「沒有權限」?用 takeown + icacls 一次解乾淨(Windows 教學)

這是一個我實際遇到、也幾乎 每個工程師都會踩到一次的情境

實際案例

  • 舊電腦淘汰 / 壞掉
  • 原本的 C 槽硬碟 拆下來
  • 用外接盒接到新電腦
  • 磁碟看得到、空間正常
  • 但一點進資料夾就跳出:

❗ 您目前沒有權限,無法存取這個資料夾
👉 按「繼續」才能進去,而且每個資料夾都來一次

這時候你可能已經做過:

  • chkdsk /f
  • 右鍵 → 安全性 → 點到懷疑人生
  • 開管理員帳號

👉 但問題依然存在


問題不是磁碟壞,是 NTFS 的設計

關鍵在這一句:

Windows 判斷權限,看的是 SID,不是帳號名稱

什麼是 SID?

  • 每個 Windows 使用者都有唯一的 Security Identifier
  • 即使帳號叫 user,換一台電腦 SID 就完全不同

所以:

  • 舊電腦的檔案擁有者 = 舊 SID
  • 新電腦不認得這個 SID
  • Windows 就會擋你

👉 這是 安全機制,不是 Bug


為什麼 chkdsk 修好也沒用?

因為:

  • chkdsk 只修 檔案系統
  • 不會碰 檔案擁有者 / ACL 權限

所以看到:

Windows 已修正檔案系統。
不需要進一步的動作。

👉 只能代表「磁碟健康」,不是「權限正常」。


正確解法:用指令一次處理整顆磁碟

前置條件

  • 以「系統管理員身分」開啟 CMD
  • 確認磁碟代號(以下假設為 D:)

Step 1:取得整顆磁碟的擁有權

takeown /f D:\ /r /d y

作用

  • 把所有檔案與資料夾的擁有者
  • 改成目前登入的使用者

Step 2:給自己完整控制權

icacls D:\ /grant %username%:F /t

作用

  • 設定 NTFS ACL
  • 給你完整讀 / 寫 / 刪 / 改 權限

操作完成後的狀態

正常情況下,你會看到:

  • 不再跳「沒有權限」
  • 不用再按「繼續」
  • 檔案可直接開啟
  • 外接硬碟可正常使用

⚠️ 資料不會被刪,也不會被改內容
只是「身份被更新」


什麼情況不適合這樣做?

請先停下來,如果:

  • 硬碟有 BitLocker 加密
  • 公司配發、非你所有的硬碟
  • 不確定資料合法性

小結

這不是偏門技巧,而是:

  • 正規 Windows 工具
  • 官方設計下的正解
  • 工程師一定要懂的 NTFS 概念

takeown 解的是 擁有者
icacls 解的是 存取控制

飛飛
飛飛

講師學歷:臺科資工所、逢甲資工系畢業。
技術專長:OSINT、滲透測試、網站開發、專業易懂教育訓練。
證照書籍:OSCP、OSCE³、著《資安這條路:領航新手的 Web Security 指南》。
教學經驗:60+ 企業教學經驗、指導過上百位學員。
教學特色:新手友善、耐心指導、擅長圖解(流程圖、心智圖)引導學習。
社群經驗:目前經營全臺資安社群 CURA,曾任臺科資安社社長、逢甲黑客社社長。
社群交流:LINE 社群《飛飛的資安大圈圈》,即時分享經驗、鼓勵交流。
社群分享:FB 粉專《資安這條路,飛飛來領路》,分享文章與圖卡整理。
個人網站:feifei.tw 分享資安技術文章;pbtw.tw 分享 AI 相關應用;ssdlc.feifei.tw 分享軟體安全開發流程文章。