ESXi image(raw) 映像檔轉換成VMDK
虛擬化的過程中可能會遇到手上取得執行像檔並非ESXi使用的檔案格式VMDK(Virtual Machine Disk),像丹尼要在ESXi上安裝DD-WRT時,遇到官網提供的只有image映像檔,此篇要使用qemu
提供的工具qemu-img
進行轉換。
安裝qemu
qemu能執行於許多平台,像Windows、MacOSX、Linux,官網都有提供下載方式及安裝,以Linux的Arch分支及Windows安裝為例子。
Windows
Windows的安裝程式官網建議從Stefan Weil
提供的安裝包進行下載及安裝,它分為32bit、64bit, 查看你的Windows執行版本選擇下載,丹尼使用64bit為例子下載並安裝。
依照你目前的時間選擇最新的年份,進入此年份目錄後並找尋離你時間最近版本進行下載
下載完成後再執行安裝程式安裝qemu。
按Next
進行下一步
按I Agree
我同意版權宣告
按Next
使用已勾選的預設值,
安裝路徑選擇,不選擇按下Install
進行安裝,如果有要安裝至其他路徑選擇Browser
開啟目錄的選擇,
安裝完成,按下Finish
離開安裝畫面。
Bash on Windows
Windows 10之後還有選一種選擇,開啟Bash
應用,依照Ubuntu安裝套件的方式安裝qemu
apt install qemu
安裝過程參考
~# apt install qemu 正在讀取套件清單... 完成 正在重建相依關係 正在讀取狀態資料... 完成 下列的額外套件將被安裝: binfmt-support cpu-checker ipxe-qemu libaio1 libasound2 libasound2-data libasyncns0 libbluetooth3 libboost-iostreams1.58.0 libboost-random1.58.0 libboost-system1.58.0 libboost-thread1.58.0 libbrlapi0.6 libcaca0 libcacard0 libfdt1 libflac8 libiscsi2 libjpeg-turbo8 libjpeg8 libnspr4 libnss3 libnss3-nssdb libogg0 libopus0 libpixman-1-0 libpulse0 librados2 librbd1 libsdl1.2debian libsndfile1 libspice-server1 libusbredirparser1 libvorbis0a libvorbisenc2 libxen-4.6 libxenstore3.0 libyajl2 msr-tools qemu-block-extra qemu-slof qemu-system qemu-system-arm qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-sparc qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils seabios sharutils 建議套件: libasound2-plugins alsa-utils opus-tools pulseaudio qemu-user-static samba vde2 openbios-ppc openhackware sgabios ovmf debootstrap bsd-mailx | mailx 下列【新】套件將會被安裝: binfmt-support cpu-checker ipxe-qemu libaio1 libasound2 libasound2-data libasyncns0 libbluetooth3 libboost-iostreams1.58.0 libboost-random1.58.0 libboost-system1.58.0 libboost-thread1.58.0 libbrlapi0.6 libcaca0 libcacard0 libfdt1 libflac8 libiscsi2 libjpeg-turbo8 libjpeg8 libnspr4 libnss3 libnss3-nssdb libogg0 libopus0 libpixman-1-0 libpulse0 librados2 librbd1 libsdl1.2debian libsndfile1 libspice-server1 libusbredirparser1 libvorbis0a libvorbisenc2 libxen-4.6 libxenstore3.0 libyajl2 msr-tools qemu qemu-block-extra qemu-slof qemu-system qemu-system-arm qemu-system-common qemu-system-mips qemu-system-misc qemu-system-ppc qemu-system-sparc qemu-system-x86 qemu-user qemu-user-binfmt qemu-utils seabios sharutils 升級 0 個,新安裝 55 個,移除 0 個,有 108 個未被升級。 需要下載 43.3 MB 的套件檔。 此操作完成之後,會多佔用 261 MB 的磁碟空間。 是否繼續進行 [Y/n]? [Y/n] y 下載:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libasyncns0 amd64 0.8-5build1 [12.3 kB] 下載:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 libiscsi2 amd64 1.12.0-2 [51.5 kB] 下載:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 libjpeg-turbo8 amd64 1.4.2-0ubuntu3 [111 kB] 下載:4 http://archive.ubuntu.com/ubuntu xenial/main amd64 libogg0 amd64 1.3.2-1 [17.2 kB] 下載:5 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libboost-iostreams1.58.0 amd64 1.58.0+dfsg-5ubuntu3.1 [29.0 kB] 下載:6 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libboost-system1.58.0 amd64 1.58.0+dfsg-5ubuntu3.1 [9,146 B] 下載:7 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libboost-random1.58.0 amd64 1.58.0+dfsg-5ubuntu3.1 [11.7 kB] 下載:8 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libboost-thread1.58.0 amd64 1.58.0+dfsg-5ubuntu3.1 [47.0 kB] 下載:9 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnspr4 amd64 2:4.13.1-0ubuntu0.16.04.1 [112 kB] 下載:10 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnss3-nssdb all 2:3.28.4-0ubuntu0.16.04.2 [10.6 kB] 下載:11 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libnss3 amd64 2:3.28.4-0ubuntu0.16.04.2 [1,147 kB] 下載:12 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 librados2 amd64 10.2.7-0ubuntu0.16.04.1 [1,642 kB] 下載:13 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 librbd1 amd64 10.2.7-0ubuntu0.16.04.1 [2,180 kB] 下載:14 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 qemu-block-extra amd64 1:2.5+dfsg-5ubuntu10.14 [33.6 kB] 下載:15 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 qemu-system-common amd64 1:2.5+dfsg-5ubuntu10.14 [281 kB] 下載:16 http://archive.ubuntu.com/ubuntu xenial/main amd64 libyajl2 amd64 2.1.0-2 [19.6 kB] 下載:17 http://archive.ubuntu.com/ubuntu xenial/main amd64 binfmt-support amd64 2.1.6-1 [50.7 kB] 下載:18 http://archive.ubuntu.com/ubuntu xenial/main amd64 msr-tools amd64 1.3-2 [10.6 kB] 下載:19 http://archive.ubuntu.com/ubuntu xenial/main amd64 cpu-checker amd64 0.7-0ubuntu7 [6,862 B] 下載:20 http://archive.ubuntu.com/ubuntu xenial/main amd64 ipxe-qemu all 1.0.0+git-20150424.a25a16d-1ubuntu1 [718 kB] 下載:21 http://archive.ubuntu.com/ubuntu xenial/main amd64 libaio1 amd64 0.3.110-2 [6,356 B] 下載:22 http://archive.ubuntu.com/ubuntu xenial/main amd64 libasound2-data all 1.1.0-0ubuntu1 [29.4 kB] 下載:23 http://archive.ubuntu.com/ubuntu xenial/main amd64 libasound2 amd64 1.1.0-0ubuntu1 [350 kB] 下載:24 http://archive.ubuntu.com/ubuntu xenial/main amd64 libbluetooth3 amd64 5.37-0ubuntu5 [61.3 kB] 下載:25 http://archive.ubuntu.com/ubuntu xenial/main amd64 libcaca0 amd64 0.99.beta19-2build2~gcc5.2 [202 kB] 下載:26 http://archive.ubuntu.com/ubuntu xenial/main amd64 libcacard0 amd64 1:2.5.0-2 [19.7 kB] 下載:27 http://archive.ubuntu.com/ubuntu xenial/main amd64 libflac8 amd64 1.3.1-4 [210 kB] 下載:28 http://archive.ubuntu.com/ubuntu xenial/main amd64 libjpeg8 amd64 8c-2ubuntu8 [2,194 B] 下載:29 http://archive.ubuntu.com/ubuntu xenial/main amd64 libopus0 amd64 1.1.2-1ubuntu1 [159 kB] 下載:30 http://archive.ubuntu.com/ubuntu xenial/main amd64 libpixman-1-0 amd64 0.33.6-1 [231 kB] 下載:31 http://archive.ubuntu.com/ubuntu xenial/main amd64 libvorbis0a amd64 1.3.5-3 [86.8 kB] 下載:32 http://archive.ubuntu.com/ubuntu xenial/main amd64 libvorbisenc2 amd64 1.3.5-3 [70.7 kB] 下載:33 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libsndfile1 amd64 1.0.25-10ubuntu0.16.04.1 [138 kB] 下載:34 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libpulse0 amd64 1:8.0-0ubuntu3.3 [249 kB] 下載:35 http://archive.ubuntu.com/ubuntu xenial/main amd64 libsdl1.2debian amd64 1.2.15+dfsg1-3 [168 kB] 下載:36 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 libspice-server1 amd64 0.12.6-4ubuntu0.3 [338 kB] 下載:37 http://archive.ubuntu.com/ubuntu xenial/main amd64 libusbredirparser1 amd64 0.7.1-1 [13.6 kB] ~#
這方式除了免自行下載且方便快速的可以安裝完qemu,此篇使用qemu-img
工具,並未驗證實際qemu在Bash on Winodws上的可用性。
Arch
Arch已經提供好安裝套件,執行安裝指令進行安裝
pacman -S extra/qemu
安裝完成後執行qemu-img
應該能看到執行結果
$ qemu-img qemu-img: Not enough arguments Try 'qemu-img --help' for more information
轉換映像檔
qemu-img提供虛擬機器映像檔互轉的功能,功能相當完整,轉換的命令如下
qemu-img -f 來源映像檔案格式 -O 輸出映像檔案格式 來源映像檔名稱 輸出映像檔名稱
檔案格式支援
映像檔格式 | qemu-img 格式名稱 |
---|---|
VMDK (VMware) | vmdk |
VHD (Hyper-V) | vhd |
VHDX (Hyper-V) | vhdx |
VDI (VirtualBox) | vdi |
raw | raw |
image | raw |
QED (KVM) | qed |
QCOW (KVM, Xen) | qcow |
QCOW2 (KVM, Xen) | qcow2 |
範例
丹尼下載一份DD-WRT for X86的映像檔檔名為dd-wrt_x64_full_vga.image
要轉換成ESXi能讀取的vmdk,轉換後檔名為dd-wrt_x64_full_vga.vmdk
$ qemu-img -f raw -O vmdk dd-wrt_x64_full_vga.image dd-wrt_x64_full_vga.vmdk
轉換過程中不會有進度條或是任何的訊息,轉換完成會跳回命令提示字元,如果你的檔案非常的大,請耐心等候它完成。如果想要有進度條必需要再加上-p
變成有進度條顯示
$ qemu-img -f raw -O vmdk -p dd-wrt_x64_full_vga.image dd-wrt_x64_full_vga.vmdk
轉換過程的進度指示會顯示在下方
$ qemu-img -f raw -O vmdk -p dd-wrt_x64_full_vga.image dd-wrt_x64_full_vga.vmdk (100.00/100%) $
參考資料
更新日誌
日期 | 內容 |
---|---|
2017/08/08 | 初版 |
關鍵字
qemu 轉換 convert
qemu-image convert 轉換
image to vmdk
qcow to vmdk
vmdk to qcow
ESXi 映像檔轉換 vmdk
The post ESXi image(raw) 映像檔轉換成VMDK appeared first on 可丁丹尼 @ 一路往前走2.0.