1

I need to get Arch Linux running on a VM for a university assignment.

I've been trying for ages to get it to install under Hyper-V (Windows 10), and I've ruled out most other possible problems, other than the GRUB install/config.

Everything seems to go well when I install it, no errors or anything, but when I try to boot, it enters into a console mode, no matter how many times I reinstall. I've followed the tutorials to the letter and tried looking everywhere for answers, but I haven't found any.

Partitions:

  • /dev/sda1: 512M vfat EFI System
  • /dev/sda2: 8G Linux Swap
  • /dev/sda3: 127G Linux x86-64 root

/dev/sda3 was mounted to /mnt

/dev/sda1 was mounted to /mnt/boot (i created the folder before mounting)

Then I ran pacstrap /mnt base-devel, genfstab -U /mnt >> /mnt/etc/fstab and arch-chroot /mnt.

After that, I installed the grub and efibootmgr packages and ran grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub and grub-mkconfig -o /boot/grub/grub.cfg.

The tutorials I've been following:

https://wiki.archlinux.org/index.php/Hyper-V

https://wiki.archlinux.org/index.php/installation_guide

https://wiki.archlinux.org/index.php/GRUB

screengrabs: https://imgur.com/a/i7aBr

  • What vm generation do you use? – Egor Vasilyev Nov 7 '17 at 9:40
0

It seems you've successfully installed GRUB.

However, there are no entries because you haven't created an initramfs in the /boot partition.

As per the wiki's installation guide:

a new initramfs is usually not required, because mkinitcpio was run on installation of the linux package with pacstrap.

I noticed you didn't actually pacstrap the base group - in which the linux package is contained.

Run $ pacstrap /mnt base from the installation media. This will pull in the basic packages needed on an Arch system, including linux. Installing linux will also generate the initramfs automatically.

You'll then likely have to re-run grub-mkconfig so the entries can be created.

  • 1
    It might also be a good idea to move EFI to /boot/efi instead of /boot to avoid risks of masking /boot. – jdwolf Nov 7 '17 at 12:35

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.