QEMU version: 2.2.0
HDD init:
qemu-img create -f qcow debian8-arm64.img 10G
Netinstall initrd:
wget ftp://ftp.ru.debian.org/debian/dists/jessie/main/installer-arm64/20150422/images/netboot/debian-installer/arm64/initrd.gz
Netinstall kernel:
wget ftp://ftp.ru.debian.org/debian/dists/jessie/main/installer-arm64/20150422/images/netboot/debian-installer/arm64/linux
Netinstall start:
qemu-system-aarch64 -machine virt -cpu cortex-a57 -nographic -smp 1 -m 512 -kernel linux -initrd initrd.gz -append "root=/dev/ram console=ttyAMA0" -global virtio-blk-device.scsi=off -device virtio-scsi-device,id=scsi -drive file=debian8-arm64.img,id=rootimg,cache=unsafe,if=none -device scsi-hd,drive=rootimg -netdev user,id=unet -device virtio-net-device,netdev=unet -net user
Extract kernel and initrd after install:
-
sudo modprobe nbd max_part=16
-
sudo qemu-nbd -c /dev/nbd0 debian8-arm64.img
-
sudo partprobe /dev/nbd0
-
mkdir sda2
-
sudo mount /dev/nbd0p2 sda2
-
cp sda2/boot/vmlinuz vmlinuz-run
-
cp sda2/boot/initrd.img initrd-run.img
-
sudo umount sda2
-
rmdir sda2
-
sudo /opt/qemu220/bin/qemu-nbd -d /dev/nbd0
Running:
qemu-system-aarch64 -machine virt -cpu cortex-a57 -nographic -smp 1 -m 512 -kernel vmlinuz-run -initrd initrd-run.img -append "root=/dev/sda2 console=ttyAMA0" -global virtio-blk-device.scsi=off -device virtio-scsi-device,id=scsi -drive file=debian8-arm64.img,id=rootimg,cache=unsafe,if=none -device scsi-hd,drive=rootimg -netdev user,id=unet -device virtio-net-device,netdev=unet -net user