From Fedora Project Wiki

(Add virt-manager steps)
No edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{QA/Test_Case
{{QA/Test_Case
|description=
|description=
Run an AArch64 (ARM 64) disk image as a VM on your x86 machine.
Install Fedora AArch64 (ARM 64) as a VM on your x86 machine.


|setup=
|setup=
=== Get the media ===
{{admon/note | Fedora AArch64 images are not yet supported | Fedora's AArch64 preview images expect to be run on UEFI, which is still under development for ARM/AArch64 virt usage}}


We will use some images from Linaro for this test:
=== Install UEFI packages and configure libvirt ===


* <code>wget http://releases.linaro.org/14.07/openembedded/aarch64/vexpress64-openembedded_lamp-armv8-gcc-4.9_20140727-682.img.gz</code>
These steps are documented over here. Follow all the instructions under the 'setup' section: https://fedoraproject.org/wiki/QA:Testcase_Virtualization_UEFI#Setup
* <code>wget http://releases.linaro.org/14.07/openembedded/aarch64/Image</code>
 
* <code>unar vexpress64-openembedded_lamp-armv8-gcc-4.9_20140727-682.img.gz -o /var/lib/libvirt/images</code>
=== Install qemu-system-aarch64 ===
* <code>sudo mv Image /var/lib/libvirt/images/linaro-aarch64-kernel
 
* <code>sudo yum install qemu-system-aarch64</code>
Install qemu-system-aarch64 and EDK2 for AArch64: <code>sudo dnf install qemu-system-aarch64 edk2-aarch64</code>


|actions=
|actions=
{{admon/note | Latest libvirt and virt-manager are required | You'll need libvirt-1.2.8-5 and virt-manager-1.1.0-3 at least}}


=== Import with virt-manager ===
=== Install with virt-manager ===


* Start virt-manager, connect to 'QEMU', click the 'New VM' icon
* Start virt-manager, connect to 'QEMU', click the 'New VM' icon
* On the first page, under 'Architecture Options' select 'aarch64'. The 'virt' machine type should be selected automatically
* On the first page, under 'Architecture Options' select 'aarch64'. The 'virt' machine type should be selected automatically.
* Select the 'Import install' option, go to the next page
* All install options should be selectable
* Browse to the disk image and kernel we moved in the previous step.
** For CDROM install, you can download the Fedora 32 AArch64 Server here: https://dl.fedoraproject.org/pub/fedora/linux/releases/32/Server/aarch64/iso/Fedora-Server-dvd-aarch64-32-1.6.iso
* Set kernel args as: <code>root=/dev/vda2 rw rootwait console=ttyAMA0</code>
 
* Continue with the OS defaults, complete the install.
** For URL installs, you can use the Fedora 32 AArch64 tree here: https://dl.fedoraproject.org/pub/fedora/linux/releases/32/Server/aarch64/os/
* The guest should shortly start booting, and you should see text console output. After a bit of a wait, it should drop you into a root prompt.
* Select 'Fedora 32' as the OS
* Continue with the install as usual
* Verify the guest installs correctly
 
=== Install with virt-install ===


=== Import with virt-install ===
virt-install should do the correct thing when you specify --arch aarch64. So do a typical --cdrom or --location install with the media referenced above, and ensure the install completes correctly.


Here's the command:
CDROM example:


<pre>
  sudo virt-install \
sudo virt-install \
     --name aarch64-f32-cdrom --ram 2048 --disk size=10 \
     --name aarch64-vm --ram 1024 --arch aarch64 --import \
     --os-variant fedora32 --arch aarch64 \
     --boot kernel=/var/lib/libvirt/images/linaro-aarch64-kernel,extra_args="root=/dev/vda2 rw rootwait console=ttyAMA0" \
     --cdrom /path/to/Fedora-Server-dvd-aarch64-32-1.6.iso
     --disk /var/lib/libvirt/images/vexpress64-openembedded_lamp-armv8-gcc-4.9_20140727-682.img
</pre>


|results=
|results=

Latest revision as of 14:48, 27 July 2020

Description

Install Fedora AArch64 (ARM 64) as a VM on your x86 machine.

Setup

Install UEFI packages and configure libvirt

These steps are documented over here. Follow all the instructions under the 'setup' section: https://fedoraproject.org/wiki/QA:Testcase_Virtualization_UEFI#Setup

Install qemu-system-aarch64

Install qemu-system-aarch64 and EDK2 for AArch64: sudo dnf install qemu-system-aarch64 edk2-aarch64

How to test

Install with virt-manager

Install with virt-install

virt-install should do the correct thing when you specify --arch aarch64. So do a typical --cdrom or --location install with the media referenced above, and ensure the install completes correctly.

CDROM example:

 sudo virt-install \
    --name aarch64-f32-cdrom --ram 2048 --disk size=10 \
    --os-variant fedora32 --arch aarch64 \
    --cdrom /path/to/Fedora-Server-dvd-aarch64-32-1.6.iso

Expected Results

Guest starts fine, seems usable.