OS Builder/Run under emulation: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Created page with 'Purpose: bootstrapping XO-4 to Fedora 20 using QEMU. Outcome: a .zd file for installation. == Ingredients == * an XO-4, the target, * a conventional 32-bit or 64-bit computer …')
 
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 13: Line 13:
* install needed tools on the host,
* install needed tools on the host,
apt-get install qemu-system-arm libguestfs-tools
apt-get install qemu-system-arm libguestfs-tools
* download the armhfp Fedora 20 Minimal image,
* download the armhfp Fedora 20 Minimal image, from https://fedoraproject.org/wiki/Architectures/ARM/F20/Installation#For_Versatile_Express_Emulation_with_QEMU
wget http://mirror.aarnet.edu.au/pub/fedora/linux/releases/20/Images/armhfp/Fedora-Minimal-armhfp-20-1-sda.raw.xz
wget http://mirror.aarnet.edu.au/pub/fedora/linux/releases/20/Images/armhfp/Fedora-Minimal-armhfp-20-1-sda.raw.xz
* decompress and copy the image
xzcat Fedora-Minimal-armhfp-20-1-sda.raw.xz > Fedora-Minimal-armhfp-20-1-sda.raw
* extract the kernel and initramfs from the image,
* extract the kernel and initramfs from the image,
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
Line 20: Line 22:
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
/boot/initramfs-3.11.10-301.fc20.armv7hl.img .
/boot/initramfs-3.11.10-301.fc20.armv7hl.img .
* resize the disk image
qemu-img resize Fedora-Minimal-armhfp-20-1-sda.raw +10G
* boot the emulated system,
* boot the emulated system,
sudo qemu-system-arm -machine vexpress-a9 -m 1024 -nographic \
sudo qemu-system-arm -machine vexpress-a9 -m 1024 -nographic \
Line 27: Line 31:
-initrd initramfs-3.11.10-301.fc20.armv7hl.img \
-initrd initramfs-3.11.10-301.fc20.armv7hl.img \
-sd Fedora-Minimal-armhfp-20-1-sda.raw
-sd Fedora-Minimal-armhfp-20-1-sda.raw
* complete the Fedora guided installation,
* follow [[OSBuilder/Run_on_XO_hardware]] to make a minimal build.
* grow the filesystem to fit the disk image,
sudo resize2fs /dev/mmcblk0p3
* follow [[OS_Builder/Run_on_XO_hardware]] to make a minimal build.

Latest revision as of 06:46, 8 August 2014

Purpose: bootstrapping XO-4 to Fedora 20 using QEMU.

Outcome: a .zd file for installation.

Ingredients

  • an XO-4, the target,
  • a conventional 32-bit or 64-bit computer running Ubuntu 14.04, the host,
  • a USB drive.

Recipe

  • install needed tools on the host,
apt-get install qemu-system-arm libguestfs-tools
wget http://mirror.aarnet.edu.au/pub/fedora/linux/releases/20/Images/armhfp/Fedora-Minimal-armhfp-20-1-sda.raw.xz
  • decompress and copy the image
xzcat Fedora-Minimal-armhfp-20-1-sda.raw.xz > Fedora-Minimal-armhfp-20-1-sda.raw
  • extract the kernel and initramfs from the image,
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
   /boot/vmlinuz-3.11.10-301.fc20.armv7hl .
sudo virt-copy-out -a Fedora-Minimal-armhfp-20-1-sda.raw \
   /boot/initramfs-3.11.10-301.fc20.armv7hl.img .
  • resize the disk image
qemu-img resize Fedora-Minimal-armhfp-20-1-sda.raw +10G
  • boot the emulated system,
sudo qemu-system-arm -machine vexpress-a9 -m 1024 -nographic \
   -net nic -net user \
   -append "console=ttyAMA0,115200n8 rw root=/dev/mmcblk0p3 rootwait physmap.enabled=0" \
   -kernel vmlinuz-3.11.10-301.fc20.armv7hl \
   -initrd initramfs-3.11.10-301.fc20.armv7hl.img \
   -sd Fedora-Minimal-armhfp-20-1-sda.raw
  • complete the Fedora guided installation,
  • grow the filesystem to fit the disk image,
sudo resize2fs /dev/mmcblk0p3