請選擇 進入手機版 | 繼續訪問電腦版

NoName Team 電腦資訊討論區

 找回密碼
 我要註冊
搜索
查看: 383|回復: 6

[問題] 設置差異備份vhd無法開機

[複製鏈接]
發表於 2019-12-28 10:40:49 | 顯示全部樓層 |閱讀模式
有成功設置差異備份的VHD,但是刪除之後,再重新建立一個差異vhd,這次卻開不了機,
猜測可能是開機設置有問題,但是不太確定,想請各位幫我看看,

簡單說明一下,我原本系統是win7旗艦版本,有新增一個win10.vhd
然後用這個win10.vhd當父vhd,新增一個差異備份子vhd,檔名Win10diff01_VHD

使用指令
bcdedit /copy {default} /d “Win10diff01_VHD”
bcdedit /set {guid} device vhd=[locate]\win10.vhd
bcdedit /set {guid} osdevice vhd=[locate]\win10.vhd


有出現在開機選單,卻無法進入,之前可以,不知道為何現在不行

下面是我的bcdedit資訊
----------------------
Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume1
path                    \bootmgr
description             Windows Boot Manager
locale                  zh-TW
inherit                 {globalsettings}
default                 {default}
resumeobject            {0e053ee3-1cda-11ea-ac05-bb537f157dc3}
displayorder            {default}
                        {current}
                        {c1462005-225e-11ea-b6e8-c45444fe8191}
toolsdisplayorder       {memdiag}
timeout                 30

Windows 開機載入器
-------------------
identifier              {default}
device                  vhd=[C:]\win10.vhd
path                    \Windows\system32\winload.exe
description             Windows 10
locale                  zh-TW
inherit                 {bootloadersettings}
recoverysequence        {0e053ee5-1cda-11ea-ac05-bb537f157dc3}
custom:15000066         4
recoveryenabled         Yes
custom:17000077         352321653
osdevice                vhd=[C:]\win10.vhd
systemroot              \Windows
resumeobject            {0e053ee3-1cda-11ea-ac05-bb537f157dc3}
nx                      OptIn
custom:250000c2         1

Windows 開機載入器
-------------------
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Windows 7
locale                  zh-TW
inherit                 {bootloadersettings}
recoverysequence        {ec63c949-5f97-11e4-bfc7-eac06da98c5c}
recoveryenabled         Yes
osdevice                partition=C:
systemroot              \Windows
resumeobject            {ec63c947-5f97-11e4-bfc7-eac06da98c5c}
nx                      OptIn

Windows 開機載入器
-------------------
identifier              {c1462005-225e-11ea-b6e8-c45444fe8191}
device                  vhd=[locate]\win10.vhd
path                    \Windows\system32\winload.exe
description             “Win10diff01_VHD”
locale                  zh-TW
inherit                 {bootloadersettings}
recoverysequence        {0e053ee5-1cda-11ea-ac05-bb537f157dc3}
custom:15000066         3
recoveryenabled         Yes
custom:17000077         352321653
osdevice                vhd=[locate]\win10.vhd
systemroot              \Windows
resumeobject            {0e053ee3-1cda-11ea-ac05-bb537f157dc3}
nx                      OptIn
custom:250000c2         1

發表於 2019-12-29 06:33:00 | 顯示全部樓層
情況最好寫詳細一點...例如 分割區狀態 , UEFI/BIOS ... 等等

推測因為你用 [locate] 吧
vhd 是在 啟動分區 時... 才能用 [locate]
這和 wim 用 [boot] 一個意思...
如果 wim/vhd 不是在 啟動分區...就不能用 [boot]/[locate]
要直接指定 磁碟和分區

假設原始的 win10.vhd 是可以開機的...
而你的 win10.vhd 是在 [c:] ... 見 {defalut}
但 開機 device 是 \Device\HarddiskVolume1 ... 見 {bootmgr}
{bootmgr} 中 device 不是 partition=C:
表示...你的 啟動分區 即 bootmgr 所在分區...應該不是 C:
(如果是應該會顯示成 partition=C:)

所以推測你應該是 win7 預設安裝的情況
(即有1個 啟動分區 , windows 安裝在另一個 system 分區)

然後你要用父子 VHD...
最好是2個 vhd 都在一個分區下 ... 當然不是一定要這樣...但提前是你 差分VHD 不能設錯
例如
c:\win10.vhd ... 父VHD
c:\Win10diff01.vhd ... 子VHD

那你應該下
bcdedit /copy {default} /d “Win10diff01_VHD”
bcdedit /set {guid} device vhd=[C:]\Win10diff01.vhd
bcdedit /set {guid} osdevice vhd=[C:]\Win10diff01.vhd

或是你先將 Win10diff01.vhd 先掛載...例如掛載到 W: 然後
bcdedit /copy {default} /d “Win10diff01_VHD”
bcdedit /set {guid} device partition=W:
bcdedit /set {guid} osdevice partition=W:

