如何离线制作虚拟机安装包
按照如下方法在Linux系统下离线制作虚拟机安装包:
- 执行命令qemu-img create -f format filename size,制作空白磁盘文件。例如:执行命令qemu-img create -f qcow2 win7.img 10G。
Formatting 'win7.img', fmt=qcow2 size=10 encryption=off cluster_size=65536 lazy_refcounts=off
- 执行命令createova -d filename -li filename -c cpu-num -m size -s serial_number -ns nic-num -ea network-card-type -hwex extend-description,制作虚拟机安装包。例如:执行命令createova -d win7.img -li win7.iso -c 4 -m 256 -s 1 -ns 2 -ea virtio -hwex "-hdb /dev/external_disk -serial /dev/ttyS1"。
MSG: qcow2 image file find win7.ovf win7.img win7.iso pack /home/share/JSC/win7.ova success
仅AR169-P-M9&AR169W-P-M9&AR169RW-P-M9支持参数-hwex extend-description。
参数 |
参数说明 |
取值 |
---|---|---|
-f format |
指定虚拟机镜像文件的格式。 |
支持qcow2和raw两种格式,推荐使用qcow2。 |
filename |
指定虚拟机镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~32。 |
size |
指定虚拟机镜像文件可以使用的磁盘空间大小。 |
整数形式,取值范围是5~500,单位是GB。 |
-d filename |
指定打包OVA文件使用的虚拟机镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~28。 |
-li filename |
指定打包OVA文件中虚拟机光驱中使用iso文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~32。 |
-c cpu-num |
指定模拟的CPU数目。 |
整数形式,取值范围是1~8。 |
-m size |
指定虚拟机使用的内存数目。 |
整数形式,取值范围是256~8192。 |
-s serial_number |
指定模拟的串口数目。 |
整数形式,取值范围是0~2。 |
-ns nic-num |
指定模拟的网卡数目。 |
整数形式,取值范围是1~8。 |
-ea network-card-type | 指定网卡类型。 |
类型有:
|
-hwex extend-description |
指定自定义参数拓展描述。其中自定义参数包括支持的音视频、挂载在虚拟机的可拔插硬盘和支持接入的串口。 |
字符串形式。由双引号作为开头和结尾,双引号内部的字符串不支持双引号、单引号和转义字符“\”。例如:"-hdb /dev/external_disk"。支持的自定义参数推荐值为:
例如同时支硬盘和串口,则此时取值为"-hdb /dev/external_disk -serial /dev/ttyS1"。 |
- 执行命令qemu-img create -f format filename size,制作空白磁盘文件。例如:执行命令qemu-img create -f qcow2 win7.img 10G。
Formatting 'win7.img', fmt=qcow2 size=10 encryption=off cluster_size=65536 lazy_refcounts=off
- 执行命令qemu-system-x86_64 -M pc --enable-kvm -m size -hda filename -cdrom iso_name -boot c -k en-us -smp cpu_number -usbdevice tablet,在空白磁盘中安装OS镜像。
- 按照正常PC安装操作系统流程安装操作系统。
- (可选)安装virtio驱动程序(以Windows Server 2008操作系统为例)。
如果虚拟机安装的是Windows操作系统且选择virtio类型网卡,则需要执行此步骤。首先需要在官网(网址为https://fedoraproject.org/wiki/Windows_Virtio_Drivers)下载最新的Windows版本virtio驱动程序(建议使用virtio-win-0.1-74.iso),并存放至和OS镜像同一文件夹下。
- 执行命令sudo qemu-system-x86_64 -M pc -m memsize --enable-kvm -hda imgname -net nic,model=virtio,vlan=0,macaddr=00:e0:fc:00:00:01 -net tap,vlan=0,ifname=tap0,script=no -cdrom virtio-win-0.1-74.iso -usbdevice tablet -vga std -boot c,启动已经安装好Windows操作系统的虚拟机。
- 系统启动后,选择
系统显示
页面。
。 - 选择
系统显示
页面。
,并右键单击 ,在弹出的菜单栏中选择 。 - 单击 。
- 单击
系统回到
页面。
,选择需要安装的驱动程序并单击 。 - 单击 ,并单击 后系统开始安装驱动程序。
- 安装完成后单击 。
- 执行命令createova -d filename -c cpu-num -m size -s serial_number -ns nic-num -ea network-card-type -hwex extend-description,制作虚拟机安装包。例如:执行命令createova -d win7.img -c 4 -m 256 -s 1 -ns 2 -ea virtio -hwex "-hdb /dev/external_disk -serial /dev/ttyS1"。
MSG: qcow2 image file find win7.ovf win7.img win7.iso pack /home/share/JSC/win7.ova success
仅AR169-P-M9&AR169W-P-M9&AR169RW-P-M9支持参数-hwex extend-description。
参数 |
参数说明 |
取值 |
---|---|---|
-f format |
指定虚拟机镜像文件的格式。 |
支持qcow2和raw两种格式,推荐使用qcow2。 |
filename |
指定虚拟机镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~32。 |
size |
指定虚拟机镜像文件可以使用的磁盘空间大小。 |
整数形式,取值范围是5~500,单位是GB。 |
-m size |
指定虚拟机使用的内存数目。 |
整数形式,取值范围是256~8192。 |
-hda filename |
指定磁盘镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~28。 |
-cdrom iso_name |
指定虚拟机中模拟光驱中加载的镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~32。 |
-smp cpu_number |
指定模拟的CPU数目。 |
整数形式,取值范围是1~8。 |
-m memsize |
指定虚拟机使用的内存数目。 |
整数形式,取值范围是256~8192。 |
-hda imgname |
指定磁盘镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~28。 |
-d filename |
指定打包OVA文件使用的虚拟机镜像文件的名称。 |
字符串形式,由字母和数字组成,区分大小写,长度范围是1~28。 |
-c cpu-num |
指定模拟的CPU数目。 |
整数形式,取值范围是1~8。 |
-m size |
指定虚拟机使用的内存数目。 |
整数形式,取值范围是256~8192。 |
-s serial_number |
指定模拟的串口数目。 |
整数形式,取值范围是0~2。 |
-ns nic-num |
指定模拟的网卡数目。 |
整数形式,取值范围是1~8。 |
-ea network-card-type | 指定网卡类型。 |
类型有:
|
-hwex extend-description |
指定自定义参数拓展描述。其中自定义参数包括支持的音视频、挂载在虚拟机的可拔插硬盘和支持接入的串口。 |
字符串形式。由双引号作为开头和结尾,双引号内部的字符串不支持双引号、单引号和转义字符“\”。例如:"-hdb /dev/external_disk"。支持的自定义参数推荐值为:
例如同时支硬盘和串口,则此时取值为"-hdb /dev/external_disk -serial /dev/ttyS1"。 |