I try to set up a virtualized environment of the latest ArchLinux ARM (v6) in order to prepare a disk image that will be used later on a RaspberryPi.
From the archive, I made a disk image with two partitions. The first is a vfat for /boot, the second is an ext4 for /. If I copy with dd this image on a SD card, it works on a Raspberry Pi.
However, if I launch it with qemu-system-arm :
qemu-system-arm -kernel arm1176-kernel -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -hda RPI/arch-linux.img
Two errors are printed :
failed to insert module 'autofs4'
failed to insert module 'ipv6'
Then the boot gets stuck with
A start job is running for dev-mmcblk0p1.device (XXs / 1min 30s)
Finally, the timeout expires and I can get into the emergency mode.
I found out that by commenting the /boot entry in the /etc/fstab file, the system can boot, then I am able to manually mount the /boot partition.
I use a kernel for qemu "arm1176-kernel" retrieved from http://xecdesign.com/downloads/linux-qemu/kernel-qemu and this worked well for a Pidora and a Raspian distribution.
Is this kernel the origin of the problem ? Is there a cleaner configuration to get the virtualized environment boot than by commenting the /etc/fstab /boot entry ?
My goal is to stay the closest from a physical Raspberry Pi environnement.
-
I'm having the same issue with 2016年05月27日-raspbian-jessie-lite and kernel-qemu-4.4.12-jessie from github.com/dhruvvyas90/qemu-rpi-kernel. I've read that editing /etc/fstab change mmcblk0p to sda could help but it doesn't fix it in my caseJ.Serra– J.Serra2016年07月31日 16:06:31 +00:00Commented Jul 31, 2016 at 16:06
1 Answer 1
I believe that your issue is that you are running a kernel arm1176-kernel
that isn't related to the file system RPI/arch-linux.img
you are using. Typically when you build a Linux kernel the build creates the modules associated with your kernel in /lib/modules/<version>
.
You should use the kernel from your /boot
directory.
-
So your suggesting is to build a kernel from source? Or somehow extract it from the image (e.g.
RPI/arch-linux.img
) under the /boot directory?rien333– rien3332017年07月09日 21:20:44 +00:00Commented Jul 9, 2017 at 21:20