然後 bcdedit 會自動判斷 vhd ... 來寫入 device 和 osdevice
也就是 缷載 vhd w: 後 ...
device/osdevice 看到的不是 partition=W:
而是類似 vhd=[C:]\Win10diff01.vhd
 樓主| 發表於 2019-12-29 18:59:08 | 顯示全部樓層
感謝金田一大大的指導,目前的狀態是成功了
我是參考這篇來操作
它裡面是說
差異VHD一定要以「vhd」參數來指定檔案,而原本的「C:」得改成「locate」這個固定字串才行。完成後一樣重新開機,就能進入以差異備份建立的VHD系統。

所以我才會用[locate]這個字串
總之感謝金田一大詳細的教學,目前是ok了
發表於 2019-12-30 02:59:45 | 顯示全部樓層
本帖最後由 阿達金田一 於 2019-12-30 03:43 編輯
suworm 發表於 2019-12-29 18:59
感謝金田一大大的指導,目前的狀態是成功了
我是參考這篇來操作
它裡面是說

那篇有錯誤...
你看那篇一開始也是用 [c:]\windows7.vhd
基本上... vhd 開機都一樣...不管是不是 差分vhd
差分(子)vhd 只是 vhd 本身有 父vhd 設定

簡單說...例如 你搞定了 c:\win10.vhd 的開機
然後...要 差分VHD 其實可以
1. c:\win10.vhd 先改名成 c:\win10_parent.vhd
2. 建立一個 差分子VHD c:\win10.vhd ... 設定 父VHD 為 c:\win10_parent.vhd
這樣就可以了...開機其實並沒有變...還是用 c:\win10.vhd
只是 c:\win10.vhd 改成 差分子VHD 而以

其實我個人是沒用過 [locate] ...因為意義不明...
bootmgr 把 [locate] 指向(代表)哪個裝置...不太清楚
不像 [boot] 是指 啟動分區...很清楚...
基本上就是 bootmgr bcd 所在那個 啟動用的分區

所以不是不能用 [locate]
但...這意味著...要把 vhd 放到 [locate] 所指向的 磁碟分區
而我之所以說 [locate] 可能和 [boot] 一樣是因為...
在 bootice 中設定時... boot/locate 是算一起的...
也就是用 bootice 設定 bcd 時...
如果 啟動磁片(device) 選 boot/locate ...
如果開機是用 ramdisk(wim+sdi) ...device 會用 [boot]
如果開機是用 vhd ... device 則會用 [locate]

 樓主| 發表於 2019-12-30 12:26:22 來自手機 | 顯示全部樓層
阿達金田一 發表於 2019-12-30 02:59
那篇有錯誤...
你看那篇一開始也是用 [c:]\windows7.vhd
基本上... vhd 開機都一樣...不管是不是 差分vhd

感謝金田一大大指導,
改名字那招太威了,有點像是騙過系統的感覺
再度感謝您的指教
發表於 2019-12-31 04:13:10 | 顯示全部樓層
suworm 發表於 2019-12-30 12:26
感謝金田一大大指導,
改名字那招太威了,有點像是騙過系統的感覺
再度感謝您的指教 ...

其實算不上騙吧
差分vhd 本身就是 副本vhd ... 一開始 內容 其實和 原本的父vhd 都一樣
所以當然可以直接用原本的 bcd 啟動

而且 bcd 只是設定 用哪一個 vhd 啟動 而以...沒說 vhd 不能換
(就像 PE ... 換個 boot.wim ...也沒需要去改 bcd)

換個方法來說
只要 bootmgr 啟動有支援
不管你 vhd 是哪種...它都是 vhd ... 差分 那是 vhd 本身運作處理的問題

所以 差分vhd 跟 copy vhd 對 bootmgr bcd 其實沒2樣...
就 vhd 使用上 來說 ... 差分 和 copy 也沒差很多(不是指底層運作處理)
只是 差分 在初期  建立比較快速方便...而且比較省空間 ... 但 父vhd 不能變動
差分 主要應用在 一個 原本vhd...建立多個 副本vhd
這個用 copy 來達成...也是可以(也就是多copy 幾份而以)...但 佔空間 花時間
 樓主| 發表於 2020-1-1 11:23:57 | 顯示全部樓層
阿達金田一 發表於 2019-12-31 04:13
其實算不上騙吧
差分vhd 本身就是 副本vhd ... 一開始 內容 其實和 原本的父vhd 都一樣
所以當然可以直接 ...

好的感謝金田一大指教,
之所以選擇vhd真的如您所說,
建立方便,不佔空間
而且他可以建立多層之後再合併(垂直樹,只有最底下那層可寫入)
或是建立平行的獨立子vhd(平行樹,各層都可寫入)
算是滿有彈性空間的測試環境

最後很感謝您的詳細解說!
您需要登錄後才可以回帖 登錄 | 我要註冊

本版積分規則

小黑屋|手機版|NoName Team 電腦資訊討論區 |網站地圖

GMT+8, 2020-3-30 01:55 , Processed in 0.089890 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表