07 KVM虚拟机引导固件安装

7.1 概述

针对不同的架构,引导的方式有所差异。x86支持UEFI(Unified Extensible Firmware Interface)和BIOS方式启动,AArch64仅支持UEFI方式启动。openEuler默认已安装BIOS启动对应的引导文件,不需要用户额外操作。所以这里仅介绍UEFI启动方式的安装方法。

统一的可扩展固件接口UEFI是一种全新类型的接口标准,用于开机自检、引导操作系统的启动,是传统BIOS的一种替代方案。EDK II是一套实现了UEFI标准的开源代码,在虚拟化场景中,通常利用EDK II工具集,通过UEFI的方式启动虚拟机。使用EDK II工具需要在虚拟机启动之前安装对应的软件包 ,本节介绍EDK II的安装方法。

7.2 安装方法

如果使用UEFI方式引导,需要安装工具集EDK II,,x86架构对应的安装包为edk2-ovmf,AArch64架构对应的安装包为edk2-aarch64。这里x86架构为例,给出具体的安装方法,AArch64架构仅需将edk2-aarch64替换为edk2-aarch64。

7.2.1 安装edk软件包

使用root用户执行如下命令:

在x86_64架构下edk2的包名为edk2-ovmf

# yum install -y edk2-ovmf

示例命令如下:

[root@superman-21 ~]# yum install -y edk2-ovmf
Last metadata expiration check: 22:57:13 ago on 2023年02月07日 星期二 15时30分31秒.
Dependencies resolved.
============================================================================================================================
 Package                      Architecture              Version                             Repository                 Size
============================================================================================================================
Installing:
 edk2-ovmf                    noarch                    202011-7.oe2203                     update                    2.5 M

Transaction Summary
============================================================================================================================
Install  1 Package

Total download size: 2.5 M
Installed size: 8.0 M
Downloading Packages:
edk2-ovmf-202011-7.oe2203.noarch.rpm                                                        5.4 MB/s | 2.5 MB     00:00    
----------------------------------------------------------------------------------------------------------------------------
Total                                                                                       5.4 MB/s | 2.5 MB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                    1/1 
  Installing       : edk2-ovmf-202011-7.oe2203.noarch                                                                   1/1 
  Verifying        : edk2-ovmf-202011-7.oe2203.noarch                                                                   1/1 

Installed:
  edk2-ovmf-202011-7.oe2203.noarch                                                                                          

Complete!
[root@superman-21 ~]# 

在AArch64架构下edk2的包名为edk2-aarch64,安装方法如下:

# yum install -y edk2-aarch64

7.2.2 查询edk软件是否安装成功

在x86_64架构下查询如下:

# rpm -qi edk2-ovmf

示例命令如下:

[root@superman-21 ~]# rpm -qi edk2-ovmf
Name        : edk2-ovmf
Version     : 202011
Release     : 7.oe2203
Architecture: noarch
Install Date: 2023年02月08日 星期三 14时27分47秒
Group       : Unspecified
Size        : 8398809
License     : BSD-2-Clause-Patent
Signature   : RSA/SHA1, 2022年11月30日 星期三 20时39分46秒, Key ID d557065eb25e7f66
Source RPM  : edk2-202011-7.oe2203.src.rpm
Build Date  : 2022年11月29日 星期二 08时00分00秒
Build Host  : obs-worker-backend-test-x86-0008
Packager    : http://openeuler.org
Vendor      : http://openeuler.org
URL         : https://github.com/tianocore/edk2
Summary     : Open Virtual Machine Firmware
Description :
EFI Development Kit II Open Virtual Machine Firmware (x64)
[root@superman-21 ~]# 

在AArch64架构下查询方法如下:

# rpm -qi edk2-aarch64

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

image-20230210225000144