封裝virtio驅動到windows2008R2原版iso中

来源:http://www.cnblogs.com/zminds/archive/2016/06/23/feng-zhuangvirtio-qu-dong-daowindows2008R2yuan-ban.html
-Advertisement-
Play Games

封裝virtio驅動到windows2008R2原版iso中1. 使用UltraISO將wim文件install.vim,boot.vim拷出到D盤2. 準備執行命令載入驅動,命令僅提供install.wim,boot.wim與install安裝方式相同,包含在第5節腳本中2.1 管理員身份打開CM... ...



封裝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記憶體等虛擬設備


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 大家好,本人是高三剛畢業,即將踏入校園的程式猿~我寫這篇文章呢,主要是想鞏固一下之前對於電腦的基礎知識理論,也希望能幫助沒有電腦基礎的同學能維護一下自己的電腦,要是能幫助女生修電腦那就是更好啦~~哈哈哈,話不多說,直接進入主題~!!(本教程出現的鏈接大家可以複製到網頁地址欄進入) 本教程總共分為: ...
  • WOL(從網卡喚醒)諸多限制,內網都不穩定,外網更不用說,放棄 斷電恢覆上次狀態,必須的 通電即開機,必須的 WIFI智能開關一個 受管理的伺服器 Esxi 6 2台,windows 2012 2台 統一使用WIFI開關,esxi6設置SSH自啟動,設置VM隨主機開關機,HYPERV設置VM自啟動 ... ...
  • ld --verbose | grep SEARCH ...
  • 如何保護你的linux操作系統 如何保護你的linux操作系統 導讀 在現在這個世道中,Linux操作系統的安全是十分重要的。但是,你得知道怎麼乾。一個簡單反惡意程式軟體是遠遠不夠的,你需要採取其它措施來協同工作。那麼試試下麵這些手段吧。 使用SELinux SELinux是用來對Linux進行安全 ...
  • Background Today I did stupid things that I went into the ~/Downloads/ and pressed [Alt] + [A] then [Shift] + [Delete]. Wtf... I didn't want to delete ...
  • idr在linux內核中指的就是整數ID管理機制,從本質上來說,這就是一種將整數ID號和特定指針關聯在一起的機制。這個機制最早是在2003年2月加入內核的,當時是作為POSIX定時器的一個補丁。現在,在內核的很多地方都可以找到idr的身影。 idr機制適用在那些需要把某個整數和特定指針關聯在一起的地 ...
  • powerline是vim的狀態欄插件,同時也提供狀態欄和提示視窗功能給其他一些應用,包括zsh,bash,tmux,IPython,Awesome,i3 和 Qtile。這篇文字只談vim上的安裝。 環境與工具 系統:OS X EI Capitan version 10.11.5 終端:termi ...
  • 方法一: 新建共用目錄存放腳本文件,需要應用的用戶或組授予只讀許可權 方法二: 將腳本放到在\\IP或主機名\sysvol\功能變數名稱\Policies\唯一ID\USER\Scripts\Logon(登錄) SYSVOL:是存儲域公共文件伺服器副本的共用文件夾,它們在域中所有的域控制器之間複製。 Sysv ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...