更改镜像内容、转换镜像格式

本文介绍如何使用guestfish、guestmount等工具修改OpenStack镜像内容,并利用virt-*工具进行更高级的操作如编辑、调整大小等。此外,还介绍了如何通过qemu-img命令转换不同格式的镜像文件。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印


http://docs.openstack.org/zh_CN/image-guide/content/ch_modifying_images.html#d6e611


更改镜像内容:

1、guestfish

guestfish并不直接mount镜像文件到本地文件系统,而是提供一个shell接口,你可以通过这个shell接口对镜像内文件做查看,编辑,删除操作,诸如 touchchmod, 和 rm的 guestfish 命令,就像普通bash命令一样。


2、guestmount

对于某些类型的修改,你可以使用更简单的方式直接挂载镜像内文件系统。 guestmount  程序,同样出自于 libguestfs 项目。

3、 virt-* tools

libguestfs项目还有其他一堆有用的工具,包括

  • virt-edit 用于编辑镜像内的文件。

  • virt-df 用于显示镜像内的空闲空间。

  • virt-resize 用于伸缩镜像文件大小。

  • virt-sysprep 用于做镜像分发前的准备工作(例如,删除SSH 主机秘钥,删除MAC地址信息,或者删除用户账号)。

  • virt-sparsify 用于使镜像文件稀疏化。

  • virt-p2v 用于转换物理机系统到一个运行在KVM上的镜像文件。

  • virt-v2v 用于转换 Xen 和 VMware 镜像到 KVM 镜像。


转换镜像格式:
qemu-img convert  命令可以转换多种格式的镜像文件,包括qcow2, qed, raw, vdi, vhd, and vmdk.。

表 7.1. qemu-img 格式字符列表
镜像格式qemu-img 参数
QCOW2 (KVM, Xen) qcow2
QED (KVM) qed
raw raw
VDI (VirtualBox) vdi
VHD (Hyper-V) vpc
VMDK (VMware) vmdk

这个示例将转换换一个裸格式镜像文件 centos7.img 到qcow2镜像文件。

$ qemu-img convert -f raw -O qcow2 centos7.img centos7.qcow2

运行以下命令转换 VMDK 镜像文件到裸格式镜像文件,

$ qemu-img convert -f vmdk -O raw centos7.vmdk centos7.img

运行以下命令转换 VMDK 镜像文件到qcow2镜像文件,

$ qemu-img convert -f vmdk -O qcow2 centos7.vmdk centos7.qcow2
注:
注意

-f format参数是可选的,如果忽略,qemu-img将尝试推断镜像格式。

当转换一个Windows系统的镜像文件时,需确保镜像内系统已安装好virtio驱动。否则,在你启动虚拟机时会由于缺少virtio驱动遇到蓝屏死机。另外避免这个问题的方法是按如下命令通过更新glance服务中镜像属性,但是这个方法会明显的降低磁盘性能。

$ glance image-update --property hw_disk_bus='ide' image_id

 VBoxManage: VDI (VirtualBox) 转换为 raw

如果你使用 VirtualBox 创建了一个 VDI 镜像,你可以使用VirtualBox附带的 VBoxManage 工具转换它为raw格式,在 Mac OS X和Linux 上,VirtualBox 默认存放镜像在 ~/VirtualBox VMs/ 目录,以下示例在当前目录中从一个VirtualBox VDI镜像创建一个 raw 镜像。

apt-get install virtualbox

$ VBoxManage clonehd ~/VirtualBox\ VMs/fedora21.vdi fedora21.img --format raw






开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值