赛尔校园公共服务平台 Logo
平台使用
阿里云
百度云
移动云
智算服务
教育生态
登录 →
赛尔校园公共服务平台 Logo
平台使用 阿里云 百度云 移动云 智算服务 教育生态
登录
  1. 首页
  2. 阿里云
  3. 云服务器 ECS
  4. 操作指南
  5. 镜像
  6. 自定义镜像
  7. 导入自定义镜像
  8. 转换镜像格式

转换镜像格式

  • 导入自定义镜像
  • 发布于 2025-04-01
  • 0 次阅读
文档编辑
文档编辑

ECS仅支持导入RAW、VHD和QCOW2格式的镜像文件。如果您的镜像文件是其他格式,需要转换格式后再导入。本文介绍如何通过开源的转换工具qemu-img转换镜像文件的格式。

约束限制

  • qemu-img工具支持RAW、QCOW2、QCOW1、VMDK、VDI、VHD、VHDX或QED格式的镜像相互转换。

  • qemu-img工具不支持直接将ISO镜像转换为RAW、VHD和QCOW2格式。

    如需转换,建议先创建一个虚拟机,并使用ISO镜像来引导虚拟机启动操作系统。然后在虚拟机中安装操作系统,最后将虚拟机的磁盘导出为RAW、VHD和QCOW2格式的虚拟磁盘镜像。具体操作,请参见创建虚拟机并安装操作系统(Linux)或者创建虚拟机并安装操作系统(Windows)。

  • 将VHD格式转换为其他格式或者将其他文件格式转换为VHD格式时,需使用vpc参数代替VHD格式,否则可能造成qemu-img工具无法识别VHD镜像格式导致转换失败,类似报错信息如下。

    image.png

操作步骤

本地为Windows操作系统

您可以按照以下步骤在Windows操作系统上安装qemu-img工具并转换镜像文件格式。

说明

以下操作以Windows Server 2016操作系统为例,不同版本操作系统的操作路径可能不同,请您根据实际环境进行操作。

  1. 安装qemu-img工具。

    下载并安装qemu-img工具,以下操作以安装路径是C:\Program Files\qemu为例。

  2. 为qemu-img工具配置环境变量。

    1. 在Windows Server桌面,右键单击image.png图标,然后单击系统。

    2. 在左侧导航栏,单击高级系统设置。

    3. 在系统属性对话框里,单击高级页签,并单击环境变量。

    4. 在环境变量对话框里,在系统变量部分找到Path,并单击编辑。如果Path变量不存在,单击新建。

      image.png

    5. 添加系统变量值。

      • 编辑系统变量

        单击新建,添加C:\Program Files\qemu变量值。

        image.png

      • 新建系统变量

        在变量名处输入Path,在变量值处输入C:\Program Files\qemu。

        image.png

    6. 测试环境变量是否配置成功。

      1. 打开Windows命令行窗口。

      2. 运行qemu-img --help命令。

        如果回显信息出现qemu-img工具的版本信息,则表示环境变量配置完成。

  3. 转换镜像格式。

    1. 在命令行窗口运行以下命令,切换到源镜像文件所在目录,例如C:\Program Files\ConvertImage。

      cd C:\Program Files\ConvertImage
    2. 运行以下命令,转换镜像文件格式。

      以下转换命令分别以QCOW2转换为RAW格式、VHD转换为RAW格式为例,请您根据实际镜像格式进行替换。

      QCOW2转换为RAW格式

      qemu-img convert -f qcow2 -O raw centos.qcow2 centos.raw

      其中:

      • -f(可选):参数值qcow2表示源镜像文件的格式是QCOW2。

        说明

        您也可以省略-f及其参数值,直接执行qemu-img convert -O raw centos.qcow2 centos.raw转换。

      • -O(必须大写):参数值依次表示目标镜像格式、源镜像文件名称和目标文件名称。该示例表示将源镜像文件centos.qcow2转换为RAW格式,并指定文件名称为centos.raw。

      VHD转换为RAW格式

      qemu-img convert -f vpc -O raw centos.vhd centos.raw

      其中:

      • -f (可选):参数值vpc表示源镜像文件的格式是VHD格式。

        说明

        您也可以省略-f及其参数值,直接执行qemu-img convert -O raw centos.vhd centos.raw转换。

      • -O(必须大写):参数值依次表示目标镜像格式、源镜像文件名称和目标文件名称。该示例表示将源镜像文件centos.vhd转换为RAW格式,并指定文件名称为centos.raw。

        重要

        如果是将其他格式转换为VHD格式,目标文件格式需使用vpc替代。例如将RAW格式转换为VHD格式,示例命令:qemu-img convert -f raw -O vpc centos.raw centos.vhd。

    3. 获取转换后的镜像文件。

      • 转换后的镜像文件保存在源镜像文件所在的目录下,本示例为C:\Program Files\ConvertImage,您可以前往该目录获取。

      • 您也可以运行qemu-img info <目标文件名称>命令查看转换后的镜像文件的详细信息。

        image.png

本地为Linux操作系统

您可以按照以下步骤在Linux操作系统上安装qemu-img工具并转换镜像文件格式。

说明

