找回密碼
 我要註冊
搜索
123
返回列表 發新帖
樓主: JonesLee

[問題] [已解決]請問一下如何把 XP 裝好的系統 壓入 INSTALL.WIM

[複製鏈接]

35

主題

9

好友

1976

積分

高級會員

Rank: 4

在線時間
673 小時
威望
0
金錢
4207
貢獻
0
最後登錄
2017-1-18
註冊時間
2012-4-23
帖子
462
主題
35
精華
0
積分
1976
UID
1762
發表於 2017-1-9 21:33:17 |顯示全部樓層
本帖最後由 fd3233 於 2017-1-9 22:32 編輯

今天心血來潮的我重新測試雖然有進展但是一樣無法開機
我說下我的步驟:
1.拿上網抓的XP SP4 安裝完成在VMWARE 工作版
2.VM新建一顆硬碟 拿XPE 使用 DiskGenius 切分那顆虛擬硬碟
3.用 gimagex.exe 把第一顆虛擬硬碟製作映像成 WinXP_SP4.wim 並且放在第二顆硬碟
4.把剛才的檔案複製到16G 隨身碟  拉出來到實體介面
5. 在實體機 我目前WIN8.1 實體電腦>>本機 右鍵 管理>>磁碟管理>>建立VHD  30GB 動態擴充>>初始化磁碟>>新增簡易磁區  電腦多出一個30G VHD硬碟
6.用 gimagex.exe 把剛才的  WinXP_SP4.wim 映像還原到剛才建立的VHD磁區
7.看圖比較快  追加舊映像功能到 WIN7 的INSTALL.WIM (我試過win8 的install.wim 會卡在授權)

完成後如下圖

8.放回去 install.wim 到WIN7 安裝光碟  注意 /sources/ei.cfg 要刪除掉否則不能選單  儲存iso檔案
9.虛擬機新增win7 的模擬檔案 iso載入剛才修改的 win7 iso  開機
10.win7安裝介面就出現了 xp 安裝選單

11.不論選擇哪個磁碟安裝都一定會產生個100mb 然後就會出現下面的錯誤

出錯後按確定會回到開始安裝畫面
直接重開機出現以下畫面


目前結論是缺少 bootmgr
可能步驟:需要在封裝前就要先複製 win7的 bcd file 來用bootice 修改 (未測試)

目前先解決100mb 的問題似乎可以直接開機  但是遇到wga 問題稍後解決後再測試

22

主題

17

好友

2587

積分

超級版主

Rank: 16Rank: 16Rank: 16Rank: 16

在線時間
669 小時
威望
0
金錢
6320
貢獻
0
最後登錄
2017-1-18
註冊時間
2012-3-18
帖子
454
主題
22
精華
2
積分
2587
UID
211

版主 特殊貢獻

發表於 2017-1-9 23:34:18 |顯示全部樓層
本帖最後由 阿達金田一 於 2017-1-10 06:03 編輯
fd3233 發表於 2017-1-9 21:33
今天心血來潮的我重新測試雖然有進展但是一樣無法開機
我說下我的步驟:
1.拿上網抓的XP SP4 安裝完成在VMWA ...

話說你的處理順序感覺有點小麻煩 ... 要是我的話
VM 可以掛 VHD 吧 ... (我都用 vbox ... 掛 VHD ... 要拉檔案 實機Win下掛 VHD 就可以直接拉了)
所以 VM 掛 VHD ... VM 再安裝 XP
之後 VHD 就可以在 實機Win 下操作了吧
然後直接加入到 install.wim 就可以

要用 win7 原本的 安裝PE  安裝XP ... 問題在開機處理吧
Win 主體反而是其次... Wim 說穿了就和 壓縮/解壓縮檔案 差不多
問題在Win主體安裝好後...開機流程 的建立

而 NT5 和 NT6以後...用的開機檔又不一樣一個是 NTLDR 一個是 Bootmgr
所以...如果要用 Win7 安裝PE 來安裝 XP
要嘛...安裝好後 手動處理開機
要嘛...就要依照 Win7 除處理開機的方式

下面就是推測了...我個人現在是很懶的做測試了

