x86_64¶
Artifacts:
└── x86_64 ├── lmp-factory-image-intel-corei7-64.wic.gz └── ovmf.secboot.qcow2
Booting in QEMU¶
Important
These instructions require QEMU 5.2 or later.
Note
Make sure to set the FIOCTL_FACTORY environment variable:
export FIOCTL_FACTORY=<factory>
List available Targets and decide on which to boot:
fioctl targets list
Make a directory for the artifacts and
cd
into it:mkdir -p lmp-qemu/x86_64 cd lmp-qemu/x86_64
Download the artifacts needed for x86_64, replacing
<target_number>
with the target you would like to boot:# Download and extract the Factory image fioctl targets artifacts <target_number> intel-corei7-64/lmp-factory-image-intel-corei7-64.wic.gz | gunzip > lmp-factory-image-intel-corei7-64.wic # Download OVMF UEFI Firmware fioctl targets artifacts <target_number> intel-corei7-64/ovmf.secboot.qcow2 > ovmf.secboot.qcow2
The directory tree should now look like this:
lmp-qemu/ └── x86_64 ├── lmp-factory-image-intel-corei7-64.wic └── ovmf.secboot.qcow2
Run the QEMU script below against the artifacts inside of
lmp-qemu/
. You can save this asrun.sh
inside the directory for convenience.
Note
The QEMU CLI passes the necessary flags and parameters to the appropriate qemu-system command. This includes path to the image, CPU, network, and other device information. For specifics, consult QEMU’s Documentation.
Booting Graphically¶
In order to boot QEMU with an OpenGL capable virtual GPU (required for Wayland/Weston), add the following flags to the QEMU CLI:
-vga virtio -display gtk,gl=on
Do not copy the -nographic
flag at the end of the QEMU CLI below.
QEMU CLI¶
qemu-system-x86_64 -m 1024 -cpu kvm64 -enable-kvm -serial mon:stdio -serial null \
-drive file=lmp-factory-image-intel-corei7-64.wic,format=raw,if=none,id=hd \
-device virtio-scsi-pci,id=scsi -device scsi-hd,drive=hd -device virtio-rng-pci \
-drive if=pflash,format=qcow2,file=ovmf.secboot.qcow2 \
-net user,hostfwd=tcp::22223-:22 -net nic -nographic
Hint
To access QEMU via SSH, append these parameters to the QEMU CLI command above:
-netdev user,id=net0,hostfwd=tcp::2222-:22
Then, run SSH with:
ssh -p 2222 fio@localhost