You are not logged in.
Hello,
The day before yesterday, I decided to format my disks, install ArchLinux and transfer Windows from the hdd to the ssd.
The first one, nvme0n1p1, contains ArchLinux :
-an EFI partition on /dev/nvme0n1p1
-a / partition on /dev/nvme0n1p2
- a /home partition on /dev/nvme0n1p3
The second one contains windows with a classic configuration: EFI, Recovery and C.
I installed Grub in the EFI of ArchLinux because I thought Grub would boot faster if it was in the SSD.
However, after adding this code :
if [ "${grub_platform}" == "efi" ]; then
menuentry "Windows 10" {
insmod part_gpt
insmod fat
insmod search_fs_uuid
insmod chain
search --fs-uuid --set=root $hints_string $fs_uuid
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
fi
in /etc/grub.d/40_custom,
Grub displays the Windows 10 entry correctly, but gives me the error that it cannot find /EFI/Microsoft/Boot/bootmgfw.efi
The problem is probably that Windows is not on the same disk as Linux.
Otherwise, ArchLinux works really well.
If anyone has a solution, I'll take it.
Last edited by Tiene10 (2021-04-17 12:22:06)
Offline
search --fs-uuid --set=root $hints_string $fs_uuid
Have you defined $hints_string & $fs_uuid? Do they match the string & UUID for the Windows EFI system partition? Is /EFI/Microsoft/Boot/bootmgfw.efi present on the Windows EFI system partition?
Offline
No, where I have to define $hints_string $fs_uuid?
And how can I get String and UUID of the Windows EFI Partition ?
Finally, how can I acced to the Windows EFI Partition while I am in the Arch Partition.
Because I haven't access to Windows EFI :
[tiene10@PCTiene ~]$ df -h
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
dev 7,8G 0 7,8G 0% /dev
run 7,8G 1,6M 7,8G 1% /run
/dev/nvme0n1p2 56G 8,8G 45G 17% /
tmpfs 7,8G 3,1M 7,8G 1% /dev/shm
tmpfs 7,8G 716K 7,8G 1% /tmp
/dev/nvme0n1p3 61G 5,7G 52G 10% /home
/dev/nvme0n1p1 293M 144K 293M 1% /boot/efi
tmpfs 1,6G 120K 1,6G 1% /run/user/1000
/dev/sda3 814G 29G 786G 4% /run/media/tiene10/0CAA465DAA464404
I think these are basic questions, but I'm new to Linux.
Last edited by Tiene10 (2021-04-16 21:19:10)
Offline
Also when I look at the size of home (there is nothing in it), I have this result :
[root@PCTiene /]# ls -lah /home
total 28K
drwxr-xr-x 4 root root 4,0K 14 avril 21:58 .
drwxr-xr-x 17 root root 4,0K 13 avril 20:26 ..
drwx------ 2 root root 16K 13 avril 20:21 lost+found
drwx------ 17 tiene10 tiene10 4,0K 16 avril 20:34 tiene10
But when I do a df -h, I see that the partition containing home is 5.7 G.
Sorry, It is in French.
[root@PCTiene ~]# df -h /home
Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/nvme0n1p3 61G 5,7G 52G 10% /home
How come?
Last edited by Tiene10 (2021-04-16 21:16:06)
Offline
where I have to define $hints_string $fs_uuid?
Either in /boot/grub/grub.cfg or in /etc/grub.d/40_custom. The latter should be preferred because any manual additions to the former will be over-written if you ever regenerate grub.cfg with the grub-mkconfig command.
As you are only calling the variables once it would be simpler to just state the values directly rather than use a variable. I've never needed a hint string so you could probably get away with just listing the UUID.
how can I get String and UUID of the Windows EFI Partition ?
Use the grub-probe command. The GRUB page on the ArchWiki explains this, did you not bother reading that before posting?
how can I acced to the Windows EFI Partition while I am in the Arch Partition
If the Windows ESP is on /dev/sda1 then use
# mount /dev/sda1 /mnt
$ find /mnt -name bootmgfw.efi
I'm new to Linux
Pro Tip: learn to use a search engine.
Sorry, It is in French.
Prepend commands with LC_ALL=C to make them speak English.
How come?
You probably have files under /home/avril/ & /home/tiene/ that are accounting for the disk usage. Use something like ncdu to confirm this. But that is off-topic for this thread. Please stick to a single query per thread.
Offline
Thank you,
Just by mounting /dev/sda1, Grub recognized Windows Boot Manager and the /etc/grub.d/40_custom file was useless.
You are the boss
It works, but I don't understand something.
I have done :
umount -R /mnt
before reboot, and when I do
find / -name bootmgfw.efi
No result is displayed.
So I don't understand how Grub finds Windows boot manager when it didn't find it before.
Last edited by Tiene10 (2021-05-27 08:29:31)
Offline
The Windows boot manager is on the Windows EFI system partition.
Offline