安裝PE 安裝Win 時
1. 首先 MBR 當然是刷成 Win7 的 MBR ... 這個沒啥好說
2. 啟動分區 的 PBR ... 刷成 NT6 PBR ... BOOTMGR
3. 複製 BOOTMGR 來源...這個推測是 \Windows\boot 下面的檔案
一般安裝大概只要
\Windows\boot\Fonts
\Windows\boot\PCAT
不過不知道 安裝PE 是本身自動帶有 處理開機 的程序
還是另外調用其它程式 (例如 bcdboot.exe)
如果是另外調用...就還要補檔案

4. 安裝PE 的其它處理...
這個就不清楚...因為沒有實測過
若是有...可能也是要補一些檔...
不過推測是 除非用 安裝PE 加入Driver ... 不然可能沒有
因為照 安裝PE 的原本做法...若是有加入 Driver 的動作 ... 應該會對 Win 主體加入 Driver
那就可能會調用相關的程序 ... (例如 dism 之類的)
至於 沒加入 Driver 時...是否依然會調用其它程序...就要實測了



接下來是怎麼解決的思路...

1. 如果直接把 Win7 的 boot 拿到 XP 下放著...
這樣也許安裝時...開機可以順利到 bootmgr 但一樣會開機失敗
因為 XP 沒有 winload.exe
拿 win7 x86 的 winload.exe ? ... 因為 Win核心 不同...可能是不能用
就算可以也不推薦吧...

2. 用 NTLDR  取代 bootmgr (\windows\boot\pcat\bootmgr)
這樣開機可能是載加 NTLDR ... 但 boot.ini 怎麼產生
先做好 boot.ini ? ... 但 NTLDR 和 boot.ini 要在一起才行
除非安裝時是把 XP 安裝到 啟動分區 ... (原始 XP 安裝大多數也是這樣做)

3. 所以比較還有可能的做法就是...拿 GRLDR 取代 bootmgr (\windows\boot\pcat\bootmgr)
當然 menu.lst 就要先做好 放到 XP 中 (或是內置到 GRLDR 中)
至於 menu.lst 除了下面2行指令外
find --set-root /NTLDR
chainloader /NTLDR
大概還要加入 刷新 boot.ini 的指令 ...
因為 boot.ini 中...開機都會有 multi(0)disk(0)rdisk(0)partition(1)\WINDOWS 這樣的字順
所以依照 XP 所在 分區 的不同 ... 要修改一下...例如 multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
這個部份比較麻煩...沒實測一下我也給不出指令

以上只是參考...因為都沒實測

補充
另外我前面回文有貼相關的文章
其實用 安裝PE 安裝 XP ... 其實只是解 WIM 而以...中途出錯後...就沒繼續
所以沒有處理到 開機部份
而 bootmgr 的 PBR 其實是會載入 NTLDR 的
所以...簡單說... 前面文章的那些做法...最終是用 安裝PE 來 解WIM 而以
解完後....就會出錯(大概是因為XP缺少 安裝PE 需要的檔案) ... 然後就可以中斷重開機
這個部份我用 vbox 測了一下...很簡單
1. 安裝 XP
2. Sysprep
3. 打包WIM
4. 安裝PE  安裝時... 基本上 XP 只能安裝到 (hd0,0) 而且要是 啟動分區...( 雖然一般安裝 XP 也都是這樣 )

35

主題

9

好友

1976

積分

高級會員

Rank: 4

在線時間
673 小時
威望
0
金錢
4207
貢獻
0
最後登錄
2017-1-18
註冊時間
2012-4-23
帖子
462
主題
35
精華
0
積分
1976
UID
1762
發表於 2017-1-10 20:54:18 |顯示全部樓層
今天測試
拿有啟用過的xp 用easy sysprep封裝過的xp 單一磁碟 不要100mb 可以直接開機
事先在vhd 的F槽放入 Boot/BCD 跟 bootmgr 似乎無法開機
用PE BOOTICE檢查發現 雖然名字還在 但是啟動磁片跟開機磁碟分割全部跳掉了
似乎不能直接加入 Boot/BCD 跟 bootmgr

另一個做法有空再試試  也可能不試了
先安裝XP在跟WIN7 並存看看

22

主題

17

好友

2587

積分

超級版主

Rank: 16Rank: 16Rank: 16Rank: 16

