微軟公布 Windows 10 只支援到 2025 年 10 月,勸導大家要更新到 Windows 11。
但舊的電腦升級除了硬體有特別要求,很多舊機都被刷掉,就算買新機也很容易會遇到升級失敗,通常是卡在硬碟格式以前是 MBR ,但 Windows 11 強制使用 GPT 且需 UEFI 模式開機。
往往買了新設備後,在收到 Windows 10 Update 通知可免費升級 Windows 11 後,興高采烈的按下升級,安裝半天卻告訴你:「無法安裝 Windows,因為此電腦的磁碟配置不受 UEFI 韌體支援。」
目前網路上找得到的資源對這個問題眾說紛紜,尤其是在某些熱門論壇上,大部分網友只知道嗆聲提問的網友,好像自己多了不起似的,其實都沒辦法解決問題,最後還是在 ChatGPT 4o 的協助下,才終於搞定九成五的問題。因此,後續如果有遇到虎哥本文沒有提到的狀況,不妨去詢問 ChatGPT。
在一切動作之前,這裡先強烈建議大家,如果你的 Windows 使用習慣,是強烈依賴舊版工作列 (task bar) 的情況,像是會同時開啟很多軟體、會改變工作列長寬、會在上面放很多軟體捷徑、會把工作列放在左邊或右邊或上面之類的人,那千萬先別急著升級! (虎哥個人就是升級完不到 15 分鐘就非常後悔,馬上還原成舊版 Windows 10)因為 Windows 11 似乎很強烈的想讓自己變成 Mac OS,強迫工作列只能放在最下面,各種好用的自訂功能,添加工具列……等等全部被刪除,只留下非常陽春的按鈕靠左顯示、自動向下隱藏這種功能。其他你想使用任何軟體,都必須「背下軟體名稱」,使用搜尋的方式叫出,或者僅能釘選幾個在工作列上,再也不能像以前那樣,每天開機固定點幾下工具列上的 Icon ,馬上就可以開始工作。
似乎再度應證了以前虎哥在這篇講過的幹話,只要用戶覺得什麼功能好用,微軟就會把它刪除 https://www.angrywater.net/2019/04/windows-8-windows-10-1803.html目前雖然有第三方軟體可以恢復部分功能,例如將工作列變透明、可以擺放在桌面上下左右的邊緣,但功能還是不太穩定,有時候安裝好它會說不支援目前版本的 Windows 11,算是遠水救不了近火。
根據很久以前虎哥聽微軟內部人員的說法,Windows 版本有「隔代遺傳」的狀況,由不同的兩大團隊設計的版本,會交替推出上市,也就是說,如果你覺得現在使用的版本好用,最好隔一版再換代。若現在 Windows 10 覺得好用,那照理說應該要等 Windows 12 推出再更新,但聽說 12 版不是要延後推出,就是被 Windows 11 2025 給「取代」 (很可能只是上市檔期被取代,而不是版本被取代)。所以,現在只能等微軟改變主意又推出 Windows 12,或者 Windows 11 的開發團隊終於想開,願意把好用的 task bar 舊功能再恢復回去。
總之,如果等不及下一版的話,切記升級以後,會有一場使用習慣的災難,建議盡量不要在比較沒空的時候升級,否則真的是自找麻煩。
以下言歸正傳。做以下操作之前,請先建立可完整還原的硬碟備份,以免轉換失敗還可以還原成 MBR 的系統。
升級之前,必須要確認自己的 Windows 10 系統碟是以 GPT 模式運行,因為 Windows 11 強迫使用 UEFI 模式開機,而這個模式需配合 GPT 硬碟模式執行。
由於 GPT 模式配合 UEFI 據說執行效率比較好,也可以支援 2 TB 以上的硬碟容量,所以即便虎哥現在不急著升級,評估之後覺得可以先把硬碟模式調整好,讓 Windows 10 執行得更順暢,將來準備好升級的時候,也可以輕鬆一鍵升級。
通常可以先測試「命令提示字元」(cmd) 執行 mbr2gpt.exe ,直接「不刪檔轉換」。
請注意,以下的所有「命令提示字元」程式,均需要「以系統管理員身份執行」,否則就會因為權限不足而失敗。
mbr2gpt /disk:c /convert /allowFullOS
有些人這一步就可以成功轉換,後面應該就沒事了,可以直接跳到後面看如何以 bcdboot 重建開機區的部分。
除非跟虎哥一樣遇到轉換失敗的問題:
"Disk layout validation failed for disk 0"
失敗的原因有很多種,網路上也有說是只能作用在系統碟,或者分割磁區太多,不能超過三個磁碟分割之類的,刪除掉一些就可以了,但虎哥沒有那麼好運,只有一個或兩個磁碟分割都沒用,就是會持續出現錯誤。
這時候就要依賴第三方軟體來處理了,之前有許多人推薦的免費軟體,目前均已變成要收費,還是訂閱制,有的甚至一次就要每個月收超過千元台幣以上,這明明只是個一次性的軟體,真的不知道訂閱要幹嘛?
還好後來找到 DiskGenius 這款軟體目前還是免費 (2025.0302)。
先去下載並讓它安裝,同時這裡得先修改開機碟分割磁區,按下 Win + R ,打入 DiskMgmt.msc 執行「磁碟管理員」。
先找到你的系統碟,要騰出空間給 GPT 的 UEFI 開機區
按下滑鼠右鍵,選擇「壓縮磁碟區」 (這裡和 ZIP 那種壓縮 compress 無關,是指縮小 Shrink)
輸入 256 MB 空出來給未分割區 (據說可以更小,大約 100 MB 左右即足夠,但為了避免始料未及的麻煩,還是抓了大一點)
按下確定並處理完後,應該會看到出現一個「未配置區」,就表示成功了
這時候要特別注意,有時候開機區會自動增生成兩個,就是進 BIOS 會看到開機啟動多了一個重複的出來:
雖然放著不管應該也不會怎樣,但這裡建議還是先刪除掉一個,不然後面可能會出現三個開機啟動選項,但只有一個是有用的。
刪除指令的格式大概是這樣:
bcdedit /delete {xxx}
{xxx} 部分要先用下面指令列出來,找出重複的那個:
bcdedit /enum firmware
從畫面中可以看出來,是要刪除掉「韌體應用程式」那個是後來多出來的。如果怕刪錯的人,可在前面「壓縮磁碟區」之前,先用指令 bcdedit /enum firmware 列出來原來的,比對一下就知道哪個是後來多出來的。
然後,這邊就要安裝好 DiskGenuis 開始將 MBR 轉換 GPT 格式了:
打開軟體以後,在左邊找到自己的開機碟並選擇它。這裡也可以先把其他所有其他 SSD / SATA 資料碟都先轉換成 GPT 格式 (USB 裝置除外),再來處理比較麻煩的系統碟。
然後,滑鼠右鍵選單選擇「Convert To GUID Partition Table」,對,就是這個,其實 GPT 就是 GUID Partition Table 的縮寫。一開始虎哥找不到 GPT 選項,還以為是下錯軟體。
回答完問題,確定轉換以後,應該就可以看到硬碟已經被設定為 GPT 模式,但這裡還沒有完成,先別急。
到上面的 Partition 選單選擇「Creat ESP/MSR Partition」功能,建立磁碟分割給未來 UEFI 開機資料區使用:
此時會跳出輸入框,ESP 空間輸入比剛才預留的磁碟分割小一點的數字,例如虎哥寫 200 MB,左邊的 sectors 對齊,網路上有人說是 2048 Byte,但本軟體沒有這個選項,就選最小的 4096 Byte:
這裡要特別注意,雖然剛才系統碟保留 256 MB 空間,但這裡不要填滿 256,否則 MSR 磁碟分割就不會建立了,而且軟體也沒有跳出警告,一不小心就會失敗。MSR 磁碟分割大概會需要預留至少 16 MB。
都設定好之後,應該會看到三個磁碟分割,以及格式變成 GPT,注意,這樣還沒有好,還得儲存套用:
選擇左上角的 Save All (Save Partition Table) 才會真的套用設定:
之後應該會跳出警示訊息,回答完並確認轉換之後,就算已經成功轉換成 GPT 模式了。
接下來就要處理開機區的部分,步驟比較多,會麻煩一點。雖然照著做應該其實也沒啥問題,如果怕看不懂的人,可以先去研究一下什麼是 Disk / Partition / Volume ,就會比較懂為何要有這些步驟。
首先在 cmd 裡面執行 diskpart 指令,進入 diskpart 後,就可以用兩個指令確認自己的開機碟是哪一個:
list disk
list volume
這個畫面的資訊每個人都不一樣,怕麻煩可以把所有硬碟都先物理離線,只留下系統碟,以虎哥的畫面來說,系統碟是在 disk 4 ,剛才製作的 ESP 磁區是 FAT32 ,所以應該不難辨認。
所以就得先選擇該硬碟,這裡的 4 請換上你自己的正確硬碟代號:
select disk 4
再來使用指令找出 ESP 磁碟分割,選擇它,並指定磁碟代號為 S 槽:
list partition
然後就可以離開 diskpart ,開始複製建立 UEFI 開機區:
bcdboot C:\Windows /s S: /f UEFI
這裡請特別注意,指令格式是:
bcdboot [0]:\Windows /s [1]: /f UEFI
其中 [0] 要置換成你的開機碟,有時候會因為開機方式不一樣而跑掉,代號不一定是 C:,[1] 的部分則是剛才將 ESP 指定的磁碟代號,範例中是使用 S: ,你也可以指定不一樣的代號,然後填入 [1] 的位置。
這行指令的目的,就是從系統安裝區將開機所需的資料,以 UEFI 格式複製到 ESP 開機區。特別要做說明的原因是,之後如果開機出什麼問題,有可能要回來重做開機區,因此最好記住這條指令所代表的意義。
到這一步其實就算設定完成,可以在 GPT 格式硬碟上用 UEFI 模式開機了。使用磁碟管理工具,也能看到 ESP 磁碟分割區,有顯示了「EFI 系統磁碟分割」。
然後,先重開機進入 BIOS 設定,找到 BOOT 項目,有可能會看到兩個一模一樣的開機區可以選擇,如果你前面沒有先把重複的開機區做刪除的動作,那很可能會跑出三個或以上的重複開機區。假如你有先刪除才做後續動作,那通常應該選第二個,就是剛才新建立的 ESP 磁碟分割的開機區。
選錯了開機就會出現藍幕錯誤訊息,此時不用緊張,選擇其他的開機區,再重開一次,直到正常重開機,就大功告成了!
這裡可能會因為 Windows 版本不同或主機板品牌和 BIOS 版本不一樣,導致重複的開機區一直無法刪除乾淨,就算刪除了還會自動又產生新的出來,在 BIOS 設定永遠都顯示至少兩個重複的開機設定。
這個問題經過多次實驗,也和 ChatGPT 求助,都未能得到圓滿的解決。貌似 Windows 10 或 BIOS 有什麼保護機制,會自己重複抓取舊的開機區。有可能升級成 Windows 11之後,該問題就會自然消失。
由於虎哥目前還沒有升級的打算,也嘗試太多次都無法解決,反正不太會影響使用,打算就先這樣放著不管了。
希望以上虎哥本人用時間和血汗換來的經驗,能給大家帶來幫助,祝大家操作順利。