以下操作以Alibaba Cloud Linux 3及Ubuntu操作系统为例进行镜像格式转换。不同操作系统版本可能会有区别,请您根据实际环境进行操作。

  1. 运行以下命令,安装qemu-img工具。

    • Alibaba Cloud Linux 3

      sudo yum install qemu-img
      说明

      如果在安装qemu-img时报错,且没有明确提示缺少哪些依赖库,您可以根据cloud-init的requirements.txt文件里显示的库,并运行sudo pip install -r requirements.txt命令安装所有依赖库。

    • Ubuntu

      sudo apt-get install qemu-utils
      说明

      如果出现Unable to locate package qemu-utils错误,请重新运行以下命令安装qemu-img工具。

      sudo apt-get update #更新包列表
      sudo apt-get install qemu-utils #安装qemu-img工具
  2. 运行以下命令,转换镜像文件格式。

    以下转换命令分别以QCOW2转换为RAW格式、VHD转换为RAW格式为例,请您根据实际镜像格式进行替换。

    QCOW2转换为RAW格式

    qemu-img convert -f qcow2 -O raw centos.qcow2 centos.raw

    其中:

    • -f(可选):参数值qcow2表示源镜像文件的格式是QCOW2。

      说明

      您也可以省略-f及其参数值,直接执行qemu-img convert -O raw centos.qcow2 centos.raw转换。

    • -O(必须大写):参数值依次表示目标镜像格式、源镜像文件名称和目标文件名称。该示例表示将源镜像文件centos.qcow2转换为RAW格式,并指定文件名称为centos.raw。

    VHD转换为RAW格式

    qemu-img convert -f vpc -O raw centos.vhd centos.raw

    其中:

    • -f (可选):参数值vpc表示源镜像文件的格式是VHD格式。

      说明

      您也可以省略-f及其参数值,直接执行qemu-img convert -O raw centos.vhd centos.raw转换。

    • -O(必须大写):参数值依次表示目标镜像格式、源镜像文件名称和目标文件名称。该示例表示将源镜像文件centos.vhd转换为RAW格式,并指定文件名称为centos.raw。

      重要

      如果是将其他格式转换为VHD格式,目标文件格式需使用vpc替代。例如将RAW格式转换为VHD格式,示例命令:qemu-img convert -f raw -O vpc centos.raw centos.vhd。

  3. 获取转换后的镜像文件。

    • 转换后的镜像文件保存在源镜像文件所在的目录下,您可以前往该目录获取。

    • 您也可以运行qemu-img info <目标文件名称>命令查看转换后的镜像文件的详细信息。

      image.png

后续步骤

镜像文件格式完成转换后,您需要将镜像文件上传至OSS Bucket,以便后续导入自定义镜像。具体操作,请参见上传镜像文件至OSS。

相关文档

  • qemu-img是用于创建、转换和管理虚拟机镜像的命令行工具。它是QEMU(Quick EMUlator)项目的一部分,除了转换镜像格式以外,还支持创建镜像、调整虚拟机镜像大小等多种功能。更多信息,请参见QEMU官网。

  • qemu-img工具本身并不直接支持OVA (Open Virtualization Appliance) 和OVF (Open Virtualization Format) 格式。因为qemu-img工具主要针对磁盘映像文件的创建、转换和管理,而OVA和OVF是虚拟化软件包封装格式,它们包括配置文件、描述文件以及磁盘映像。OVA和OVF格式由DMTF (Distributed Management Task Force) 维护。更多信息,请参见DMTF官网。

相关文章

使用自定义镜像创建ECS实例 2025-04-01 12:00

本地镜像文件导入成功后,即成为ECS的自定义镜像。您可以使用该自定义镜像创建具有相同操作系统、应用程序和数据的ECS实例,以保障您云上业务的运维效率。 操作步骤

导入自定义镜像 2025-04-01 12:00

您可以将本地镜像文件导入阿里云生成自定义镜像,用于快速部署具有特定配置的操作系统环境及预装应用的ECS实例,提升了部署效率。本文介绍如何导入自定义镜像。 说明

创建虚拟机并安装操作系统 2025-04-01 12:00

VirtualBox是一款开源免费跨平台的虚拟机软件。您可以基于VirtualBox工具提供的Linux操作系统,制作VHD格式的Linux镜像文件。本文介绍如何基于VirtualBox创建虚拟机并安装Linux操作系统。 前提条件

导入镜像流程 2025-04-01 12:00

您可以将本地镜像文件导入阿里云生成自定义镜像,然后使用导入的自定义镜像创建新的ECS实例或者更换已有ECS实例的操作系统(系统盘),以满足各种业务需求和应用场景。本文介绍Linux镜像和Windows镜像的导入流程。 Linux镜像导

安装cloud-init 2025-04-01 12:00

cloud-init是一款开源初始化工具,能够为Linux操作系统提供初始化密码、设置主机名、执行自定义脚本等初始化配置能力。如果您本地制作的自定义镜像未安装cloud-init且需要迁移上云,需要手动安装cloud-init,否则使用该自定义镜像创建的ECS实例将无法自动执行设置主机名、配置网络等

转换镜像格式 2025-04-01 12:00

ECS仅支持导入RAW、VHD和QCOW2格式的镜像文件。如果您的镜像文件是其他格式,需要转换格式后再导入。本文介绍如何通过开源的转换工具qemu-img转换镜像文件的格式。 约束限制

目录
Copyright © 2025 your company All Rights Reserved. Powered by 赛尔网络.
京ICP备14022346号-15
gongan beian 京公网安备11010802041014号