在線時間
669 小時
威望
0
金錢
6320
貢獻
0
最後登錄
2017-1-18
註冊時間
2012-3-18
帖子
454
主題
22
精華
2
積分
2587
UID
211

版主 特殊貢獻

發表於 2017-1-10 23:19:36 |顯示全部樓層
本帖最後由 阿達金田一 於 2017-1-10 23:21 編輯

安裝PE 出錯中斷時...其實只做了把 win主體從 install.wim 提取出來而以...
其它動作都沒做 ... 所以開機部份也沒處理
原本是什麼 MBR PBR 就是什麼 ... 只是一般安裝前 分割區 大多會 格式化 吧...所以 PBR 若有格式化會變成 bootmgr
不過如果 分割區 中如果有 NTLDR 沒 bootmgr ... bootmgr PBR 一樣會去載入 NTLDR 來開機 ( bootice 刷 bootmgr PBR 時...也可以看到有 NTLDR 的載入)

所以只要 NTLDR  和 Win主體 在一起...都在 第1個分區(啟動) ... 開機越大多都是可以的...
而 boot.ini 找不到... NTLDR 預設也會以 第1個硬碟 第1個分區 中的 Windows 來開機...

因此我才說...用 安裝PE 安裝 XP Wim ... 其實整個來說
就是把 XP 放到 第1個硬碟 第1個分區(啟動) ...然後就出錯中斷
不過這時因為 XP 的檔案應該放好了(除了 boot.ini 會不見)
所以中斷也沒差...

另外...不知道是不是 XP SP3 NTLDR 的 bug (因為我記得 SP2 以前好像不會 ? )
下面這種情況 XP SP3 是無法開機
(hd0,0) 啟動分區 ( NTDLR  boot.ini )
(hd0,1) XP
vbox 我是用  XP ISO 直接這樣安裝...
XP 安裝程式 NTLDR 是放到 啟動分區 (hd0,0)
XP Win主體 是安裝到 (hd0,1)
我記得之前(SP2之前)這樣做...開機是正常的
boot.ini 也是指向 (hd0,0) 來開機
但 XP SP3 這樣安裝後 ...重開機時...會卡住 ... NTLDR 載入完就卡死不動 (停在黑屏)

然後...只要把 啟動分區 改成 (hd0,1) ... NTLDR boot.ini 之類的開機檔也 Copy 過去 ... 就可以開機了
所以感覺是 NTLDR Bug

所以 XP SP3 就是 NTLDR Win 都要放到 啟動分區 去...
NTLDR 本來就是在 啟動分區 ... 所以剩下的就是 安裝時 XP 要安裝到 啟動分區

而啟動分區 一般也都是 第1個分區

所以 XP SP3 的安裝...等於在限定的條件下來安裝...
因此若是用 NT6後的 安裝PE 來用 Wim 安裝...其實也是一樣...只要附合條件...只要 XP Win主體 的檔案灌好就可以...所以出錯中斷也沒差

感覺好像在重複講同樣的東東...反正就是那個意思...

7

主題

5

好友

286

積分

中級會員

Rank: 2

在線時間
73 小時
威望
0
金錢
534
貢獻
0
最後登錄
2017-1-18
註冊時間
2016-1-8
帖子
106
主題
7
精華
0
積分
286
UID
22869

最佳新人

發表於 7 天前 |顯示全部樓層
本帖最後由 JonesLee 於 2017-1-12 09:17 編輯

XP 可以壓入 WIM 檔案,但是無法使用 WIN 7 的安裝程式
只能使用 DISM 還原之後,再用 BOOTICE 修復導引之後重開就行了

NT6.X 是無法安裝 NT5.X 的,只能用這種方法處理
這兩天有空,我用 VM 演示一下過程,最近一直再寫公司網頁,比較沒有時間

金田大說明得很清楚啊,只是個人比較喜歡簡易的處理方式
樓主應該是少截圖,有個地方是在磁碟分割的時候,那邊有沒有切 100MB 的地方
基本上,BCD 的確應該可以載入 NTLDR 啟動
只是透過 WIN 7 安裝程式是不是能夠正確寫入必要資訊,這一點個人以往的實驗,大多是失敗的

