I recently installed Antergos via live USB on a new system. This is the first time I’ve installed Linux on a device which uses UEFI. I disabled secure boot and fast boot in the bios settings to avoid any problems. The existing UEFI partition on the disk was at /dev/sda2, and I created a new ext4 partition in gparted to install Antergos onto at /dev/sda7. Then I launched the cnchi installer and everything went smoothly. When it finished it offered to reboot into the installed OS, and I accepted, expecting to be greeted by grub2. Bizarrely there was no grub on reboot; it just booted straight into Windows.
No problem; it must have failed to install grub2. I figured I’d just boot into the live USB again and reinstall grub. I just did:
# mount /dev/sda7 /mnt
# mount /dev/sda2 /mnt/boot/efi
# arch-chroot /mnt
# grub-install --recheck /dev/sda
Everything went smoothly once again. The grub2 installer seemed to find the necessary EFI information without any issues. I rebooted once again, and still no grub!
At this point I don’t even know how to debug this issue. Antergos seems to be correctly installed on /dev/sda7, but I can’t boot into it. I tried disabling UEFI entirely in the bios settings, but then the device wouldn’t boot from the hard drive at all (it attempted to boot from the network instead). Any advice would be greatly appreciated.
-
Grub missing after successful install
-
@Altay-Hunter Avoid EFI, no matter of what. It is evil. :v
-
Using the advanced installation, you should have mounted your efi partition as /boot/efi. Did you do this?
P.S. I hate UEFI, too.
-
@karasu i hate it too. i avoid it.
-
@karasu Yes, the cnchi installer asked me to specify a mount point for
/
and/boot/efi
. I gave it/dev/sda7
and/dev/sda2
respectively. -
Can you grab the log? It should be on your /dev/sda7, the file should be named /var/log/cnchi-[install date].log
Thanks!
-
Here’s a link to the full log (3.5 MB), and below is the most relevant portion of it:
2015-08-24 20:47:17 [DEBUG] - process.py : 1501 : configure_system | Installing bootloader... 2015-08-24 20:47:18 [DEBUG] - bootloader.py : 214 : set_grub_option | Set GRUB_THEME="/boot/grub/themes/Antergos-Default/theme.txt" in /etc/default/grub 2015-08-24 20:47:18 [DEBUG] - bootloader.py : 214 : set_grub_option | Set GRUB_CMDLINE_LINUX_DEFAULT="quiet " in /etc/default/grub 2015-08-24 20:47:18 [DEBUG] - bootloader.py : 214 : set_grub_option | Set GRUB_DISTRIBUTOR="Antergos" in /etc/default/grub 2015-08-24 20:47:18 [DEBUG] - bootloader.py : 188 : modify_grub_default | /etc/default/grub configuration completed successfully. 2015-08-24 20:47:18 [DEBUG] - bootloader.py : 92 : install_grub | Cnchi will install the Grub2 (efi) loader 2015-08-24 20:47:18 [INFO] - bootloader.py : 311 : install_grub2_efi | Installing GRUB(2) UEFI x86_64 boot loader 2015-08-24 20:47:35 [INFO] - bootloader.py : 410 : install_grub2_locales | Installing Grub2 locales. 2015-08-24 20:47:35 [INFO] - bootloader.py : 357 : install_grub2_efi | Generating grub.cfg 2015-08-24 20:47:35 [DEBUG] - chroot.py : 78 : mount_special_dirs | Mounting special dir '/dev' to /install/dev 2015-08-24 20:47:35 [DEBUG] - chroot.py : 78 : mount_special_dirs | Mounting special dir '/dev/pts' to /install/dev/pts 2015-08-24 20:47:35 [DEBUG] - chroot.py : 78 : mount_special_dirs | Mounting special dir '/proc' to /install/proc 2015-08-24 20:47:35 [DEBUG] - chroot.py : 78 : mount_special_dirs | Mounting special dir '/sys' to /install/sys 2015-08-24 20:47:35 [DEBUG] - chroot.py : 78 : mount_special_dirs | Mounting special dir '/sys/firmware/efi/efivars' to /install/sys/firmware/efi/efivars 2015-08-24 20:47:35 [DEBUG] - bootloader.py : 404 : apply_osprober_patch | 50mounted-tests file patched successfully 2015-08-24 20:47:35 [DEBUG] - bootloader.py : 366 : install_grub2_efi | Running grub-mkconfig... 2015-08-24 20:47:49 [DEBUG] - chroot.py : 136 : run | Generating grub configuration file ... Found theme: /boot/grub/themes/Antergos-Default/theme.txt Found linux image: /boot/vmlinuz-linux-lts Found initrd image: /boot/initramfs-linux-lts.img Found fallback initramfs image: /boot/initramfs-linux-lts-fallback.img Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initramfs image: /boot/initramfs-linux-fallback.img /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map. done 2015-08-24 20:47:49 [INFO] - bootloader.py : 389 : install_grub2_efi | GRUB(2) UEFI install completed successfully
-
When you chose
/dev/sda2
for/boot/efi
, was it your existing EFI partition or a new partition? (It should have been your existing EFI partition) -
@lots.0.logs Yeah, it already existed. It was the only partition with a fat32 filesystem and it had an “EFI System” label, so I figured it must be the right partition.
# fdisk -l Device Start End Sectors Size Type /dev/sda1 2048 2099199 2097152 1G Windows recovery environment /dev/sda2 2099200 2303999 204800 100M EFI System /dev/sda3 2304000 2566143 262144 128M Microsoft reserved /dev/sda4 2566144 212281343 209715200 100G Microsoft basic data /dev/sda5 1444280320 1445986303 1705984 833M Windows recovery environment /dev/sda6 1445986304 1465147391 19161088 9.1G Windows recovery environment /dev/sda7 212281344 1444280319 1231998976 587.5G Linux filesystem Partition table entries are not in disk order.
-
Hmm…try booting the live iso and run the following commands:
su # Be sure to double check the partition numbers as they aren't guaranteed to be the same. mount /dev/sda7 /mnt mount /dev/sda2 /mnt/boot/efi arch-chroot /mnt grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=antergos_grub --recheck grub-mkconfig -o /boot/grub/grub.cfg exit umount -Rl /mnt
-
@lots.0.logs No dice. The commands seemed successful, but there’s no sign of grub upon reboot.
[[email protected] ~]$ su [[email protected] antergos]# mount /dev/sda7 /mnt [[email protected] antergos]# mount /dev/sda2 /mnt/boot/efi [[email protected] antergos]# arch-chroot /mnt sh-4.3# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=antergos_grub --recheck Installing for x86_64-efi platform. Installation finished. No error reported. sh-4.3# grub-mkconfig -o /boot/grub/grub.cfg Generating grub configuration file ... Found theme: /boot/grub/themes/Antergos-Default/theme.txt Found linux image: /boot/vmlinuz-linux-lts Found initrd image: /boot/initramfs-linux-lts.img Found fallback initramfs image: /boot/initramfs-linux-lts-fallback.img Found linux image: /boot/vmlinuz-linux Found initrd image: /boot/initramfs-linux.img Found fallback initramfs image: /boot/initramfs-linux-fallback.img /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map. done sh-4.3# exit exit [[email protected] antergos]# umount -Rl /mnt
-
Well, I finally got grub2 installed and working on this computer (Toshiba Satellite P55t-A5116). I followed the instructions in this guide to repair grub, but ran into an error because the Ubuntu live USB couldn’t find some packages on the Antergos partition.
I deleted my Antergos partition and installed Ubuntu instead, but ran into the same problem with grub missing. Then I tried running the instructions in the guide again and it gave me this message:If your computer reboots directly into Windows, try to change the boot order in your BIOS.
If your BIOS does not allow to change the boot order, change the default boot entry of the Windows bootloader.
For example you can boot into Windows, then type the following command in an admin command prompt:
bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efiI ran that command from an admin command prompt in Windows and when I rebooted I could finally see grub. Now I have Ubuntu installed and working, but I would prefer Antergos. Can anyone tell me how I can figure out what command I’ll need to run from Windows once I install Antergos?
-
Try this:
bcdedit /set {bootmgr} path \EFI\antergos_grub\grubx64.efi
-
Thanks! I ran the command in Windows before overwriting Ubuntu with Antergos. I’m not 100% sure whether it was actually necessary, but either way everything is fine and dandy now.
The only quirk was that Antergos’ grub menu was missing an entry for Windows, so I had to run this to fix it:sudo grub-mkconfig -o /boot/grub/grub.cfg
-
Hi,
I tried to install Antergos on two older laptops (a 32-bit ASUS PC 901 Eeebook anda 64-bit Dell E 6400), both of which do not have UEFI.Installation was successful with a Complete poppu at the end. However, upon reboot, and beyond the BIOS flash screen, all that shows up is a blinkg cursor. I do not have Windoze installed on these machines so how I go about fixing this?
Many thanks!
-
If the Grub menu is not shown, you might try to reinstall it (but it’s weird Cnchi didn’t detect it wasn’t correctly installed).
To reinstall grub, you can use Antergos iso.
Boot from the CD/USB and run these commands in a terminal. If your root partition is not sda1, substitute it accordingly. Also if you have a /boot partition you should mount it in /mnt/boot after mounting your root partitionsudo su mount /dev/sda1 /mnt arch-chroot /mnt grub-mkconfig -o /boot/grub/grub.cfg grub-install /dev/sda
Please, post here your cnchi log (it’s in /var/log) from any of the two laptops to see if an error was detected when trying to install Grub in the instalation.
Ask if you have any doubts.Cheers!
EDIT: Even though the question you asked is related to this thread, it’s always better to open a new one. Next time. Thanks!
-
So, I did as requested, but:
sudo su
mount /dev/sdb1 /mnt
arch-chroot /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
mkdir /mnt/var
mount /dev/sda3 /mnt/var
grub-mkconfig -o /boot/grub/grub.cfgThere is an error on:
BEGIN /etc/grub.d/30_os-prober
/run/lvm/lvmetad.socket: connect failed: No such file or directory
WARNING: Failed to connect to lvmetad. Failing back to internal scanning.There are two notifications on mkdir (can not create a directory: /varlib/os-prober/mount: No such file or directory).
Later on,
grub-install /dev/sda1
gives error: hostdisk//dev/sda appears to contain a xfs filesystem which isn;t known to reserve space for DOS-style boot. Installing GRUB there could result in FILESYSTEMDESCTURCTION!..There is no file in /var/log.
My partitions:
/dev/sda1: boot – 1 G
/dev/sda2 - swap – 2 G
/devsda3 - /var – 1G
/dev/sdb1: / – 8G
/dev/sdd1: /home – 8GAll /xfs, but I will note that all /ext4 did not create a diffeernce.
No grub for booting yet.
-
I’ve rarely had any problems with UEFI (in fact, I like it), but then I’ve always used gummiboot, now systemd-boot. I’m just chiming in to ask why bother with grub2 if you’re going to use UEFI?
-
OK, you have a boot partition. Also you got the grub-install command wrong. Grub must be installed in /dev/sda not /dev/sda1
So, it should be:
sudo su mount /dev/sdb1 /mnt mount /dev/sda1 /mnt/boot mount /dev/sda3 /mnt/var arch-chroot /mnt grub-mkconfig -o /boot/grub/grub.cfg grub-install /dev/sda
Cheers!
-
@karasu Thanks! Tried the above, but the errors did not go away.(Got different errrors). Specifically, gor the following:
grub-mkconfig -o /boot/grub/grub.cfg
…
/run/lvm/lvmetad.socket: connect failed: No such file or directory
WARNING: Failed to connect to lvmetad. Failing back to internal scanning.
donegrub-install /dev/sda1
gives error:
grub-install
this GPT partition lable contains no BIOS Boot Partition: embedding won’t be possible.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged.
grub-install: error: will not proceed with blocklists.Now what?