使用Oracle VM VirtualBox创建Linux系统的自定义镜像

概述

本文主要介绍使用Oracle VM VirtualBox创建虚拟机并完成虚拟机配置后,通过生成的VHD格式镜像文件创建阿里云ECS实例的方法。

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

确认已经在本地安装Oracle VM VirtualBox,具体请参见Oracle VM VirtualBox官方文档。为保证自定义镜像的可用性并提高镜像导入效率,请在导入镜像前阅读阿里云ECS自定义镜像限制条件,请参见导入镜像必读

步骤一:新建虚拟机

创建虚拟机时需提前准备好本地镜像文件,本文以CentOS 7操作系统为例。

  1. 打开Oracle VM VirtualBox管理器,单击新建 ,创建虚拟机。
  2. 新建虚拟电脑页面,填写虚拟机名称,选择文件夹类型版本、选择内存大小时请结合虚拟机配置及待安装的操作系统官方要求,默认内存大小为1024MB,本示例中以1024MB为例,虚拟硬盘选择现在创建虚拟硬盘,单击创建
    Dingtalk_20220330172943.jpg
  3. 创建虚拟硬盘页面,选择存放文件位置文件大小,本示例中磁盘大小以20GB为例,虚拟硬盘文件类型选择VHD(虚拟硬盘)存储在物理硬盘上选择动态分配,本示例中以动态分配为例,单击创建
    image (1).png

步骤二:安装Linux操作系统

您可根据实际情况,选择BlOS模式或UEFI模式,安装Linux操作系统:

使用BlOS模式安装操作系统

  1. 打开Oracle VM VirtualBox管理器,选择新建的虚拟机。
  2. 依次单击设置>存储,选择没有盘片,单击 Dingtalk_20210621160030.jpg 按钮,选择一个虚拟光盘文件,选择CentOS 7操作系统的镜像文件,然后单击OK
    Dingtalk_20220323105723.jpg
  3. 选择新建的虚拟机,单击启动,启动虚拟机。  
    image (3).png
  4. 在虚拟机内安装Liunx系统,选择系统语言,单击Continue。                                     
    image (4).png
  5. 安装信息摘要页面,单击安装位置

  6. 安装目标位置页面,设备选择选择本地标准磁盘分区选择我要配置分区,单击完成

    Dingtalk_20220330171706.jpg
  7. 手动分区页面,单击按钮,设置挂载点和容量,根据顺序首先挂载/boot/efi设备类型选择标准分区 ,文件系统选择EFI System Partition,然后挂载根分区/设备类型选择标准分区 文件系统选择ext4,然后点击完成
    说明:根分区需要最后挂载。
    Dingtalk_20220330172315.jpg
  8. 安装信息摘要页面,单击网络和主机名

  9. 网络和主机名页面,选择以太网,并单击右侧的打开按钮,然后点击完成
    Dingtalk_20220330172738.jpg
  10. 安装信息摘要页面,单击开始安装,并设置系统登录密码。
    image (5).png

使用UEFI模式安装操作系统

  1. 打开Oracle VM VirtualBox管理器,选择新建的虚拟机。
  2. 依次单击设置>存储,选择没有盘片,单击 Dingtalk_20210621160030.jpg 按钮,选择一个虚拟光盘文件,选择CentOS 7操作系统的镜像文件,然后单击OK
    Dingtalk_20220323105723.jpg
  3. 依次单击设置>系统,单击主板扩展特性勾选启用 EFI (只针对某些操作系统),然后单击OK
    Dingtalk_20220323111304.jpg
  4. 选择新建的虚拟机,单击启动,启动虚拟机。  
    image (3).png
  5. 在虚拟机内安装Liunx系统,选择系统语言,单击Continue。                                     
    image (4).png
  6. 安装信息摘要页面,单击安装位置
  7. 安装目标位置页面,设备选择选择本地标准磁盘分区选择我要配置分区,单击完成
    Dingtalk_20220323112545.jpg
  8. 手动分区页面,单击按钮,设置挂载点和容量,根据顺序首先挂载/boot/efi设备类型选择标准分区 ,文件系统选择EFI System Partition,然后挂载根分区/设备类型选择标准分区 文件系统选择ext4,然后点击完成
    说明:根分区需要最后挂载。
    image (8).png
  9. 更改摘要页面,单击接受更改
    Dingtalk_20220323114125.jpg
  10. 安装信息摘要页面,单击网络和主机名

  11. 网络和主机名页面,选择以太网,并单击右侧的打开按钮,然后点击完成
    Dingtalk_20220330172738.jpg
  12. 安装信息摘要页面,单击开始安装,并设置系统登录密码。
    image (5).png
  13. 待操作系统安装成功之后,登录该虚拟机,执行以下命令,确认根分区挂载在后面,否则会导致线上实例启动或者扩容磁盘存在问题。
     lsblk
    系统显示类似如下。
    image (10).png

步骤三:将自定义镜像上传到阿里云

  1. 为保证运行镜像的ECS实例能成功完成初始化配置,建议您在制作Linux类型自定义镜像时,在源服务器上安装cloud-init,请参见安装cloud-init
  2. 完成配置后,请找到VHD格式的镜像文件
    说明:VHD格式的镜像文件存储在新建虚拟机章节的第3步指定的文件位置中。
    Dingtalk_20220323162648.jpg
  3. 将VHD格式的镜像文件上传到阿里云ECS,具体步骤请参见导入自定义镜像
    说明:使用UEFI模式安装的操作系统,将镜像文件导入自定义镜像后,需要使用OpenAPI的ModifyImageAttribute进行打标,否则无法启动实例,,详情请参见通过网页调用API
  4. 使用自定义镜像创建ECS,具体步骤请参见使用自定义镜像创建实例

适用于

  • 云服务器ECS
阿里云首页 相关技术圈