0

I wanted to install Arch to maybe learn some Linux and hang out, but I ran into a problem right from the start. When I select the ISO with VirtualBox and boot the machine, the system starts with the UEFI Interactive Shell screen. The solutions I found online didn't work because the grubx64.efi file doesn't seem to exist. Also disabling or enabling EFI mode in the virtual machine settings did nothing. I have only BOOTIA32.EFI and BOOTx64.EFI in the directory FS0:\efi\boot. I can't get them to work either... I need your help... My operating system is MacOS Sonoma 14.5 and I'm using a MacBook with an M2 chip.

4
  • 1
    hm, are you really bound to Arch? If not, maybe starting with another distro solves all your problems! (go to getfedora.org for Fedora Linux images, for examples). I know many Arch Linux users that I greatly respect, but I really wouldn't recommend it as a learning-Linux platform. Commented Dec 15, 2024 at 14:16
  • I'm not really bound to Arch but the same problem occurs with Debian too. Commented Dec 15, 2024 at 14:55
  • Not sure what improvements have been done since 2022, but back then many issues. Linux on M2 - very limited August 2022 phoronix.com/review/apple-m2-linux Grub is normally used after install. The installer or as a fallback boot entry use bootx64.efi, Linux, Windows & I think Mac all use that file to boot installer or external device by drive. Commented Dec 15, 2024 at 15:16
  • @oldfred that Linux isn't running on the M2, it runs on an emulated x86_64 CPU. Commented Dec 15, 2024 at 17:51

3 Answers 3

1

and I'm using a MacBook with an M2 chip.

M2 is neither IA32 nor x64 – it's an Arm-based CPU, a completely different architecture. You cannot boot an x86_64 OS on the M2 CPU directly or using only hardware virtualization (as VirtualBox does); you would need some kind of VM software that emulates an x86_64 CPU in software (such as Qemu).

I've heard that Apple M-series chips are actually fast enough for emulation to be viable, but it's never going to be as good as direct hardware virtualization, and for that – i.e. if you want VirtualBox to work – you need an ARM64 (AArch64) OS image. Despite the name, Arch Linux doesn't support AArch64; you will have better luck with something like Fedora (which is the current base for Asahi Linux) or maybe Ubuntu (although their ARM64 distribution seems to be server-oriented).

1

Since you are running on a M2 MacBook, that means you are running on an ARM64 processor, and you've probably installed the ARM64 version of VirtualBox 7.1 (or greater).

This host/guest support matrix seems to suggest that ARM64 versions of VirtualBox will only support ARM64 VMs, so any Linux distributions intended for x86 hardware just won't run in the ARM64 VirtualBox.

The presence of BOOTIA32.EFI and BOOTx64.EFI on the Arch CD image indicate this image is for x86 systems. That means it is a non-starter in an ARM64 VirtualBox.

For ARM64, the boot file in the \efi\boot directory of the CD image would have to be BOOTAA64.EFI. All the binaries on the CD image would have to be built for ARM64 too.

There seems to be a suitable variant of Arch Linux already in existence: see https://release.archboot.net/aarch64/latest/iso/ for ISO images.

See also: https://github.com/jellydn/arch-linux-on-m2

0

Even though the Linux distribution isn't running on the bare metal and is instead running in a virtual environment the m2 CPU chip is still the underlying hardware the allows you to store the virtual hard drive image.

In conclusion it doesn't matter which level two virtualization platform that you use it's just a further abstraction layer.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.