I am trying to be a better Unix user. I want to dual boot my arch-linux virtual machine with Debian. I am using VirtualBox.

I am installing Debian through the arch-linux environment (https://www.debian.org/releases/buster/i386/apds03.en.html)

I have gotten it to work without a /boot partition for my Debian OS. But when I try to make a /boot partition for Debian, GRUB cannot find the kernel.

When I try to load Debian I get this

error: file '/boot/vmlinuz-4.9.0-6-rt-686-pae' not found
error: you need to load the kernel first.

I think the problem is something with my fstab file. In my functional dual boot, my Debian fstab file is as such:

/dev/sda7    /        ext4   defaults    0    1
/dev/sda8    none     swap   sw          0    0
proc         /proc    proc   proc        0    0

when I use

mount -a

it works perfectly, my /proc gets filled nicely and both OS run smoothly

however when I try to introduce a /boot partition, and I mount -a, /proc is empty and I have to manually mount it with

mount -t proc proc /proc

but ultimately GRUB cannot find the kernel

The fstab looks like this

/dev/sda2    /boot    ext2   rw,nosuid,nodev 0    2
/dev/sda7    /        ext4   defaults        0    1
/dev/sda8    none     swap   sw              0    0
proc         /proc    proc   proc            0    0

I am using grub legacy from archlinux, and not installing grub on debian. I have tried changing the /boot partition's permissions to defaults, to no avail. I also tried installing GRUB2 from Debian and that worked with the /boot partition, but I lost arch linux.

Am I on the right track, could it be something with my fstab and /proc?

Or is there some problem with GRUB legacy and Debian buster I am not aware of?

Any help would be greatly appreciated. Thank you for reading.


Have you tried to install grub on debian ? You can use os-prober to find your Arch linux automaticaly

sudo apt install os-prober

Run it

sudo os-prober

And finally update grub:

sudo update-grub
  • I tried this, but Debian cannot find Arch. So Grub only has an entry for Debian. When I run os-prober from within Debian while chrooted their from Arch, it cannot find the partitions. I installed grub on /dev/sda, while the Debian boot partition /dev/sda2. Once I reboot I can run os-prober, it works? But it grub still can't find the Arch installation, even after I mount it again within the Debian environment – docFarto Feb 6 at 17:22
  • Try to install grub by an "usb live Iso" because chroot cannot find themselves – Gabouchet Feb 7 at 21:17
  • Ok I will try this, but what do you mean chroot cant find themselves? If I don't use a boot partition, then when chroot'd into Debian it can find itself, and when I exit to Arch it can find debian and itself – docFarto Feb 12 at 15:22
  • Ok, I just got the /boot partition to work, sort of. I installed debian using its root to boot. Then I rebooted into Arch, mounted its root and boot to their proper partitions, copied Debian's /boot folder over to the new partition, then edited Debian's fstab to include the boot partition. and it worked! – docFarto Feb 12 at 17:22
  • Or maybe it didnt work, in Debian if I unmount the boot partition, and go into the boot folder and delete the original files and then mount again, so now /boot has only the boot files that are on the boot partition. It doesn't boot. It can;t find the kernel. If it was booting from the boot partition, it should work, but I believe it is booting from the original partition and then mounting the new one. Making it appear like its working, but its not – docFarto Feb 13 at 17:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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