歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> 學習Linux >> 封裝virtio驅動到windows2008R2原版iso中,win7原版加驅動包封裝

封裝virtio驅動到windows2008R2原版iso中,win7原版加驅動包封裝

日期:2017/3/6 9:36:10   编辑:學習Linux

封裝virtio驅動到windows2008R2原版iso中,win7原版加驅動包封裝


封裝virtio驅動到windows2008R2原版iso中,win7原版加驅動包封裝


  • 封裝virtio驅動到windows2008R2原版iso中
    • 1. 使用UltraISO將wim文件install.vim,boot.vim拷出到D盤
    • 2. 准備執行命令加載驅動,命令僅提供install.wim,boot.wim與install安裝方式相同,包含在第5節腳本中
      • 2.1 管理員身份打開CMD
      • 2.2 查看wim文件中包含幾個安裝版本(server、datacenter、webserver等,boot.wim為 PE或者windows set up)
      • 2.3 選擇需要加載驅動的版本號例如:datacenter版索引號為5
      • 2.4 導入第三方驅動
      • 2.5 將添加驅動後的install.wim內容寫回 install.wim文件中去
    • 3. 使用腳本添加驅動到iso的所有版本中
    • 4. 替換原版install.wim文件即可生成新的iso文件
    • 5. 測試新的ISO安裝,到生成的kvm虛擬機查看,正常加載virtio網卡、硬盤、balloon內存等虛擬設備

封裝virtio驅動到windows2008R2原版iso中

准備條件:
原版win2008r2 ISO鏡像 cn_windows_server_2008_r2_standard_enterprise_datacenter_and_web_with_sp1_x64_dvd_617598.iso
windows操作系統
virtio驅動 virtio-win-0.1-100.iso
UltraISO

Win 2008 R2集成Raid卡驅動的方法

Windows操作系統添加VirtIO驅動圖文教程

1. 使用UltraISO將wim文件install.vim,boot.vim拷出到D盤

  • install.wim 為了安裝時及安裝後能夠識別virtio設備(硬盤網卡pci等等)
  • boot.wim 為了啟動光盤時能夠識別virtio硬盤

創建目錄環境,將virtio-win-0.1-100.iso中的win2008r2對應的驅動提取到D:\中,確保目錄D:\temp為空

從virtio.iso 中提取windows2008r2相關的驅動

2. 准備執行命令加載驅動,命令僅提供install.wim,boot.wim與install安裝方式相同,包含在第5節腳本中

2.1 管理員身份打開CMD

需要用“管理員”身份打開命令提示符。(注意左上角應有“管理員”字樣,如果沒有,說明當前的命令提示符不是以管理員身份運行的)

2.2 查看wim文件中包含幾個安裝版本(server、datacenter、webserver等,boot.wim為 PE或者windows set up)

install.wim 和 boot.wim都需要加載驅動,boot.wim是為了安裝時能夠識別硬盤

  • /winfile:指定install.wim文件存放的位置,這裡為D:\install.wim
dism /get-wiminfo /wimfile:d:\install.wim

2.3 選擇需要加載驅動的版本號例如:datacenter版索引號為5

  • /winfile:指定install.wim文件存放的位置,這裡為D:\install.wim.
  • /index:指定要裝載的映像卷序號,也就是你要裝載整合的系統版本 從上面命令得出datacenter為5
  • /mountdir 為加載wim文件的路徑這裡為D:\temp
dism  /mount-wim /wimfile:D:\install.wim /index:5 /mountdir:D:\temp  

加載完成後,查看temp目錄,裡面是install.wim提取出來的文件

2.4 導入第三方驅動

  • /image:指定裝載wim文件的目錄位置,D:\temp。
  • /driver:指定驅動文件的存放位置,D:\win2008r2 從virtio提取驅動,如win2008r2與win7同內核,因此提取win7文件夾下所有內容到D:\win2008r2
  • /recurse 用於查詢所有子文件夾中的驅動程序。
  • /ForceUnsigned用於向映像中添加未簽名的驅動程序,如果不使用此命令的話某些未得到微軟簽名許可的驅動程序會添加不了。