也因此,只要是透過 WIM 還原 XP,個人的定調都是傾向於,直接透過 DISM 去還原 XP
如果還原後無法開機,再用 BOOTICE 去修復引導,透過 DISM 還原有一點要特別注意,不要加入修復引導參數
如果加入這個,就會去自動建立 BCD 引導,可能會造成XP 無法正常開機

如果是 VM 啟動 VHD XP,那麼直接透過 DISM 還原會比較快,還有就是 VHD 有所謂的 父系子系參考映像
如果懶得一直還原,可以考慮用這種方式建立 VHD,只要有原始的 VHD ,不管你建立幾台 XP,都去參考原始的 VHD
你之後的異動 ( 包括 SID 修改 ),都會保留在 子系 VHD 上面,這樣會比較方便的
賴:jones.lee.info
有空加一下,沒事歡迎找我聊天泡茶

22

主題

17

好友

2587

積分

超級版主

Rank: 16Rank: 16Rank: 16Rank: 16

在線時間
669 小時
威望
0
金錢
6320
貢獻
0
最後登錄
2017-1-18
註冊時間
2012-3-18
帖子
454
主題
22
精華
2
積分
2587
UID
211

版主 特殊貢獻

發表於 6 天前 |顯示全部樓層
本帖最後由 阿達金田一 於 2017-1-12 02:26 編輯
JonesLee 發表於 2017-1-11 17:55
XP 可以壓入 WIM 檔案,但是無法使用 WIN 7 的安裝程式
只能使用 DISM 還原之後,再用 BOOTICE 修復導引之 ...

並非不能...只是最終和 dism 意思一樣
我前面都說了 安裝PE 一樣會解 Wim 只是解完就會出錯 ... (所以也沒處理開機部份)
用 dism 一樣也是解出來而以...沒什麼差別 ...

而 開機部份 NT6 PBR 是可以載入 NTLDR 的...
所以不管是 NT5 或 NT6 PBR ... 都可以載入 NTLDR
而且大多安裝前...都會格式化吧...用 安裝PE 格式化的話...會刷入 NT6 PBR
而 XP 壓入 WIM ... 通常 XP 安裝都是安裝到 (hd0,0)啟動分區
所以 XP主體 和 NTLDR 是在一起的 ... 因此壓入時正常是有包含 NTLDR
因此開機載入 NTLDR 其實是沒問題的

當然沒刷 MBR 算是一個問題...
不過一般來說除了 沒MBR分割過 的 HD 不然 MBR 都會有的

至於 boot.ini 的部份 如果 XP 是在 (hd0,0) ...
沒有 boot.ini 一樣可以開機 ... NTLDR 會以預設的 (hd0,0)\Windows 來開機
只是會顯示 boot.ini 錯誤(不合法)

所以結論就是 Wim 看成壓縮檔就好
不管是 安裝PE 還是 dism ... 就只是解壓縮
而 XP 不是 NT6 ... 所以 安裝PE 在 解壓縮完 的後續處理中會出錯...

所以對 XP 來說用 安裝PE 和 dism 都一樣... 就只是解壓縮而以
不管那一種安裝好...如果開機有問題還是要手動處理

就像 Win7 預設 100M 啟動分區 那種情況 ...
由於 XP 不在 (hd0,0) ...假設XP在 (hd0,1) ... 而 安裝PE 因為出錯中斷...所以也不會處理開機部份
因此重開機...用 100M 啟動分區... 啟動時 因為 (hd0,0) 基本是空的...所以會 bootmgr miss
那開機就要手動處理 ... 例如用 Grub4Dos ... 用 (hd0,1) 開機

反之...沒用 100M 的話... XP 安裝在 啟動分區 (hd0,0)
然後一樣會安裝中斷 ... 但 NTLDR 和 XP 是在 啟動分區 (hd0,0)
因此重開機是可以進入 XP 的

不過以我個人來說也是習慣比較偏向 dism 的作法...(只是我都是用 wimlib-imagex)
您需要登錄後才可以回帖 登錄 | 我要註冊

游客,提醒您,您還沒有註冊,註冊後可查看更多內容,更精彩!NoName Team[關閉]

手機版|NoName Team 論壇

GMT+8, 2017-1-18 18:07 , Processed in 0.057371 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回頂部