iso qemu 安装ubuntu_Ubuntu 14.04 下搭建ARM架构的QEMU虚拟机

Requirement:

x86 架构的Ubuntu系统

本次安装选用Debian ARM

需要的文件:

kernel

initrd

Debian-ARM iso

0x0000

安装 QEMU 虚拟机

sudo apt-get install qemu-system-arm

1. 创建一个directory来存放相关文件

mkdir qemu_debian && cd qemu_debian

2. 获取kernel 和 initrd (7.9 Wheezy 版本)

wget http://ftp.debian.org/debian/dists/Debian7.9/main/installer-armel/20130430/images/versatile/netboot/initrd.gz

wget http://ftp.debian.org/debian/dists/Debian7.9/main/installer-armel/20130430/images/versatile/netboot/vmlinuz-3.2.0-4-versatile

3. 获取iso文件

wget http://get.debian.org/cdimage/archive/7.9.0/armel/iso-cd/debian-7.9.0-armel-netinst.iso

0x0001

1. 创建虚拟硬盘 (大小随意)

qemu-img create debian.img 20G

2. 载入 ARM kernel, initrd 以及ISO

qemu-system-arm -M versatileab -kernel ./vmlinuz-3.2.0-4-versatile -initrd ./initrd.gz -cdrom ./debian-7.9.0-armel-netinst.iso -hda debian.img

这个时候, qemu已经成功启动, 可以按需安装debian arm系统

0x0002

系统安装完成后, 需要抽出kernel和initrd并复制到我们的虚拟硬盘里, 这个有一个地方要稍微注意一下. 因为/root 的分区有偏移量, 所以直接挂载是挂载不上的.

sudo fdisk -l -u debian.img

运行上面的命令可以看到有2048个unit的偏移量, 一个unit是512个bytes

fdisk -l -u debian.img

所以正确的挂载应该加上这2048的偏移量.

sudo mount -o loop,offset=$((2048 * 512)) debian.img /mnt

抽出的步骤就简单多了

mkdir boot

cp /mnt/boot/* boot/ -rv

至此, 基于QEMU搭建ARM架构的虚拟机已经完成

0x0003

启动虚拟机并将端口转发到2222以便ssh登陆

qemu-system-arm -M versatileab -kernel ./boot/vmlinuz-3.2.0-4-versatile -initrd ./boot/initrd.img-3.2.0-4-versatile -hda debian.img -m 1024 -append "root=/dev/sda1" -redir tcp:2222::22

这样启动虚拟机之后, 就可以ssh到localhost的2222端口登陆了.

以上.

你可能感兴趣的:(iso,qemu,安装ubuntu)