dism /image:d:/temp /add-driver /driver:d:/win2008r2 /recurse /forceunsigned 

2.5 將添加驅動後的install.wim內容寫回 install.wim文件中去

dism /unmount-wim /mountdir:D:\temp /commit

文件夾空了,內容都寫回了install.wim中

3. 使用腳本添加驅動到iso的所有版本中

如果需要wim文件的另外7個版本都加入該驅動則需要手動重復執行7遍,每次注意更換index號即可

也可通過腳本執行,注意輸入參數的要求:

  • boot.wim文件完整路徑
  • install.wim文件完整路徑路徑
  • 臨時目錄的完整路徑
  • virtio驅動文件夾的完整路徑
  • wim文件包含的版本個數
@echo off
set bootvar=0
set /p bootwimpath=請輸入wim文件完整路徑例如(D:\boot.wim):   
set /p installlwimpath=請輸入wim文件完整路徑例如(D:\install.wim):           
set /p temppath=請輸入臨時目錄完整路徑確保文件夾為空(例如:D:\temp):    
set /p driverpath=請輸入要加入的驅動路徑(例如:D:\win2008r2):        
dism /get-wiminfo /wimfile:%bootwimpath%    
set /p bootcount=請輸入當前boot.wim文件所包含的版本個數:
dism /get-wiminfo /wimfile:%installlwimpath%    
set /p installcount=請輸入當前install.wim文件所包含的版本個數:
rem ************循環開始了
:bootcontinue
set /a bootvar+=1
echo boot.wim第%bootvar%次循環   >>dism.log
echo ======================================================================================  >>dism.log
echo 為boot.wim加載驅動 >> dism.log
dism  /mount-wim /wimfile:%bootwimpath% /index:%bootvar% /mountdir:%temppath%   >>dism.log
dism /image:%temppath% /add-driver /driver:%driverpath% /recurse /forceunsigned  >>dism.log
dism /unmount-wim /mountdir:%temppath% /commit  >>dism.log
echo 等待5s准備導入下一版本,如需取消請立即按Ctrl+C   >>dism.log
rem 等待10秒 ping本機10次不使用默認的次數,nul是不顯示ping信息:
@ping -n 5 127.1>nul
if %bootvar% lss %bootcount% goto bootcontinue
rem ************循環結束了
echo boot.wim循環執行完畢  >>dism.log


set varinstall=0
rem ************循環開始了
:installcontinue
set /a varinstall+=1
echo install.wim第%varinstall%次循環   >>dism.log
echo ======================================================================================  >>dism.log
dism  /mount-wim /wimfile:%installlwimpath% /index:%varinstall% /mountdir:%temppath%   >>dism.log
dism /image:%temppath% /add-driver /driver:%driverpath% /recurse /forceunsigned  >>dism.log
dism /unmount-wim /mountdir:%temppath% /commit  >>dism.log
echo 等待5s准備導入下一版本,如需取消請立即按Ctrl+C   >>dism.log
rem 等待10秒 ping本機10次不使用默認的次數,nul是不顯示ping信息:
@ping -n 5 127.1>nul
if %varinstall% lss %installcount% goto installcontinue
rem ************循環結束了
echo install.wim循環執行完畢 >>dism.log
pause

在D:根目錄創建一個test.bat文件,將上面腳本拷入文件中,執行腳本,輸入所需路徑參數 ,boot.wim版本數為2

根據檢測出的install.wim的版本個數

查看執行的日志如下:

4. 替換原版install.wim文件即可生成新的iso文件

按下Ctrl+ S 保存

5. 測試新的ISO安裝,到生成的kvm虛擬機查看,正常加載virtio網卡、硬盤、balloon內存等虛擬設備

http://xxxxxx/Linuxjc/1136118.html TechArticle

Copyright © Linux教程網 All Rights Reserved