Skip to main content
Topic: [SOLVED] Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt (Read 145 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED] Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Hello guys.

I recently got a new SSD to give my old laptop a second life. I have been running Arch on it for a couple of years, but not so long ago I heard about Artix and decided to give it chance. So I began installing the OS on my new SSD, I connected it via USB to my laptop and installed everything from my already functioning Arch OS (I just needed to change the mirrors and some other things to get the necessary packages for the actual installation and the artools-chroot command). The process went without problems of any kind. Finally I rebooted my laptop to change the BIOS boot setting so the pc booted from the external SSD. To my surprise I didn't need to change anything and not even select the boot device, it directly launched GRUB with Artix as an option. Seeing this I decided to leave the rest of the system setup for later.

Today I had in mind completing the whole system setup, but unfortunately whenever I try to boot from the external SSD (or even if I swap hard drives internally) the boot process gets stuck at a GRUB command prompt (GRUB _) that doesn't allow to write anything or execute any instruction.

In order to get to the mentioned GRUB prompt I have had to change my BIOS boot config to accept legacy option, if I don't do this the SSD is not recognized.

My system is a Lenovo G50-80 which is an UEFI pc. I formatted the file system for the boot partition with FAT32 as the wiki explains, following the guidelines for UEFI systems.

I don't really know what is going on and would like to get some help. It is just so weird that the first time rebooting the laptop made it so the Artix OS was booted even though it wasn't set as the first boot option and that, as I'm seeing now, the BIOS doesn't detect the device if the legacy option is not set. But now it's just impossible to get the system to boot on to Artix.

