# 使用 Windows 8 時，如何進入沒有相同 SID 權限的目錄

前天第一手拿到 Windows 8 作業系統，便即刻將我的筆記型電腦重裝為 [Windows 8 RTM](http://msdn.microsoft.com/en-us/evalcenter/jj554510.aspx) 版本，在重裝之前照慣例會先將原本硬碟做一次完整影像備份 (你可以用 [Disk2vhd](http://technet.microsoft.com/en-us/sysinternals/ee656415.aspx) 或其他影像備份軟體)，當重裝完成正在復原資料與設定時卻發現缺漏了一些檔案，所以就把原先備份的檔案叫出來，並掛載為一顆磁碟機，想說直接複製檔案出來即可，但悲劇就這樣發生，欲知詳情請繼續看下去…

首先，我先把原先的硬碟備份掛載成為 Windows 8 下的其中一個磁碟機 ( **T:** )，並試圖進入特定目錄，想複製檔案出來，但卻完全無法進入目錄 (如下圖示)

![](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/95646c872d758fbed3fd-image_1653.png)

一般來說，當我們按下【繼續】按鈕之後，Windows 8 會自動將目前的使用者執行權限提升為【系統管理員】（也就是以 **BUILTIN\\Administrators** 的權限繼續操作），不過這次當我按下【繼續】按鈕後竟然被直接告知【您已被拒絕，無權存取這個資料夾】，真是晴天霹靂!

**備註**: 我認為應該是兩台電腦之間的 SID 不一致，外加磁碟機是唯讀的，所以才無法存取資料夾!

![](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/9866237895face7cf4bc-image_1654.png)

接著我試著想修改這個資料夾的**安全性**設定，先變更目錄與檔案的擁有者，再變更目錄與檔案的權限，基本上應該是可以存取的，可惜我掛載的這個磁碟卻是【唯讀】的，因此完全無法修正權限，也代表著我無緣取得我的備份檔案的嗎？！當然不是，我其實可以多找一顆硬碟，將目前的備份檔還原回去，用那顆硬碟開機，然後把檔案複製出來，再複製到這台新的 Windows 8 裡。不過光想到這些麻煩的步驟就覺得做完後心情不會太好，因此勢必要找出更偷懶的作法！

還好我前陣子有花點時間[研究過 Windows 8 的使用者帳戶控制(UAC)](/post/2012/07/01/Windows-8-User-Access-Control-UAC-in-detail-and-tips.aspx)，知道他跟 Windows 7 有很大的不同，所以後來我用[該文章](/post/2012/07/01/Windows-8-User-Access-Control-UAC-in-detail-and-tips.aspx)裡的變身技巧，先將自己變身為【系統管理員權限】使用檔案總管，方法如下：

1.  透過【**以系統管理員身分執行**】開啟 **命令提示字元** 視窗  
    按下快速鍵 **Win + X** 再按下 **A** 即可開啟  
    ![](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/0e9be98863e58c042331-image_1655.png)
2.  執行以下指令，將現有**檔案總管**程序全部強迫關閉  
    **taskkill /IM explorer.exe /F**
3.  再執行以下指令，將**檔案總管**重新啟動（此時會以以**系統管理員身分**啟動）  
    **start explorer.exe**

如此一來就能在各目錄間遊走無誤了！

最後補上我後來調整過的批次檔，這樣就不會在沒有【**以系統管理員身分執行**】的情況下執行程式!

```csharp
@ECHO OFF

>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

IF %ERRORLEVEL% EQU 0 (
  TASKKILL /IM explorer.exe /F
  START explorer
  EXIT
) ELSE (
   echo.
   echo 請使用【以系統管理員身分執行】啟動此批次檔
   echo.
   PAUSE
   EXIT /B 1
)
```

**相關連結**

-   [Windows 8 進入 RTM 里程碑](http://windowsteamblog.com/international/b/taiwan/archive/2012/08/02/windows-8-rtm.aspx)
-   [Download Windows 8 Enterprise Evaluation](http://msdn.microsoft.com/en-us/evalcenter/jj554510.aspx)
-   [Releasing Windows 8 - August 1, 2012](https://learn.microsoft.com/en-us/archive/blogs/b8/releasing-windows-8-august-1-2012)
