You are not logged in.
I am currently trying to dual boot windows and arch. This is the output of
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 710.1M 1 loop
sda 8:0 1 14.3G 0 disk
├─sda1 8:1 1 809M 0 part
└─sda2 8:2 1 15M 0 part
nvme0n1 259:0 0 953.9G 0 disk
├─nvme0n1p1 259:1 0 100M 0 part /boot
├─nvme0n1p2 259:2 0 16M 0 part
├─nvme0n1p3 259:3 0 150G 0 part
├─nvme0n1p4 259:4 0 521M 0 part
├─nvme0n1p5 259:5 0 739.2G 0 part /
└─nvme0n1p6 259:6 0 64G 0 part [SWAP]/dev/sda is my installation medium. I have created the final two nvme partitions to install arch linux on, the other nvme partitions are preinstalled by windows.
When I try to run
grub-mkconfig -o /boot/grub/grub.cfgafter
grub-installand installing and enabling
os-prober, I get the following:
Generating grub configuration file ...
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
grub-probe: error: cannot find a GRUB drive for /dev/sda1. Check your device.map.
Adding boot menu entry for UEFI Firmware Settings ...
doneIt seems like grub-probe thinks my windows EFI partition (nvme0n1p1) is on /dev/sda1, which is my installation medium. I am not sure how to fix this.
Here is my output of
fdisk -lDisk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors
Disk model: PM981a NVMe Samsung 1024GB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 6D292F50-DF56-42CE-A7C1-8F78F1A80B50
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 206847 204800 100M EFI System
/dev/nvme0n1p2 206848 239615 32768 16M Microsoft reserved
/dev/nvme0n1p3 239616 314812415 314572800 150G Microsoft basic data
/dev/nvme0n1p4 1999339520 2000406527 1067008 521M Windows recovery environment
/dev/nvme0n1p5 314812416 1865027583 1550215168 739.2G Linux filesystem
/dev/nvme0n1p6 1865027584 1999339519 134311936 64G Linux swap
Partition table entries are not in disk order.
Disk /dev/sda: 14.32 GiB, 15376318464 bytes, 30031872 sectors
Disk model: Cruzer Blade
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xbdeca99d
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 64 1656831 1656768 809M 0 Empty
/dev/sda2 1656832 1687551 30720 15M ef EFI (FAT-12/16/32)
Disk /dev/loop0: 710.14 MiB, 744632320 bytes, 1454360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytesThanks!
Last edited by twitmuck (2023-02-15 12:42:53)
Offline
This board supports BBCode instead of markdown, please use BBCode [ code ] tags instead of markdown -- Ah you found it
Which exact grub-install command did you use?
Last edited by V1del (2023-02-10 16:08:12)
Offline
This board supports BBCode instead of markdown, please use BBCode [ code ] tags instead of markdown
Which exact grub-install command did you use?
Just noticed, updated accordingly ![]()
I ran
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUBLast edited by twitmuck (2023-02-10 16:09:09)
Offline
Weird, should generally work fine, can you create a manual working entry? https://wiki.archlinux.org/title/GRUB#W … I/GPT_mode
Offline
Weird, should generally work fine, can you create a manual working entry? https://wiki.archlinux.org/title/GRUB#W … I/GPT_mode
When I run
grub-probe --target=hints_string /boot/EFI/Microsoft/Boot/bootmgfw.efiI get
warning: unknown device type nvme0n1Offline
Don't worry about that, you only need the hints if you have two partitions with the same (filesystem) UUID.
This should work just fine:
menuentry 'Windows' {
search.fs_uuid $uuid
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}Replace $uuid with the actual UUID for the EFI system partition, which can be found with
lsblk -no uuid /dev/nvme0n1p1Jin, Jîyan, Azadî
Offline
That worked, thanks!
Offline
FWIW, I just had essentially the same error, except my install media is /dev/sdf so the error was
grub-probe: error: cannot find a GRUB drive for /dev/sdf1. Check your device.map.Clearly, when running grub-mkconfig in the initial arch-chroot, the os-prober is not recognizing the nvme drive but looking at the installation thumbdrive instead.
The simple solution turned out to be to ignore the error, finish the base system installation, exit the chroot and reboot. This time of course Windows is not on the grub menu. But after booting arch from the new drive, I repeated the command
grub-mkconfig -o /boot/grub/grub.cfgand this time it found Windows and added it to the grub menu.
Offline