M
M
Makaleks2015-11-24 19:58:07
linux
Makaleks, 2015-11-24 19:58:07

Why does GRUB UEFI skip the OS selection menu?

You need to run GRUB UEFI from an external hard drive, Linux (Arch) in the same place.
I don't understand why, while grub is displayed in Boot Options, GRUB_TIMEOUT=10, and during the installation
#grub-install /dev/sda --boot-directory=/boot --efi-directory=/boot/ ,
and in
#grub-mkconfig -o /boot/grub/grub.cfg did
n't show any errors...
...the prescribed 10 seconds doesn't pass, the GRUB menu doesn't appear, but Windows starts right away.
/boot is mounted on a separate fat32 partition with the boot and esp flags.
Tired of constantly starting from the disk)
Why doesn't it work and what should I do?
UPD1
Conclusion:

lsblk -f
NAME   FSTYPE LABEL UUID MOUNTPOINT
sda                      
├─sda1                   /boot/efi
├─sda2                   /
├─sda3                   [SWAP]
└─sda4                   /home
sdb                      
├─sdb1                   
├─sdb2                   
├─sdb3                   
├─sdb4                   
├─sdb5                   
├─sdb6                   
├─sdb7                   
└─sdb8                   
sdc                      
└─sdc1                   /mnt/usbstick
loop0
efibootmgr -v
BootCurrent: 1007
Timeout: 0 seconds
BootOrder: 0003,0002,0006,1007,0000,0001
Boot0000* P0: SAMSUNG SSD PM851 mSATA 25	BBS(16,,0x0)..BO
Boot0001* TSSTcorpCDDVDW SN-208BB SB00	BBS(18,,0x0)..BO
Boot0002* UEFI OS	HD(1,GPT,bc3117d8-d1fe-4fa5-8ece-8136e5609e48,0x800,0xfa000)/File(\EFI\BOOT\BOOTX64.EFI)..BO
Boot0003* arch	HD(1,GPT,00229d17-2906-45ce-a8b4-9e90c31b72fd,0xffff,0x1eca4)/File(\EFI\arch\grubx64.efi)
Boot0006* Windows Boot Manager	HD(1,GPT,bc3117d8-d1fe-4fa5-8ece-8136e5609e48,0x800,0xfa000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...e................
grub-mkconfig -o /boot/efi/grub/grub.cfg
Generating grub configuration file...
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.
[ 389.438936] squashfs: SQUASHFS error: Can't find a SQUASHFS superblock on sdb3
[ 389.441574] EXT4-fs (sdb3): VSF: Can't find ext4 filesystem
[ 389.444229] EXT4-fs (sdb3): VSF: Can't find ext4 filesystem
[ 389.446806] EXT4-fs (sdb3): VSF: Can't find ext4 filesystem
[ 389.449334] FAT-fs (sdb3): bogusnumber of reserved sectors
[ 389.455013] FAT-fs (sdb3): bogusnumber of reserved sectors
[ 389.457467] ntfs: (device sdb3): read_ntfs_boot_sector(): Primary boot sector is invalid.
[ 389.458413] ntfs: (device sdb3): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover.
[ 389.459448] ntfs: (device sdb3): read_ntfs_boot_sector(): Not an NTFS volume.
[ 389.464503] ufs: You didn't specify the type of your ufs filesystem
[ 389.464503]
[ 389.464503] mount -t ufs -o ufstype=sunlsunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...
[ 389.464503]
[ 389.464503] >>>WARNING<<< Wrong ufstype may corrupt your filesystem, default is ufstype=old
[ 389.469300] ufs: ufs_fill_super(): bad magic number
[ 390.196533] squashfs: SQUASHFS error: Can't find a SQUASHFS superblock on sdb8
[ 390.198765] EXT4-fs (sdb8): VSF: Can't find ext4 filesystem
[ 390.200950] EXT4-fs (sdb8): VSF: Can't find ext4 filesystem
[ 390.202902] EXT4-fs (sdb8): VSF: Can't find ext4 filesystem
[ 390.204480] FAT-fs (sdb8): bogusnumber of reserved sectors
[ 390.208607] FAT-fs (sdb8): bogusnumber of reserved sectors
[ 390.210345] ntfs: (device sdb8): read_ntfs_boot_sector(): Primary boot sector is invalid.
[ 390.210964] ntfs: (device sdb8): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover.
[ 390.211591] ntfs: (device sdb8): read_ntfs_boot_sector(): Not an NTFS volume.
[ 390.215116] ufs: You didn't specify the type of your ufs filesystem
[ 390.215116]
[ 390.215116] mount -t ufs -o ufstype=sunlsunx86|44bsd|ufs2|5xbsd|old|hp|nextstep|nextstep-cd|openstep ...
[ 390.215116]
[ 390.215116] >>>WARNING<<< Wrong ufstype may corrupt your filesystem, default is ufstype=old
[ 390.218858] ufs: ufs_fill_super(): bad magic number
[ 390.663383] FAT-fs (sdc1): error, fat_free_clusters: deleting FAT entry beyond EOF
[ 390.664442] FAT-fs (sdc1): Filesystem has been set read-only
done
UPD2
ls -Rlha /boot/efi
pastebin
c78dd3eda40c4443958e3f51505a60eb.pnge489d7026427431c98bc11f11f816ced.pnge991e8084c56496ba6ead960ebafec1e.png

Answer the question

In order to leave comments, you need to log in

2 answer(s)
M
Maxim Moseychuk, 2015-11-25
@Makaleks

  1. You are not installing grub correctly. Don't confuse boot partition with esp partition. On Linux, an esp partition must be mounted to /boot/efiand contain a single EFI. Thus, the paths to the loaders will look like /boot/efi/EFI/blablabla/loader.efi. Most interested programs and scripts rely on this. Although it is not yet part of the FHS .
    You've got it all thrown together. If you understand what you are doing, then everything is in order. Otherwise, problems may arise in the future.
    Makaleks : you archpoint to a section with a UUID 00229d17-2906-45ce-a8b4-9e90c31b72fd, but Windows Boot Managerto a section bc3117d8-d1fe-4fa5-8ece-8136e5609e48. It is easy to see that they are different. Arch is not correctly registered.
    First delete the old entry: sudo efibootmgr -b 3 -B
    Then create a new one:
    sudo efibootmgr -c -L ArchLinux -l "\EFI\arch\grubx64.efi"

    And try to boot from it.
    The path to the bootloader may be different, because. I don't know what's on your ESP partition. Could put something on pastebin or gist.

A
Andrey Burov, 2015-11-24
@BuriK666

is there an entry in bootmgr?
https://wiki.archlinux.org/index.php/Unified_Exten...

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question