Here is some useful info:

  • Disk partitions
    Code: [Select]
    sdb      8:16   0 465,8G  0 disk 
    |-sdb1   8:17   0     1G  0 part /boot
    |-sdb2   8:18   0    30G  0 part /
    `-sdb3   8:19   0 434,8G  0 part /home
  • Grub config file
    Code: [Select]
    $ cat /boot/grub/grub.cfg
    #
    # DO NOT EDIT THIS FILE
    #
    # It is automatically generated by grub-mkconfig using templates
    # from /etc/grub.d and settings from /etc/default/grub
    #

    ### BEGIN /etc/grub.d/00_header ###
    insmod part_gpt
    insmod part_msdos
    if [ -s $prefix/grubenv ]; then
      load_env
    fi
    if [ "${next_entry}" ] ; then
       set default="${next_entry}"
       set next_entry=
       save_env next_entry
       set boot_once=true
    else
       set default="0"
    fi

    if [ x"${feature_menuentry_id}" = xy ]; then
      menuentry_id_option="--id"
    else
      menuentry_id_option=""
    fi

    export menuentry_id_option

    if [ "${prev_saved_entry}" ]; then
      set saved_entry="${prev_saved_entry}"
      save_env saved_entry
      set prev_saved_entry=
      save_env prev_saved_entry
      set boot_once=true
    fi

    function savedefault {
      if [ -z "${boot_once}" ]; then
        saved_entry="${chosen}"
        save_env saved_entry
      fi
    }

    function load_video {
      if [ x$feature_all_video_module = xy ]; then
        insmod all_video
      else
        insmod efi_gop
        insmod efi_uga
        insmod ieee1275_fb
        insmod vbe
        insmod vga
        insmod video_bochs
        insmod video_cirrus
      fi
    }

    if [ x$feature_default_font_path = xy ] ; then
       font=unicode
    else
    insmod part_msdos
    insmod ext2
    set root='hd1,msdos2'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275/(null)/sas/[email protected],msdos2' --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2  02019292-6249-4f34-a848-eac67ce24c93
    else
      search --no-floppy --fs-uuid --set=root 02019292-6249-4f34-a848-eac67ce24c93
    fi
        font="/usr/share/grub/unicode.pf2"
    fi

    if loadfont $font ; then
      set gfxmode=auto
      load_video
      insmod gfxterm
    fi
    terminal_input console
    terminal_output gfxterm
    if [ x$feature_timeout_style = xy ] ; then
      set timeout_style=menu
      set timeout=5
    # Fallback normal timeout code in case the timeout_style feature is
    # unavailable.
    else
      set timeout=5
    fi
    ### END /etc/grub.d/00_header ###

    ### BEGIN /etc/grub.d/10_linux ###
    menuentry 'Artix Linux' --class artix --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-02019292-6249-4f34-a848-eac67ce24c93' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_msdos
    insmod fat
    set root='hd1,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275/(null)/sas/[email protected],msdos1' --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1  3D88-BF60
    else
      search --no-floppy --fs-uuid --set=root 3D88-BF60
    fi
    echo 'Loading Linux linux ...'
    linux /vmlinuz-linux root=UUID=02019292-6249-4f34-a848-eac67ce24c93 rw  loglevel=3 quiet
    echo 'Loading initial ramdisk ...'
    initrd /initramfs-linux.img
    }
    submenu 'Advanced options for Artix Linux' $menuentry_id_option 'gnulinux-advanced-02019292-6249-4f34-a848-eac67ce24c93' {
    menuentry 'Artix Linux, with Linux linux' --class artix --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-02019292-6249-4f34-a848-eac67ce24c93' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_msdos
    insmod fat
    set root='hd1,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275/(null)/sas/[email protected],msdos1' --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1  3D88-BF60
    else
      search --no-floppy --fs-uuid --set=root 3D88-BF60
    fi
    echo 'Loading Linux linux ...'
    linux /vmlinuz-linux root=UUID=02019292-6249-4f34-a848-eac67ce24c93 rw  loglevel=3 quiet
    echo 'Loading initial ramdisk ...'
    initrd /initramfs-linux.img
    }
    menuentry 'Artix Linux, with Linux linux (fallback initramfs)' --class artix --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-02019292-6249-4f34-a848-eac67ce24c93' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_msdos
    insmod fat
    set root='hd1,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275/(null)/sas/[email protected],msdos1' --hint-bios=hd1,msdos1 --hint-efi=hd1,msdos1 --hint-baremetal=ahci1,msdos1  3D88-BF60
    else
      search --no-floppy --fs-uuid --set=root 3D88-BF60
    fi
    echo 'Loading Linux linux ...'
    linux /vmlinuz-linux root=UUID=02019292-6249-4f34-a848-eac67ce24c93 rw  loglevel=3 quiet
    echo 'Loading initial ramdisk ...'
    initrd /initramfs-linux-fallback.img
    }
    }

    ### END /etc/grub.d/10_linux ###

    ### BEGIN /etc/grub.d/20_linux_xen ###
    ### END /etc/grub.d/20_linux_xen ###

    ### BEGIN /etc/grub.d/30_os-prober ###
    ### END /etc/grub.d/30_os-prober ###

    ### BEGIN /etc/grub.d/40_custom ###
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
    ### END /etc/grub.d/40_custom ###

    ### BEGIN /etc/grub.d/41_custom ###
    if [ -f  ${config_directory}/custom.cfg ]; then
      source ${config_directory}/custom.cfg
    elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
      source $prefix/custom.cfg;
    fi
    ### END /etc/grub.d/41_custom ###
  • Fstab file
    Code: [Select]
    # /dev/sdb2
    UUID=02019292-6249-4f34-a848-eac67ce24c93 /         ext4      rw,relatime 0 1

    # /dev/sdb1
    UUID=3D88-BF60      /boot     vfat      rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 2

    # /dev/sdb3
    UUID=859723ae-467d-4ce7-9a82-35f44181417d /home     ext4      rw,relatime 0 2

I have also posted this issue on the Artix subreddit Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt.

Hope someone can help me. Thanks in advance.

EDIT(10/15/2020):

Well, I have done again the whole installation process (disk partitioning included) and the first reboot work perfectly. I was able to get inside artix and do some stuff. Then I shutdown my laptop and accesses again the BIOS boot menu and the option for using the SSD was available both as USB disk and other option that had "GRUB" in its ID (this one is the correct one which I chose and was able to enter artix again). Then I continued using my pc with its current OS as normal. Today I was going to setup the system but to my surprise the correct boot option wasn't showing (it just listed the USB disk) so I am again unable to use the SSD as functioning boot device.

Hope someone can help with this. It's quite frustrating.

SOLUTION (10/17/2020):

Finally I found out what the problem was. As I was installing the OS on a REMOVABLE DEVICE the installation of GRUB on the /boot partitionhad to be done differently. Following the Arch wiki when installing GRUB you have to run the following command:
Code: [Select]
# grub-install --target=x86_64-efi --efi-directory=esp --boot-directory=esp --removable --recheck
This will ensure that you are able to boot multiple times from said device. After that edit "/etc/mkinitcpio.conf" file and on the hooks section move block and keyboard before autodetect hook. Finally run the following:
Code: [Select]
# mkinitcpio -p linux
Unmount the drive and reboot. Then the drive will appear as a boot option and selecting it will get you to GRUB.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #1
To me, but I may be wrong, that maybe you booted non-uefi version of the iso. For me when I boot from my bootable flash drive, I have to choose "name of my flash drive (UEFI)" and so make sure you installed grub using efi method and not mbr. grub-install --target=x86_64-efi --efi-directory=/boot (make sure efi /boot parition is mounted)

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #2
To me, but I may be wrong, that maybe you booted non-uefi version of the iso. For me when I boot from my bootable flash drive, I have to choose "name of my flash drive (UEFI)" and so make sure you installed grub using efi method and not mbr. grub-install --target=x86_64-efi --efi-directory=/boot (make sure efi /boot parition is mounted)
I don't really know what you mean by "non-uefi" version of the iso. But I did do
Code: [Select]
$ grub-install --target=x86_64-efi --efi-directory=/boot 
As the wiki says. And of course in order to do that I've had mounted my boot partition to /dev/sdb1 in /mnt/boot.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #3
I don't really know what you mean by "non-uefi" version of the iso.

Like in order to get a "pop-up" for which device on my system to boot from, I hit F11, and it lists things like dvd-drive, flash-drives, hard-drives and so on. For my live flash drives there is one called "Name of my flash drive"(this is mbr), and "Name of my flash drive UEFI". Since I use uefi, I choose 2nd option, which adds the abbreviation UEFI to my flash drive name

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #4
Like in order to get a "pop-up" for which device on my system to boot from, I hit F11, and it lists things like dvd-drive, flash-drives, hard-drives and so on. For my live flash drives there is one called "Name of my flash drive"(this is mbr), and "Name of my flash drive UEFI". Since I use uefi, I choose 2nd option, which adds the abbreviation UEFI to my flash drive name
Aaah, okay. Yeah I get the same when reboot and press a special button my laptop has. It lets me choose from different boot devices. The thing is that my SSD seems to only be recognized if I enable legacy support on my BIOS setup. I don't really know if the problem is more related to my BIOS or to the boot partition. I would say the former because when I swapped drives (via SATA conector on the motherboard) it wasn't able to detect any drives that were UEFI, but I have installed and reinstalled grub with UEFI options many times and it doesn't seem to be fixing the issue. I also have checked that my file format for the boot partition is FAT32 and not ext4 which can be seen in the fstab file. Don't really know what more I can do aside from reinstalling everything from the beginning.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #5
With UEFI, very first partition needs to be 1MB with type bios-boot and then 2nd is EFI-System for /boot formated vfat and then rest is normal.

This is how my system is done, and works fine, though I dont have a SSD, just a normal HDD, but concept I would think be the same.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #6
With UEFI, very first partition needs to be 1MB with type bios-boot and then 2nd is EFI-System for /boot formated vfat and then rest is normal.

This is how my system is done, and works fine, though I dont have a SSD, just a normal HDD, but concept I would think be the same.
I didn't see any of what you said on the wiki. It just says to format the boot partition (just one) as FAT 32 with
Code: [Select]
$ mkfs.fat -F 32 /dev/sdaX 
. That is what I did and also what I have found to be norm on tutorials, both on Arch and Artix

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #7
@bolinhas, I'm in the same situation, my Notebook boot correctly and the only difference that I find, looking your fstab, is that in mine the situation is a little bit different:

UUID=59C0-B9E3                            /boot/efi      vfat    defaults,noatime 0 2

Is specified /boot/efi and not only /boot , as in your fstab.

In my experience an UEFI PC don't boot if is specified only /boot, its for the legacy BIOS.

I hope this can help you.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #8
@bolinhas, I'm in the same situation, my Notebook boot correctly and the only difference that I find, looking your fstab, is that in mine the situation is a little bit different:

UUID=59C0-B9E3                            /boot/efi      vfat    defaults,noatime 0 2

Is specified /boot/efi and not only /boot , as in your fstab.

In my experience an UEFI PC don't boot if is specified only /boot, its for the legacy BIOS.

I hope this can help you.

Oh, that may be the issue. I will look onto it. It is definitly something weird because I clearly remember formatting the partition as FAT and installing grub with the UEFI options. In any case I'll se what I can do. Thanks again!

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #9
Oh, that may be the issue. I will look onto it. It is definitly something weird because I clearly remember formatting the partition as FAT and installing grub with the UEFI options. In any case I'll se what I can do. Thanks again!
@francesco well I have started from the beginning (partitioning, creating file systems, etc) and the fstabgen file looks the same. I have also watched a tutorial and the output of fstabgen looks the same, it doesn't have the boot/efi flag. 

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #10
In my experience an UEFI PC don't boot if is specified only /boot, its for the legacy BIOS.

I hope this can help you.
Mine is mounted /boot, not /boot/efi and makes no difference for me.

Re: Can't boot on to newly installed Artix on SSD. Stuck at GRUB prompt

Reply #11
Mine is mounted /boot, not /boot/efi and makes no difference for me.
Yep, it definitely doesn't make a difference. I think I've solved it. I'll post everything tomorrow.