5

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.

1
  • 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 case
    – J.Serra
    Commented Jul 31, 2016 at 16:06

1 Answer 1

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.

1
  • 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
    Commented Jul 9, 2017 at 21:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.