* [gentoo-user] Dual booting with Windows 10 @ 2021-05-21 14:42 peter 2021-05-21 19:06 ` Michael 0 siblings, 1 reply; 34+ messages in thread From: peter @ 2021-05-21 14:42 UTC (permalink / raw To: gentoo-user Hello list, Mynew machine has Win-10 installedon /dev/nvme0n1 with the ESP as partition 1. I want to install Gentoo on /dev/nvme1n1. So far I haven't found a way to set up a working boot arrangement. I've tried mounting the ESP on /efi, on /EFI and on /boot/EFI. Efibootmgr seems to write a boot entry in some of those cases, and it's still there after a reboot - but it isn't visible to the BIOS. Can anyone offer some enlightenment, please? ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-21 14:42 [gentoo-user] Dual booting with Windows 10 peter @ 2021-05-21 19:06 ` Michael 2021-05-24 13:11 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: Michael @ 2021-05-21 19:06 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1442 bytes --] On Friday, 21 May 2021 15:42:01 BST peter@prh.myzen.co.uk wrote: > Hello list, > > Mynew machine has Win-10 installedon /dev/nvme0n1 with the ESP as partition > 1. I want to install Gentoo on /dev/nvme1n1. So far I haven't found a way > to set up a working boot arrangement. I've tried mounting the ESP on /efi, > on /EFI and on /boot/EFI. Efibootmgr seems to write a boot entry in some of > those cases, and it's still there after a reboot - but it isn't visible to > the BIOS. > > Can anyone offer some enlightenment, please? If your ESP is on /dev/nvme0n1 and you are using vmlinuz symlinks, you can use /boot/EFI as the mountpoint for the ESP VFAT partition. Your kernels/config/ System.map/initrd.img files will go into /boot, which will be on the same fs as / on /dev/nvme1, using a fs which supports symlinks. The efibootmgr '--loader' option should/could be used to specify the path to your bootloader image, or if you are not using a bootloader image to chainload your kernel with, point it directly to the path of your kernel; e.g. efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "gentoo-5.10.27" \ --loader "\EFI\gentoo\gentoo-5.10.27.efi" The BIOS/UEFI menu should be able to list entries of bootable *.efi images, as long as they are within the subdirectory of /boot/EFI on the ESP, but if you are using a bootloader, then it is the bootloader image which will run and chainload your OSs and their kernels. [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-21 19:06 ` Michael @ 2021-05-24 13:11 ` Peter Humphrey 2021-05-24 15:14 ` Michael 0 siblings, 1 reply; 34+ messages in thread From: Peter Humphrey @ 2021-05-24 13:11 UTC (permalink / raw To: gentoo-user On Friday, 21 May 2021 20:06:25 BST Michael wrote: > On Friday, 21 May 2021 15:42:01 BST peter@prh.myzen.co.uk wrote: > > Hello list, > > > > Mynew machine has Win-10 installedon /dev/nvme0n1 with the ESP as > > partition > > 1. I want to install Gentoo on /dev/nvme1n1. So far I haven't found a way > > to set up a working boot arrangement. I've tried mounting the ESP on /efi, > > on /EFI and on /boot/EFI. Efibootmgr seems to write a boot entry in some > > of > > those cases, and it's still there after a reboot - but it isn't visible to > > the BIOS. > > > > Can anyone offer some enlightenment, please? > > If your ESP is on /dev/nvme0n1 and you are using vmlinuz symlinks, you can > use /boot/EFI as the mountpoint for the ESP VFAT partition. Your > kernels/config/ System.map/initrd.img files will go into /boot, which will > be on the same fs as / on /dev/nvme1, using a fs which supports symlinks. > > The efibootmgr '--loader' option should/could be used to specify the path to > your bootloader image, or if you are not using a bootloader image to > chainload your kernel with, point it directly to the path of your kernel; > e.g. > > efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "gentoo-5.10.27" \ > --loader "\EFI\gentoo\gentoo-5.10.27.efi" > > The BIOS/UEFI menu should be able to list entries of bootable *.efi images, > as long as they are within the subdirectory of /boot/EFI on the ESP, but if > you are using a bootloader, then it is the bootloader image which will run > and chainload your OSs and their kernels. Thanks Michael. I've finally got it booting, by resorting to the same hack as I did on my previous machine. Using efibootmgr to add a UEFI boot record does create it, but selecting it in the BIOS fails and it just drops to the next in line: Windows 10. No adjustments to the --create command resulted in a bootable system, so I had to run bootctl-install as well and then remove the hex-numbered directory and restore my own loader.conf. I spent days wrestling with this. It's clear that I just don't understand UEFI booting. It sounds simple enough, but it clearly isn't. I've read everything I could find on the subject, to no avail. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-24 13:11 ` Peter Humphrey @ 2021-05-24 15:14 ` Michael 2021-05-25 15:23 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: Michael @ 2021-05-24 15:14 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 3957 bytes --] On Monday, 24 May 2021 14:11:00 BST Peter Humphrey wrote: > On Friday, 21 May 2021 20:06:25 BST Michael wrote: > > On Friday, 21 May 2021 15:42:01 BST peter@prh.myzen.co.uk wrote: > > > Hello list, > > > > > > Mynew machine has Win-10 installedon /dev/nvme0n1 with the ESP as > > > partition > > > 1. I want to install Gentoo on /dev/nvme1n1. So far I haven't found a > > > way > > > to set up a working boot arrangement. I've tried mounting the ESP on > > > /efi, > > > on /EFI and on /boot/EFI. Efibootmgr seems to write a boot entry in some > > > of > > > those cases, and it's still there after a reboot - but it isn't visible > > > to > > > the BIOS. > > > > > > Can anyone offer some enlightenment, please? > > > > If your ESP is on /dev/nvme0n1 and you are using vmlinuz symlinks, you can > > use /boot/EFI as the mountpoint for the ESP VFAT partition. Your > > kernels/config/ System.map/initrd.img files will go into /boot, which will > > be on the same fs as / on /dev/nvme1, using a fs which supports symlinks. > > > > The efibootmgr '--loader' option should/could be used to specify the path > > to your bootloader image, or if you are not using a bootloader image to > > chainload your kernel with, point it directly to the path of your kernel; > > e.g. > > > > efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "gentoo-5.10.27" > > \ > > --loader "\EFI\gentoo\gentoo-5.10.27.efi" > > > > The BIOS/UEFI menu should be able to list entries of bootable *.efi > > images, > > as long as they are within the subdirectory of /boot/EFI on the ESP, but > > if > > you are using a bootloader, then it is the bootloader image which will run > > and chainload your OSs and their kernels. > > Thanks Michael. I've finally got it booting, by resorting to the same hack > as I did on my previous machine. > > Using efibootmgr to add a UEFI boot record does create it, but selecting it > in the BIOS fails and it just drops to the next in line: Windows 10. No > adjustments to the --create command resulted in a bootable system, so I had > to run bootctl-install as well and then remove the hex-numbered directory > and restore my own loader.conf. I spent days wrestling with this. > > It's clear that I just don't understand UEFI booting. It sounds simple > enough, but it clearly isn't. I've read everything I could find on the > subject, to no avail. Peter, what efibootmgr stanza do you use to create your UEFI boot records? It seems the UEFI firmware fails to process what you provided and proceeds to the next bootable option (Windows 10). Typically you would either run efibootmgr to inform the UEFI firmware of your OSs kernels directly, or you would engage the services of a boot manager to list and boot your chosen OS. In the former, the UEFI firmware will boot the OS directly. In the latter, the UEFI firmware will load the boot manager and then the boot manager will select and boot the OS. The process for updating the UEFI boot menu with available kernel images using the efibootmgr command, is different to updating the boot menu of a 3rd party boot manager. The two are not related, other than ultimately loading the selected kernel/initrd. Something you should note is unlike 3rd party boot managers, the UEFI firmware cannot boot directly symlinked vmlinuz and initrd.gz files. This is because the UEFI parses the contents of the ESP, which is formatted in VFAT - a filesystem which does not support symlinks. In this case, a 3rd party boot manager will be launched by the UEFI firmware from within the ESP, which will be in possession of required 'os-prober' and filesystem drivers to access and launch the OS kernel/initrd image from your root partition. You can contact me off list if you want to work through the detail of configuring your system with and without a boot manager. I think once it clicks, you'll be able to apply your preferred solution without much trouble in the future. [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-24 15:14 ` Michael @ 2021-05-25 15:23 ` Peter Humphrey 2021-05-25 16:43 ` antlists 2021-05-26 13:49 ` Michael 0 siblings, 2 replies; 34+ messages in thread From: Peter Humphrey @ 2021-05-25 15:23 UTC (permalink / raw To: gentoo-user On Monday, 24 May 2021 16:14:43 BST Michael wrote: > You can contact me off list if you want to work through the detail of > configuring your system with and without a boot manager. I think once it > clicks, you'll be able to apply your preferred solution without much trouble > in the future. Thanks for the offer, Michael, but let me clear a few things up first. 1. I don't use symlinks in /boot. 2. I don't use grub, nor any other boot manager. 3. ...unless you count bootctl, from sys-boot/systemd-boot. 4. I have the existing ESP mounted on /boot. It belongs to Windows and cannot be enlarged beyond 100MB. 5. I have a small second system on the Gentoo disk called Rescue, so I have a multiple-boot system. # tree -L 3 /boot /boot ├── EFI │ ├── Boot │ │ └── bootx64.efi │ ├── Linux │ ├── Microsoft │ │ ├── Boot │ │ └── Recovery │ └── systemd │ └── systemd-bootx64.efi ├── System.map-5.10.27-gentoo ├── System.map-5.10.27-gentoo-rescue ├── amd-uc.img ├── config-5.10.27-gentoo ├── config-5.10.27-gentoo-rescue ├── loader │ ├── entries │ │ ├── 08-gentoo-rescue-5.10.27.conf │ │ ├── 09-gentoo-rescue-5.10.27.nonet.conf │ │ ├── 30-gentoo-5.10.27.conf │ │ ├── 32-gentoo-5.10.27.nox.conf │ │ └── 34-gentoo-5.10.27.nonet.conf │ ├── loader.conf │ └── random-seed ├── vmlinuz-5.10.27-gentoo └── vmlinuz-5.10.27-gentoo-rescue # parted -l [...] Model: Samsung SSD 970 EVO Plus 250GB (nvme) Disk /dev/nvme0n1: 250GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 106MB 105MB fat32 EFI system partition boot, esp 2 106MB 123MB 16.8MB Microsoft reserved partition msftres 3 123MB 249GB 249GB ntfs Basic data partition msftdata 4 249GB 250GB 580MB ntfs Basic data partition hidden, diag Model: Samsung SSD 970 EVO Plus 250GB (nvme) Disk /dev/nvme1n1: 250GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 269MB 268MB ext4 boot 2 269MB 34.6GB 34.4GB linux-swap(v1) swap-1 swap 3 34.6GB 51.8GB 17.2GB ext4 rescue 4 51.8GB 86.2GB 34.4GB ext4 root 5 86.2GB 90.5GB 4295MB ext4 local 6 90.5GB 103GB 12.9GB ext4 home 7 103GB 129GB 25.8GB ext4 common [...] I followed the installation handbook, boot-loader section, to create a UEFI boot entry. I followed the syntax precisely, with several variations at various attempts. In every case, the UEFI BIOS listed the new entry but couldn't execute it. I want to be shown a list of systems to boot immediately after the POST, which I'm sure efibootmgr can't do, so I ran 'bootctl install' to install the code (where?) to give me the ability. That works, though I do remove the directory with the 32-hex-digit name, and install my own loader.conf. The system seems to be stable now. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-25 15:23 ` Peter Humphrey @ 2021-05-25 16:43 ` antlists 2021-05-25 19:02 ` Peter Humphrey 2021-05-26 13:49 ` Michael 1 sibling, 1 reply; 34+ messages in thread From: antlists @ 2021-05-25 16:43 UTC (permalink / raw To: gentoo-user On 25/05/2021 16:23, Peter Humphrey wrote: > 4. I have the existing ESP mounted on /boot. It belongs to Windows and cannot > be enlarged beyond 100MB. I don't know how this works, but I installed Windows 10 and SUSE dual-boot. SUSE installed a second 500MB ESP, and it works. Somehow the system must be able to link the two together. Cheers, Wol ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-25 16:43 ` antlists @ 2021-05-25 19:02 ` Peter Humphrey 2021-05-26 4:02 ` Wols Lists 2021-05-27 15:02 ` Sid Spry 0 siblings, 2 replies; 34+ messages in thread From: Peter Humphrey @ 2021-05-25 19:02 UTC (permalink / raw To: gentoo-user On Tuesday, 25 May 2021 17:43:00 BST antlists wrote: > On 25/05/2021 16:23, Peter Humphrey wrote: > > 4. I have the existing ESP mounted on /boot. It belongs to Windows and > > cannot be enlarged beyond 100MB. > > I don't know how this works, but I installed Windows 10 and SUSE > dual-boot. SUSE installed a second 500MB ESP, and it works. Somehow the > system must be able to link the two together. Oo-er! What, on the same drive? -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-25 19:02 ` Peter Humphrey @ 2021-05-26 4:02 ` Wols Lists 2021-05-27 15:02 ` Sid Spry 1 sibling, 0 replies; 34+ messages in thread From: Wols Lists @ 2021-05-26 4:02 UTC (permalink / raw To: gentoo-user On 25/05/21 20:02, Peter Humphrey wrote: > On Tuesday, 25 May 2021 17:43:00 BST antlists wrote: >> On 25/05/2021 16:23, Peter Humphrey wrote: >>> 4. I have the existing ESP mounted on /boot. It belongs to Windows and >>> cannot be enlarged beyond 100MB. >> >> I don't know how this works, but I installed Windows 10 and SUSE >> dual-boot. SUSE installed a second 500MB ESP, and it works. Somehow the >> system must be able to link the two together. > > Oo-er! What, on the same drive? > There's only one drive ... Cheers. Wol ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-25 19:02 ` Peter Humphrey 2021-05-26 4:02 ` Wols Lists @ 2021-05-27 15:02 ` Sid Spry 1 sibling, 0 replies; 34+ messages in thread From: Sid Spry @ 2021-05-27 15:02 UTC (permalink / raw To: gentoo-user On Tue, May 25, 2021, at 2:02 PM, Peter Humphrey wrote: > On Tuesday, 25 May 2021 17:43:00 BST antlists wrote: > > On 25/05/2021 16:23, Peter Humphrey wrote: > > > 4. I have the existing ESP mounted on /boot. It belongs to Windows and > > > cannot be enlarged beyond 100MB. > > > > I don't know how this works, but I installed Windows 10 and SUSE > > dual-boot. SUSE installed a second 500MB ESP, and it works. Somehow the > > system must be able to link the two together. > > Oo-er! What, on the same drive? > I typically specify --removable for grub-install because it works around common issues in board firmwares. You can still do everything else, it's just more likely to work. You might want to try that and see what the differences on disk are or check the efibootmgr flags. IIRC there is something relevant. Still works with fastboot (at least where I tested) if you want your machine to boot extremely fast. On mine, I have to remove the boot media because there is no time to hit the setup keys. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-25 15:23 ` Peter Humphrey 2021-05-25 16:43 ` antlists @ 2021-05-26 13:49 ` Michael 2021-05-27 8:22 ` Peter Humphrey 1 sibling, 1 reply; 34+ messages in thread From: Michael @ 2021-05-26 13:49 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 9129 bytes --] On Tuesday, 25 May 2021 16:23:01 BST Peter Humphrey wrote: > Thanks for the offer, Michael, but let me clear a few things up first. > > 1. I don't use symlinks in /boot. This allows a simpler single boot partition (ESP) & filesystem set up (VFAT). > 2. I don't use grub, nor any other boot manager. From what you've written below you have installed and now use systemd-boot. > 3. ...unless you count bootctl, from sys-boot/systemd-boot. OK, bootctl is a command interfacing with the UEFI firmware API, while systemd-boot, once you install it, is a 3rd party boot manager as I've mentioned in my previous message. Disambiguation: a) UEFI boot manager - the 'native' EEPROM based UEFI boot loader/manager. It scans all .efi executables, inc. Linux et al OS kernel images stored on the ESP; updates and stores a list of .efi executables in its database and; presents them in the UEFI boot menu as manually selectable boot options. Unless the user enters the UEFI boot menu at start up, by pressing a key like F2, the first .efi executable on the list will be loaded and run. The list of executables can be manipulated using the efibootmgr command, or the UEFI menu interface itself. b) efibootmgr - a userspace command interfacing with the UEFI firmware API, used to manipulated the UEFI executable applications listed in the UEFI database. c) bootctl - a userspace command interfacing with the UEFI firmware API like efibootmgr and also with the systemd-boot boot manager (if installed). d) systemd-boot - a 3rd party boot manager (like GRUB, rEFInd, syslinux, etc.). > 4. I have the existing ESP mounted on /boot. It belongs to Windows and > cannot be enlarged beyond 100MB. This should not be a problem per se, unless bootctl & systemd-boot, with its own Boot Loader specification limitations, *must* be used as their developers intended (more below). For example, on this box I have: # du -s -h /boot/*/* 3.1M /boot/BOOT/boot.sdi 1.6M /boot/EFI/Boot 27M /boot/EFI/Gentoo 25M /boot/EFI/Microsoft My ESP is 273MB, but the MSWindows boot files plus Gentoo with two kernels (no initrd.gz) take up only 56.7M. I could add two more kernels in there and still receive change from 100M - mind you some kernels are more frugally configured than others. I notice you have /dev/nvme1n1p1 named as "boot". Is this a secondary boot partition? What is its mountpoint? What does it contain? > 5. I have a small second system on the Gentoo disk called Rescue, so I have > a multiple-boot system. > > # tree -L 3 /boot > /boot > ├── EFI > │ ├── Boot > │ │ └── bootx64.efi > │ ├── Linux > │ ├── Microsoft > │ │ ├── Boot > │ │ └── Recovery > │ └── systemd > │ └── systemd-bootx64.efi > ├── System.map-5.10.27-gentoo > ├── System.map-5.10.27-gentoo-rescue > ├── amd-uc.img > ├── config-5.10.27-gentoo > ├── config-5.10.27-gentoo-rescue > ├── loader > │ ├── entries > │ │ ├── 08-gentoo-rescue-5.10.27.conf > │ │ ├── 09-gentoo-rescue-5.10.27.nonet.conf > │ │ ├── 30-gentoo-5.10.27.conf > │ │ ├── 32-gentoo-5.10.27.nox.conf > │ │ └── 34-gentoo-5.10.27.nonet.conf > │ ├── loader.conf > │ └── random-seed > ├── vmlinuz-5.10.27-gentoo > └── vmlinuz-5.10.27-gentoo-rescue > > # parted -l > [...] > Model: Samsung SSD 970 EVO Plus 250GB (nvme) > Disk /dev/nvme0n1: 250GB > Sector size (logical/physical): 512B/512B > Partition Table: gpt > Disk Flags: > > Number Start End Size File system Name Flags > 1 1049kB 106MB 105MB fat32 EFI system partition boot, esp > 2 106MB 123MB 16.8MB Microsoft reserved partition > msftres > 3 123MB 249GB 249GB ntfs Basic data partition msftdata > 4 249GB 250GB 580MB ntfs Basic data partition hidden, > diag > > Model: Samsung SSD 970 EVO Plus 250GB (nvme) > Disk /dev/nvme1n1: 250GB > Sector size (logical/physical): 512B/512B > Partition Table: gpt > Disk Flags: > > Number Start End Size File system Name Flags > 1 1049kB 269MB 268MB ext4 boot > 2 269MB 34.6GB 34.4GB linux-swap(v1) swap-1 swap > 3 34.6GB 51.8GB 17.2GB ext4 rescue > 4 51.8GB 86.2GB 34.4GB ext4 root > 5 86.2GB 90.5GB 4295MB ext4 local > 6 90.5GB 103GB 12.9GB ext4 home > 7 103GB 129GB 25.8GB ext4 common > [...] > > I followed the installation handbook, boot-loader section, to create a UEFI > boot entry. I followed the syntax precisely, with several variations at > various attempts. In every case, the UEFI BIOS listed the new entry but > couldn't execute it. This should work to launch your systemd-boot: efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "systemd-boot" -- loader "\EFI\Boot\bootx64.efi" This would also work, if vmlinuz-5.10.27-gentoo, config-5.10.27-gentoo, and System.map-5.10.27-gentoo are stored on the ESP under the EFI/ directory, e.g. in EFI/Linux/, to launch your current kernel directly: efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Gentoo-5.10.27" -- loader "\EFI\Linux\vmlinuz-5.10.27-gentoo" NOTE: According to its specification, the systemd-boot requires a boot partition "... large enough (let’s say 250MB) ...". If it is smaller, "... a new suitably sized (let’s say 500MB) XBOOTLDR partition ..." is meant to be created to be used as $BOOT. I suppose this is to allow enough space for the devs of various Linux distributions to auto-drop their kernels in there without running out of space. Other 3rd party boot managers are not as demanding. > I want to be shown a list of systems to boot immediately after the POST, > which I'm sure efibootmgr can't do, Right, efibootmgr can be run in a console/terminal on an already up and running Linux OS. Just like bootctl. Neither of them can run immediately after POST, because they are not efi applications. Typically, UEFI firmware do not present a list of efi applications to the user - unless you interrupt the boot process and get into the UEFI menu by pressing an appropriate key. The UEFI firmware will always load and execute the first item on its list, if left to its own devices. If the first item is misconfigured/missing, it'll try to run the next one and so on. > so I ran 'bootctl install' to install > the code (where?) to give me the ability. The systemd-boot installs its efi executable in two places: a) EFI/systemd/systemd-bootx64.efi b) EFI/Boot/bootx64.efi <== Default/fall back efi executable while at the same time it adds it as the first entry in the UEFI firmware boot list, so it is loaded and executed first by the firmware. Once it is launched the systemd-boot will read its own loader configuration files and present a list to the user. > That works, though I do remove > the directory with the 32-hex-digit name, and install my own loader.conf. Sure, the systemd-boot loader configuration files can be edited and overwritten. > The system seems to be stable now. Which is a good enough proof your configuration just works(TM). :-) If it suits your needs, then arguably you don't need to do anything else. If it doesn't suit your needs quite right, you could seek alternatives. I can think of 2 other options you may want to look into. 1. A minimalist option is to not use any 3rd party boot manager and stick with the MoBo's UEFI firmware. By default and without intervention, you will always boot the first ordered entry in the UEFI boot menu, without delay. When you need an alternative kernel/OS, you will press the appropriate key during POST to enter the UEFI menu and select another entry from its boot menu manually. The efibootmgr will have to be used every time you install a new kernel to update/configure the UEFI boot menu list. 2. Use some other better suited 3rd party boot manager (not systemd-boot). The principle is broadly the same as your present setup. Each boot manager has its own idiosyncrasies and commands of choice. GRUB is quite automated, although you can overwrite its grub.conf menu and decline using update-grub, or grub-mkconfig to generate it. Then again, why would you select such a heavily automated and complicated piece of software, only to bypass the very functionality its devs wanted to offer? Contrastingly, syslinux is very simple and lightweight, but you have to manually configure its also very simple boot menu. PS. The UEFI firmware will scan more than a single VFAT partition marked as ESP type, but as far as I know this will only work if the ESP is on the first disk - I haven't tried it. [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-26 13:49 ` Michael @ 2021-05-27 8:22 ` Peter Humphrey 2021-05-27 11:01 ` Michael 0 siblings, 1 reply; 34+ messages in thread From: Peter Humphrey @ 2021-05-27 8:22 UTC (permalink / raw To: gentoo-user On Wednesday, 26 May 2021 14:49:01 BST Michael wrote: > On Tuesday, 25 May 2021 16:23:01 BST Peter Humphrey wrote: > > Thanks for the offer, Michael, but let me clear a few things up first. > > > > 1. I don't use symlinks in /boot. > > This allows a simpler single boot partition (ESP) & filesystem set up > (VFAT). How do symlinks work on a FAT32 partition? --->8 > I notice you have /dev/nvme1n1p1 named as "boot". Is this a secondary boot > partition? What is its mountpoint? What does it contain? It's a hangover from my attempts earlier. I'll remove it soon. --->8 > > I followed the installation handbook, boot-loader section, to create a > > UEFI > > boot entry. I followed the syntax precisely, with several variations at > > various attempts. In every case, the UEFI BIOS listed the new entry but > > couldn't execute it. > > This should work to launch your systemd-boot: > > efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "systemd-boot" -- > loader "\EFI\Boot\bootx64.efi" It didn't, but ... > This would also work, if vmlinuz-5.10.27-gentoo, config-5.10.27-gentoo, and > System.map-5.10.27-gentoo are stored on the ESP under the EFI/ directory, > e.g. in EFI/Linux/, to launch your current kernel directly: That's the point I was missing - where those three files live. I had them at the root of the FS, as implied by the installation wiki. > efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Gentoo-5.10.27" -- > loader "\EFI\Linux\vmlinuz-5.10.27-gentoo" --->8 > 2. Use some other better suited 3rd party boot manager (not systemd-boot). > The principle is broadly the same as your present setup. Each boot manager > has its own idiosyncrasies and commands of choice. GRUB is quite automated, > although you can overwrite its grub.conf menu and decline using > update-grub, or grub-mkconfig to generate it. Then again, why would you > select such a heavily automated and complicated piece of software, only to > bypass the very functionality its devs wanted to offer? Contrastingly, > syslinux is very simple and lightweight, but you have to manually configure > its also very simple boot menu. I don't want to start on about grub. I washed my hands of it a few years ago, after struggling to set it up to offer a choice including a kernel with three run-level options: default, no X and no network. > PS. The UEFI firmware will scan more than a single VFAT partition marked as > ESP type, but as far as I know this will only work if the ESP is on the > first disk - I haven't tried it. That may be Wol's answer. Thanks again for all the work you've put into this, Michael. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-27 8:22 ` Peter Humphrey @ 2021-05-27 11:01 ` Michael 2021-05-27 11:38 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: Michael @ 2021-05-27 11:01 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 5354 bytes --] On Thursday, 27 May 2021 09:22:33 BST Peter Humphrey wrote: > On Wednesday, 26 May 2021 14:49:01 BST Michael wrote: > > On Tuesday, 25 May 2021 16:23:01 BST Peter Humphrey wrote: > > > Thanks for the offer, Michael, but let me clear a few things up first. > > > > > > 1. I don't use symlinks in /boot. > > > > This allows a simpler single boot partition (ESP) & filesystem set up > > (VFAT). > > How do symlinks work on a FAT32 partition? They don't. Hence binary Linux distributions' boot files are typically spread over two partitions, ESP and /. Distributions which deploy symlinks of vmlinuz, vmlinuz.old and initrd.gz, initrd.gz.old, plus all the kernel files they point to, have these stored on the OS / partition under /boot/. The OS / partition is invariably formatted with a filesystem which supports symlinks, e.g. ext4. The 3rd party boot manager's efi image is stored instead on the ESP, in a subdirectory under mountpoint /boot/efi. When a distribution's kernel update/install scripts are run, the latest kernel images are copied to /boot/ and the vmlinuz and initrd.gz symlinks are replaced accordingly. The boot manager's efi image under /boot/efi does not change, unless it has a new version installed. > --->8 > > > > I followed the installation handbook, boot-loader section, to create a > > > UEFI > > > boot entry. I followed the syntax precisely, with several variations at > > > various attempts. In every case, the UEFI BIOS listed the new entry but > > > couldn't execute it. > > > > This should work to launch your systemd-boot: > > > > efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "systemd-boot" -- > > loader "\EFI\Boot\bootx64.efi" > > It didn't, but ... Hmm ... if neither "\EFI\systemd\systemd-bootx64.efi", nor the fallback image "\EFI\Boot\bootx64.efi" allowed you to boot Gentoo, then I suspect this was because something was amiss with the systemd-boot configuration. The UEFI firmware would be able to load and run either of the above files (one is a copy of the other). Thereafter, it would be up to the systemd-boot image to manage the boot process and load whatever you had pointed it to and it had managed to find. Of course, this assumes the systemd-boot entry was above the Microsoft boot manager entry in the UEFI boot menu list. Running 'efibootmgr' or going into the UEFI menu at start up would confirm the list order as far as the MoBo firmware is concerned. > > This would also work, if vmlinuz-5.10.27-gentoo, config-5.10.27-gentoo, > > and > > System.map-5.10.27-gentoo are stored on the ESP under the EFI/ directory, > > > e.g. in EFI/Linux/, to launch your current kernel directly: > > That's the point I was missing - where those three files live. I had them at > the root of the FS, as implied by the installation wiki. Right, the installation handbook is trying to cover all bases and the permutations of partition table types, partitions, fs formats and mountpoints are large. The idea of using vmlinuz symlinks at the root of /boot is to simplify/script the installation of a new kernel. The boot manager just needs to be configured to boot vmlinuz and vmlinuz old and this does not change. What does change is the kernel image these symlinks point to. Keeping kernel images on the OS / partition means the ESP itself can be quite small too, since only the boot manager efi image and a fallback image need to be stored on it. The systemd-boot specification expects devs to drop their kernels within a suitably named subdirectory within the EFI directory, which is why systemd- boot is averse to a small size ESP. > --->8 > > > 2. Use some other better suited 3rd party boot manager (not systemd-boot). > > The principle is broadly the same as your present setup. Each boot > > manager > > has its own idiosyncrasies and commands of choice. GRUB is quite > > automated, although you can overwrite its grub.conf menu and decline > > using > > update-grub, or grub-mkconfig to generate it. Then again, why would you > > select such a heavily automated and complicated piece of software, only to > > bypass the very functionality its devs wanted to offer? Contrastingly, > > syslinux is very simple and lightweight, but you have to manually > > configure > > its also very simple boot menu. > > I don't want to start on about grub. I washed my hands of it a few years > ago, after struggling to set it up to offer a choice including a kernel > with three run-level options: default, no X and no network. Heh! I've always felt GRUB2, as opposed to GRUB-legacy, was trying to solve a problem I never had. ;-) That said, GRUB2 offers minimal hassle when used with vanilla configurations. > > PS. The UEFI firmware will scan more than a single VFAT partition marked > > as ESP type, but as far as I know this will only work if the ESP is on > > the first disk - I haven't tried it. > > That may be Wol's answer. > > Thanks again for all the work you've put into this, Michael. You're welcome. :-) I found choosing a tool which is a best fit for the user requirements is usually easier than trying to bend a less suitable tool to do what you desire. If a boot menu at *each* start up is a must, have you given syslinux any consideration? It is simpler to configure and probably more flexible than systemd-boot. [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2021-05-27 11:01 ` Michael @ 2021-05-27 11:38 ` Peter Humphrey 0 siblings, 0 replies; 34+ messages in thread From: Peter Humphrey @ 2021-05-27 11:38 UTC (permalink / raw To: gentoo-user On Thursday, 27 May 2021 12:01:27 BST Michael wrote: > I found choosing a tool which is a best fit for the user requirements is > usually easier than trying to bend a less suitable tool to do what you > desire. If a boot menu at *each* start up is a must, have you given > syslinux any consideration? It is simpler to configure and probably more > flexible than systemd-boot. I'll look into it. Thanks for the tip. :) -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* [gentoo-user] Dual booting with Windows 10 @ 2017-09-13 22:12 Peter Humphrey 2017-09-14 4:09 ` R0b0t1 2017-09-15 1:16 ` Taiidan 0 siblings, 2 replies; 34+ messages in thread From: Peter Humphrey @ 2017-09-13 22:12 UTC (permalink / raw To: gentoo-user Hello list, I've acquired a copy of Windows 10 home edition (or whatever they call it) and I'd like to install it on this box to dual-boot. This is a UEFI box though, and I use bootctl from systemd-boot to manage the bootable images. Is there some guidance out there to help me do this? I haven't found anything with Google, and the wiki doesn't help either. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-13 22:12 Peter Humphrey @ 2017-09-14 4:09 ` R0b0t1 2017-09-14 4:36 ` Sam Jorna 2017-09-14 8:20 ` Peter Humphrey 2017-09-15 1:16 ` Taiidan 1 sibling, 2 replies; 34+ messages in thread From: R0b0t1 @ 2017-09-14 4:09 UTC (permalink / raw To: gentoo-user On Wed, Sep 13, 2017 at 5:12 PM, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > Hello list, > > I've acquired a copy of Windows 10 home edition (or whatever they call it) > and I'd like to install it on this box to dual-boot. This is a UEFI box > though, and I use bootctl from systemd-boot to manage the bootable images. > > Is there some guidance out there to help me do this? I haven't found > anything with Google, and the wiki doesn't help either. > Hello, It should just work if you create space for it. There are admonitions to install Windows first as people claim it will destroy a disk, but I'm not sure if it ever did this, and it seems to work well with whatever you give it. The trickiest part is still the same - going from GRUB or, now, your EFI shell, to Window's bootloader. See here: https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLinux_installed_in_UEFI_mode. If you don't need to do graphically intensive things I would suggest looking at QEMU/KVM and possibly libvirtd. If you do need to do graphically intensive things, GPU passthrough now works fairly well. Cheers, R0b0t1 ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 4:09 ` R0b0t1 @ 2017-09-14 4:36 ` Sam Jorna 2017-09-14 4:43 ` R0b0t1 2017-09-14 8:20 ` Peter Humphrey 1 sibling, 1 reply; 34+ messages in thread From: Sam Jorna @ 2017-09-14 4:36 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 494 bytes --] On Wed, Sep 13, 2017 at 11:09:14PM -0500, R0b0t1 wrote: > It should just work if you create space for it. There are admonitions > to install Windows first as people claim it will destroy a disk, but > I'm not sure if it ever did this, and it seems to work well with > whatever you give it. It may not destroy any existing partitions, but it will overwrite any bootloader you had installed (and/or reset boot order) on the install disk. -- Sam Jorna (wraeth) GnuPG Key: D6180C26 [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 858 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 4:36 ` Sam Jorna @ 2017-09-14 4:43 ` R0b0t1 2017-09-14 5:01 ` Sam Jorna 0 siblings, 1 reply; 34+ messages in thread From: R0b0t1 @ 2017-09-14 4:43 UTC (permalink / raw To: gentoo-user On Wed, Sep 13, 2017 at 11:36 PM, Sam Jorna <wraeth@gentoo.org> wrote: > On Wed, Sep 13, 2017 at 11:09:14PM -0500, R0b0t1 wrote: >> It should just work if you create space for it. There are admonitions >> to install Windows first as people claim it will destroy a disk, but >> I'm not sure if it ever did this, and it seems to work well with >> whatever you give it. > > It may not destroy any existing partitions, but it will overwrite any > bootloader you had installed (and/or reset boot order) on the install > disk. > If you perform an EFI installation it can't delete your bootloader (unless you modify the partition it's on). The second one I didn't think of. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 4:43 ` R0b0t1 @ 2017-09-14 5:01 ` Sam Jorna 0 siblings, 0 replies; 34+ messages in thread From: Sam Jorna @ 2017-09-14 5:01 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1006 bytes --] On Wed, Sep 13, 2017 at 11:43:42PM -0500, R0b0t1 wrote: > On Wed, Sep 13, 2017 at 11:36 PM, Sam Jorna <wraeth@gentoo.org> wrote: > > On Wed, Sep 13, 2017 at 11:09:14PM -0500, R0b0t1 wrote: > >> It should just work if you create space for it. There are admonitions > >> to install Windows first as people claim it will destroy a disk, but > >> I'm not sure if it ever did this, and it seems to work well with > >> whatever you give it. > > > > It may not destroy any existing partitions, but it will overwrite any > > bootloader you had installed (and/or reset boot order) on the install > > disk. > > > > If you perform an EFI installation it can't delete your bootloader > (unless you modify the partition it's on). > > The second one I didn't think of. Indeed, it won't necessarily destroy the entire ESP, but it will reset the boot order to point to the Windows booloader, and I suspect it will overwrite anything at ESP:EFI\Boot. -- Sam Jorna (wraeth) GnuPG Key: D6180C26 [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 858 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 4:09 ` R0b0t1 2017-09-14 4:36 ` Sam Jorna @ 2017-09-14 8:20 ` Peter Humphrey 2017-09-14 18:51 ` R0b0t1 1 sibling, 1 reply; 34+ messages in thread From: Peter Humphrey @ 2017-09-14 8:20 UTC (permalink / raw To: gentoo-user On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: > The trickiest part is still the same - going from GRUB or, now, your > EFI shell, to Window's bootloader. See here: > https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLinux_ins > talled_in_UEFI_mode. That advice, though helpful, is about Grub, which isn't installed on this box. I did try at first to get it to work here, but failed, so I removed it and went for bootctl. It's a fiddle to keep up to date with kernel upgrades, but at least it works. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 8:20 ` Peter Humphrey @ 2017-09-14 18:51 ` R0b0t1 2017-09-17 14:12 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: R0b0t1 @ 2017-09-14 18:51 UTC (permalink / raw To: gentoo-user On Thu, Sep 14, 2017 at 3:20 AM, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: > >> The trickiest part is still the same - going from GRUB or, now, your >> EFI shell, to Window's bootloader. See here: >> https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLinux_ins >> talled_in_UEFI_mode. > > That advice, though helpful, is about Grub, which isn't installed on this > box. I did try at first to get it to work here, but failed, so I removed it > and went for bootctl. It's a fiddle to keep up to date with kernel upgrades, > but at least it works. > In that case it seems like systemd-boot will check for the Windows loader and add it to its menu automatically (https://wiki.archlinux.org/index.php/systemd-boot#Adding_boot_entries). As above, you may need to reinstall it if the Windows bootloader installs itself on top of systemd-boot. I originally thought you were just booting an EFI stub kernel, in which case you would have needed some kind of boot manager. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-14 18:51 ` R0b0t1 @ 2017-09-17 14:12 ` Peter Humphrey 2017-09-18 4:17 ` R0b0t1 0 siblings, 1 reply; 34+ messages in thread From: Peter Humphrey @ 2017-09-17 14:12 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1852 bytes --] On Thursday, 14 September 2017 19:51:37 BST R0b0t1 wrote: > On Thu, Sep 14, 2017 at 3:20 AM, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > > On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: > >> The trickiest part is still the same - going from GRUB or, now, your > >> EFI shell, to Window's bootloader. See here: > >> https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLinux_ > >> ins talled_in_UEFI_mode. > > > > That advice, though helpful, is about Grub, which isn't installed on > > this box. I did try at first to get it to work here, but failed, so I > > removed it and went for bootctl. It's a fiddle to keep up to date with > > kernel upgrades, but at least it works. > > In that case it seems like systemd-boot will check for the Windows > loader and add it to its menu automatically > (https://wiki.archlinux.org/index.php/systemd-boot#Adding_boot_entries). > As above, you may need to reinstall it if the Windows bootloader > installs itself on top of systemd-boot. > > I originally thought you were just booting an EFI stub kernel, in > which case you would have needed some kind of boot manager. I have three questions now: 1. Will Windows 10 install itself in the unpartitioned space? I've attached a screen shot of gparted to show the current layout. 2. What will happen to the UEFI kernel entries in /dev/nvme0n1p1? 3. Those entries include some left over from experimenting with other distros. How can I manage the entries and purge the ones I don't need? "Bootctl remove" ignores them. Thanks everyone for your help so far. I don't want to install into a VM, because my main reason for installing Win10 is to be able to run an occasional firmware update program, none of which, it seems, run on Linux. Of course, it should also help me get up to speed with the M$ world. -- Regards, Peter. [-- Attachment #2: Screenshot-GParted.png --] [-- Type: image/png, Size: 134818 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-17 14:12 ` Peter Humphrey @ 2017-09-18 4:17 ` R0b0t1 2017-09-18 7:53 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: R0b0t1 @ 2017-09-18 4:17 UTC (permalink / raw To: gentoo-user On Sun, Sep 17, 2017 at 9:12 AM, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > On Thursday, 14 September 2017 19:51:37 BST R0b0t1 wrote: >> On Thu, Sep 14, 2017 at 3:20 AM, Peter Humphrey <peter@prh.myzen.co.uk> > wrote: >> > On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: >> >> The trickiest part is still the same - going from GRUB or, now, your >> >> EFI shell, to Window's bootloader. See here: >> >> https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLinux_ >> >> ins talled_in_UEFI_mode. >> > >> > That advice, though helpful, is about Grub, which isn't installed on >> > this box. I did try at first to get it to work here, but failed, so I >> > removed it and went for bootctl. It's a fiddle to keep up to date with >> > kernel upgrades, but at least it works. >> >> In that case it seems like systemd-boot will check for the Windows >> loader and add it to its menu automatically >> (https://wiki.archlinux.org/index.php/systemd-boot#Adding_boot_entries). >> As above, you may need to reinstall it if the Windows bootloader >> installs itself on top of systemd-boot. >> >> I originally thought you were just booting an EFI stub kernel, in >> which case you would have needed some kind of boot manager. > > I have three questions now: > > 1. Will Windows 10 install itself in the unpartitioned space? I've attached > a screen shot of gparted to show the current layout. > Yes. It will split the free space into a number of partitions if you give the installer no further instruction besides selecting the unallocated area. To force Windows to use one partition delete the ones it creates automatically. You will need to select "custom" or "advanced" in every place it is offered as an option. > 2. What will happen to the UEFI kernel entries in /dev/nvme0n1p1? > When people say "entries" they are usually referring to settings in the nonvolatile memory used by a motherboard's EFI firmware. An entry associates with an ID a path, priority, and name which is used to start the corresponding EFI executable. The actual kernels on /dev/nvme0np1 will remain there because Windows won't touch that partition unless you tell it to. > 3. Those entries include some left over from experimenting with other > distros. How can I manage the entries and purge the ones I don't need? > "Bootctl remove" ignores them. > If you are referring to the kernels left in your /boot then simply delete them. "Bootctl remove" and other EFI boot managers I have seen refuse to touch your disk. They operate on the EFI configuration memory. > Thanks everyone for your help so far. > > I don't want to install into a VM, because my main reason for installing > Win10 is to be able to run an occasional firmware update program, none of > which, it seems, run on Linux. Of course, it should also help me get up to > speed with the M$ world. > If you pass an entire hard disk to the VM you can then take it out and put it in another computer and boot it (or boot it in the same computer sans hypervisor). With Linux you can pass partitions in individually and use what the guest thinks is a raw character device as a disk, so that if you wanted to boot that installation from outside of the hypervisor you could. This might not be possible with Windows. If you install into a VM you can pass almost everything to the VM directly. I suppose the only thing that may not work extremely well would be motherboard firmware updates, but if you look QEMU has options to pass almost everything in a computer to a VM. Admittedly this isn't a very plug-and-play solution. Aside from firmware updates (realize though that almost everything - barring some low level interfaces like I2C - can be passed to a VM) I would invite you to use Windows only in a VM. I find it easier to get work done in this way while using Windows programs. Xfreerdp is a good way to interact with a Windows guest and can provide better desktop integration than QEMU or libvirtd. Cheers, R0b0t1 ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-18 4:17 ` R0b0t1 @ 2017-09-18 7:53 ` Peter Humphrey 2017-09-18 10:52 ` Mick 2017-09-19 4:15 ` R0b0t1 0 siblings, 2 replies; 34+ messages in thread From: Peter Humphrey @ 2017-09-18 7:53 UTC (permalink / raw To: gentoo-user On Monday, 18 September 2017 05:17:34 BST R0b0t1 wrote: > On Sun, Sep 17, 2017 at 9:12 AM, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > > On Thursday, 14 September 2017 19:51:37 BST R0b0t1 wrote: > >> On Thu, Sep 14, 2017 at 3:20 AM, Peter Humphrey <peter@prh.myzen.co.uk> > > > > wrote: > >> > On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: > >> >> The trickiest part is still the same - going from GRUB or, now, your > >> >> EFI shell, to Window's bootloader. See here: > >> >> https://wiki.archlinux.org/index.php/GRUB#Chainloading_Windows.2FLin > >> >> ux_ > >> >> ins talled_in_UEFI_mode. > >> > > >> > That advice, though helpful, is about Grub, which isn't installed on > >> > this box. I did try at first to get it to work here, but failed, so I > >> > removed it and went for bootctl. It's a fiddle to keep up to date > >> > with > >> > kernel upgrades, but at least it works. > >> > >> In that case it seems like systemd-boot will check for the Windows > >> loader and add it to its menu automatically > >> (https://wiki.archlinux.org/index.php/systemd-boot#Adding_boot_entries) > >> . > >> As above, you may need to reinstall it if the Windows bootloader > >> installs itself on top of systemd-boot. > >> > >> I originally thought you were just booting an EFI stub kernel, in > >> which case you would have needed some kind of boot manager. > > > > I have three questions now: > > > > 1. Will Windows 10 install itself in the unpartitioned space? I've > > attached a screen shot of gparted to show the current layout. > > Yes. It will split the free space into a number of partitions if you > give the installer no further instruction besides selecting the > unallocated area. That's what I was hoping to hear - thanks. > To force Windows to use one partition delete the ones it creates > automatically. You will need to select "custom" or "advanced" in every > place it is offered as an option. > > > 2. What will happen to the UEFI kernel entries in /dev/nvme0n1p1? > > When people say "entries" they are usually referring to settings in > the nonvolatile memory used by a motherboard's EFI firmware. An entry > associates with an ID a path, priority, and name which is used to > start the corresponding EFI executable. I mean the things that "bootctl status" displays. I've already disabled the unwanted ones in the UEFI BIOS's list of bootable kernels, but bootctl still shows them and won't remove them. > The actual kernels on /dev/nvme0np1 will remain there because Windows > won't touch that partition unless you tell it to. > > > 3. Those entries include some left over from experimenting with > > other distros. How can I manage the entries and purge the ones I don't > > need? "Bootctl remove" ignores them. > > If you are referring to the kernels left in your /boot then simply > delete them. "Bootctl remove" and other EFI boot managers I have seen > refuse to touch your disk. They operate on the EFI configuration > memory. > > > Thanks everyone for your help so far. > > > > I don't want to install into a VM, because my main reason for installing > > Win10 is to be able to run an occasional firmware update program, none > > of > > which, it seems, run on Linux. Of course, it should also help me get up > > to speed with the M$ world. > > If you pass an entire hard disk to the VM you can then take it out and > put it in another computer and boot it (or boot it in the same > computer sans hypervisor). Maybe that's a use for a couple of spare SSDs I have here. > With Linux you can pass partitions in individually and use what the > guest thinks is a raw character device as a disk, so that if you > wanted to boot that installation from outside of the hypervisor you > could. This might not be possible with Windows. > > If you install into a VM you can pass almost everything to the VM > directly. I suppose the only thing that may not work extremely well > would be motherboard firmware updates, but if you look QEMU has > options to pass almost everything in a computer to a VM. Admittedly > this isn't a very plug-and-play solution. > > Aside from firmware updates (realize though that almost everything - > barring some low level interfaces like I2C - can be passed to a VM) I > would invite you to use Windows only in a VM. I find it easier to get > work done in this way while using Windows programs. Xfreerdp is a good > way to interact with a Windows guest and can provide better desktop > integration than QEMU or libvirtd. I use VirtualBox here, mostly because some BOINC projects require it. Thanks, R0b0t1. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-18 7:53 ` Peter Humphrey @ 2017-09-18 10:52 ` Mick 2017-09-18 11:09 ` Peter Humphrey 2017-09-19 4:15 ` R0b0t1 1 sibling, 1 reply; 34+ messages in thread From: Mick @ 2017-09-18 10:52 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 410 bytes --] On Monday, 18 September 2017 08:53:01 BST Peter Humphrey wrote: > I mean the things that "bootctl status" displays. I've already disabled the > unwanted ones in the UEFI BIOS's list of bootable kernels, but bootctl still > shows them and won't remove them. Have you deleted/moved the xxx.efi files and these continue to be shown in bootctl? Have you tried using efibootmgr to delete them? -- Regards, Mick [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-18 10:52 ` Mick @ 2017-09-18 11:09 ` Peter Humphrey 2017-09-18 11:17 ` Mick 0 siblings, 1 reply; 34+ messages in thread From: Peter Humphrey @ 2017-09-18 11:09 UTC (permalink / raw To: gentoo-user On Monday, 18 September 2017 11:52:13 BST Mick wrote: > On Monday, 18 September 2017 08:53:01 BST Peter Humphrey wrote: > > I mean the things that "bootctl status" displays. I've already disabled > > the unwanted ones in the UEFI BIOS's list of bootable kernels, but > > bootctl still shows them and won't remove them. > > Have you deleted/moved the xxx.efi files and these continue to be shown in > bootctl? There's only the one, but yes: # find /boot -name \*.efi /boot/EFI/systemd/systemd-bootx64.efi > Have you tried using efibootmgr to delete them? Ah! That looks like just what I need. I should have thought of it myself, but thanks for the nudge. Now to start poking about where angels fear to tread... -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-18 11:09 ` Peter Humphrey @ 2017-09-18 11:17 ` Mick 2017-09-18 13:06 ` Peter Humphrey 0 siblings, 1 reply; 34+ messages in thread From: Mick @ 2017-09-18 11:17 UTC (permalink / raw To: gentoo-user [-- Attachment #1: Type: text/plain, Size: 1105 bytes --] On Monday, 18 September 2017 12:09:54 BST Peter Humphrey wrote: > On Monday, 18 September 2017 11:52:13 BST Mick wrote: > > On Monday, 18 September 2017 08:53:01 BST Peter Humphrey wrote: > > > I mean the things that "bootctl status" displays. I've already disabled > > > the unwanted ones in the UEFI BIOS's list of bootable kernels, but > > > bootctl still shows them and won't remove them. > > > > Have you deleted/moved the xxx.efi files and these continue to be shown in > > bootctl? > > There's only the one, but yes: > > # find /boot -name \*.efi > /boot/EFI/systemd/systemd-bootx64.efi > > > Have you tried using efibootmgr to delete them? > > Ah! That looks like just what I need. I should have thought of it myself, > but thanks for the nudge. > > Now to start poking about where angels fear to tread... OK, second hint: you may need to mount your /sys/firmware/efi/efivars as read-write before you can make any changes to it - bug #627964 refers, as well as this wiki page: https://wiki.gentoo.org/index.php? title=Efibootmgr&type=revision&diff=667826&oldid=667778 -- Regards, Mick [-- Attachment #2: This is a digitally signed message part. --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-18 11:17 ` Mick @ 2017-09-18 13:06 ` Peter Humphrey 0 siblings, 0 replies; 34+ messages in thread From: Peter Humphrey @ 2017-09-18 13:06 UTC (permalink / raw To: gentoo-user On Monday, 18 September 2017 12:17:34 BST Mick wrote: > OK, second hint: you may need to mount your /sys/firmware/efi/efivars as > read-write before you can make any changes to it - bug #627964 refers, as > well as this wiki page: > > https://wiki.gentoo.org/index.php? > title=Efibootmgr&type=revision&diff=667826&oldid=667778 Yes, I'd already seen that. :) -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* [gentoo-user] Dual booting with Windows 10 2017-09-18 7:53 ` Peter Humphrey 2017-09-18 10:52 ` Mick @ 2017-09-19 4:15 ` R0b0t1 2017-09-19 11:07 ` Peter Humphrey 1 sibling, 1 reply; 34+ messages in thread From: R0b0t1 @ 2017-09-19 4:15 UTC (permalink / raw To: gentoo-user@lists.gentoo.org [-- Attachment #1: Type: text/plain, Size: 5203 bytes --] On Monday, September 18, 2017, Peter Humphrey <peter@prh.myzen.co.uk> wrote: > > On Monday, 18 September 2017 05:17:34 BST R0b0t1 wrote: > > On Sun, Sep 17, 2017 at 9:12 AM, Peter Humphrey <peter@prh.myzen.co.uk> > wrote: > > > On Thursday, 14 September 2017 19:51:37 BST R0b0t1 wrote: > > >> On Thu, Sep 14, 2017 at 3:20 AM, Peter Humphrey < peter@prh.myzen.co.uk> > > > > > > wrote: > > >> > On Thursday, 14 September 2017 05:09:14 BST R0b0t1 wrote: > > >> >> The trickiest part is still the same - going from GRUB or, now, your > > >> >> EFI shell, to Window's bootloader. See here: > > >> >> https://wiki.archlinux.org/index.php/GRUB#Chainloading_ Windows.2FLin > > >> >> ux_ > > >> >> ins talled_in_UEFI_mode. > > >> > > > >> > That advice, though helpful, is about Grub, which isn't installed on > > >> > this box. I did try at first to get it to work here, but failed, so I > > >> > removed it and went for bootctl. It's a fiddle to keep up to date > > >> > with > > >> > kernel upgrades, but at least it works. > > >> > > >> In that case it seems like systemd-boot will check for the Windows > > >> loader and add it to its menu automatically > > >> (https://wiki.archlinux.org/index.php/systemd-boot#Adding_ boot_entries) > > >> . > > >> As above, you may need to reinstall it if the Windows bootloader > > >> installs itself on top of systemd-boot. > > >> > > >> I originally thought you were just booting an EFI stub kernel, in > > >> which case you would have needed some kind of boot manager. > > > > > > I have three questions now: > > > > > > 1. Will Windows 10 install itself in the unpartitioned space? I've > > > attached a screen shot of gparted to show the current layout. > > > > Yes. It will split the free space into a number of partitions if you > > give the installer no further instruction besides selecting the > > unallocated area. > > That's what I was hoping to hear - thanks. > > > To force Windows to use one partition delete the ones it creates > > automatically. You will need to select "custom" or "advanced" in every > > place it is offered as an option. > > > > > 2. What will happen to the UEFI kernel entries in /dev/nvme0n1p1? > > > > When people say "entries" they are usually referring to settings in > > the nonvolatile memory used by a motherboard's EFI firmware. An entry > > associates with an ID a path, priority, and name which is used to > > start the corresponding EFI executable. > > I mean the things that "bootctl status" displays. I've already disabled the > unwanted ones in the UEFI BIOS's list of bootable kernels, but bootctl still > shows them and won't remove them. > Having checked bootctl's documentation it should be changing EFI variables (it may manage kernels also, I am not entirely sure). Are you sure this isn't related to the bug Mick mentioned? If it is then I am unsure why efibootmgr works. Now it's fixed (by using something else) and I can't expect you to care, but I am left perplexed. > > The actual kernels on /dev/nvme0np1 will remain there because Windows > > won't touch that partition unless you tell it to. > > > > > 3. Those entries include some left over from experimenting with > > > other distros. How can I manage the entries and purge the ones I don't > > > need? "Bootctl remove" ignores them. > > > > If you are referring to the kernels left in your /boot then simply > > delete them. "Bootctl remove" and other EFI boot managers I have seen > > refuse to touch your disk. They operate on the EFI configuration > > memory. > > > > > Thanks everyone for your help so far. > > > > > > I don't want to install into a VM, because my main reason for installing > > > Win10 is to be able to run an occasional firmware update program, none > > > of > > > which, it seems, run on Linux. Of course, it should also help me get up > > > to speed with the M$ world. > > > > If you pass an entire hard disk to the VM you can then take it out and > > put it in another computer and boot it (or boot it in the same > > computer sans hypervisor). > > Maybe that's a use for a couple of spare SSDs I have here. > > > With Linux you can pass partitions in individually and use what the > > guest thinks is a raw character device as a disk, so that if you > > wanted to boot that installation from outside of the hypervisor you > > could. This might not be possible with Windows. > > > > If you install into a VM you can pass almost everything to the VM > > directly. I suppose the only thing that may not work extremely well > > would be motherboard firmware updates, but if you look QEMU has > > options to pass almost everything in a computer to a VM. Admittedly > > this isn't a very plug-and-play solution. > > > > Aside from firmware updates (realize though that almost everything - > > barring some low level interfaces like I2C - can be passed to a VM) I > > would invite you to use Windows only in a VM. I find it easier to get > > work done in this way while using Windows programs. Xfreerdp is a good > > way to interact with a Windows guest and can provide better desktop > > integration than QEMU or libvirtd. > > I use VirtualBox here, mostly because some BOINC projects require it. > Fair enough. [-- Attachment #2: Type: text/html, Size: 6981 bytes --] ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-19 4:15 ` R0b0t1 @ 2017-09-19 11:07 ` Peter Humphrey 0 siblings, 0 replies; 34+ messages in thread From: Peter Humphrey @ 2017-09-19 11:07 UTC (permalink / raw To: gentoo-user On Tuesday, 19 September 2017 05:15:46 BST R0b0t1 wrote: > Having checked bootctl's documentation it should be changing EFI variables > (it may manage kernels also, I am not entirely sure). Are you sure this > isn't related to the bug Mick mentioned? If it is then I am unsure why > efibootmgr works. What, efivars being mounted read-only? Quite sure. If I don't remount them read-write, "bootctl install" refuses to run at all. > Now it's fixed (by using something else) and I can't expect you to care, > but I am left perplexed. I wonder. Just possibly this is a motherboard or UEFI BIOS problem (or one I've caused it). When I first received the machine I couldn't get grub to install and run, no matter what I tried. That was 18 months ago, since when it's been running apparently happily using bootctl. -- Regards, Peter. ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-13 22:12 Peter Humphrey 2017-09-14 4:09 ` R0b0t1 @ 2017-09-15 1:16 ` Taiidan 2017-09-15 4:04 ` R0b0t1 1 sibling, 1 reply; 34+ messages in thread From: Taiidan @ 2017-09-15 1:16 UTC (permalink / raw To: gentoo-user, Peter Humphrey Install it in a VM! If your system supports IOMMU for graphics devices here is something special you can do: I would instead consider purchasing an additional PCI-e graphics device and a PCI-e usb card then installing Windows in a VM with IOMMU-GFX, this way you can have your cake and eat it too. I play my games in a windows VM on my libre coreboot workstation, it works great and I highly recommend it Another reason a VM is much better is that windows doesn't get access to your bare metal hardware unless you forward a device so it can't send serial numbers back to MS for their spying/marketing database, such as your HDD serial number or NIC mac address, and one can avoid a bad virus as you can simply restore a previous VM snapshot. [1] (for the VM's keyboard and mouse if you don't have more than one usb controller onboard) ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-15 1:16 ` Taiidan @ 2017-09-15 4:04 ` R0b0t1 2017-09-15 9:03 ` Radoje Stojisic 0 siblings, 1 reply; 34+ messages in thread From: R0b0t1 @ 2017-09-15 4:04 UTC (permalink / raw To: gentoo-user On Thu, Sep 14, 2017 at 8:16 PM, Taiidan@gmx.com <Taiidan@gmx.com> wrote: > Install it in a VM! > Yes, this is a very good option. I can verify everything "works" but sometimes you will experience sporadic errors with new hardware. You won't waste time on this if it does happen; in every case I have seen it shows up immediately. Unfortunately you may have to go off the beaten path some and avoid libvirtd or manually edit the same's configuration files. I can provide summaries of the manuals and wikis available if you want. Cheers, R0b0t1 ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-15 4:04 ` R0b0t1 @ 2017-09-15 9:03 ` Radoje Stojisic 2017-09-16 3:25 ` R0b0t1 2017-09-16 8:46 ` Taiidan 0 siblings, 2 replies; 34+ messages in thread From: Radoje Stojisic @ 2017-09-15 9:03 UTC (permalink / raw To: gentoo-user Hi all, I am interested in doing something too. Do you talk about GPU Pass-through? Few months ago I wanted to try it myself but I own a Ryzen 1800x and just one GPU. Is there a way with only one GPU? Or do I really need 2GPUs and 2 Keyboard/Mouse? Thanks -Radi On 15.09.2017 06:04, R0b0t1 wrote: > On Thu, Sep 14, 2017 at 8:16 PM, Taiidan@gmx.com <Taiidan@gmx.com> wrote: >> Install it in a VM! >> > Yes, this is a very good option. I can verify everything "works" but > sometimes you will experience sporadic errors with new hardware. You > won't waste time on this if it does happen; in every case I have seen > it shows up immediately. > > Unfortunately you may have to go off the beaten path some and avoid > libvirtd or manually edit the same's configuration files. I can > provide summaries of the manuals and wikis available if you want. > > Cheers, > R0b0t1 > ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-15 9:03 ` Radoje Stojisic @ 2017-09-16 3:25 ` R0b0t1 2017-09-16 8:46 ` Taiidan 1 sibling, 0 replies; 34+ messages in thread From: R0b0t1 @ 2017-09-16 3:25 UTC (permalink / raw To: gentoo-user On Fri, Sep 15, 2017 at 4:03 AM, Radoje Stojisic <radoje.stojisic@posteo.de> wrote: > Hi all, > > I am interested in doing something too. Do you talk about GPU Pass-through? > Few months ago I wanted to try it myself but I own a Ryzen 1800x and just > one GPU. Is there a way with only one GPU? > That depends what you want to do. I'm going to assume what you actually want is a 3D capable OpenGL provider in your VM. If you have an Intel GPU, you can use VT-g to share it with virtual machines. On Linux this is fairly recent development and I personally have not had time to experiment with it. This functionality has, surprisingly, been available on Windows for some time. Also available on Windows is the ability to pool GPUs and allow virtual machines computation time on them. However, that doesn't work on Linux (yet), so the only alternative to VT-g is VGA passthrough which requires another GPU. > Or do I really need 2GPUs and 2 Keyboard/Mouse? > You don't need two keyboards and mice. However, in the typical setup, when you pass your keyboard and mouse to the virtual machine, you will be unable to interact with your host machine. For a lot of users this might be fine. If QEMU crashes the devices should be released to the host, but if the machine becomes unresponsive you will have to wait or perform a hard reset. Another option is to view your machine (Linux or Windows) with remote desktop software. I personally prefer this one because it doesn't require you to have a duplicate set of hardware. With Windows, RDP provides better host/guest integration than anything else. Taiidan recommended a separate USB controller for the guest. This can be very helpful but also isn't necessary. You can pass specific USB ports to a guest. (I have to test this with hotplugging but it looks like it should work.) Cheers, R0b0t1 ^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: [gentoo-user] Dual booting with Windows 10 2017-09-15 9:03 ` Radoje Stojisic 2017-09-16 3:25 ` R0b0t1 @ 2017-09-16 8:46 ` Taiidan 1 sibling, 0 replies; 34+ messages in thread From: Taiidan @ 2017-09-16 8:46 UTC (permalink / raw To: gentoo-user, Radoje Stojisic On 09/15/2017 05:03 AM, Radoje Stojisic wrote: > Hi all, > > I am interested in doing something too. Do you talk about GPU > Pass-through? Few months ago I wanted to try it myself but I own a > Ryzen 1800x and just one GPU. Is there a way with only one GPU? I am always willing to assist with complex technical problems. > Or do I really need 2GPUs and 2 Keyboard/Mouse? Yeah you do as it is very difficult to re-map the BAR's of an an in-use graphics device. Obviously one can use a single keyboard and mouse with a KVM, but the multi GPU part is mandatory. You can buy a video card that doesn't need an additional power connection for only $30 or so, plus if you only have one USB controller you would need a USB PCI-e card one for $20 - TOTAL $50 very affordable. ^ permalink raw reply [flat|nested] 34+ messages in thread
end of thread, other threads:[~2021-05-27 15:02 UTC | newest] Thread overview: 34+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-05-21 14:42 [gentoo-user] Dual booting with Windows 10 peter 2021-05-21 19:06 ` Michael 2021-05-24 13:11 ` Peter Humphrey 2021-05-24 15:14 ` Michael 2021-05-25 15:23 ` Peter Humphrey 2021-05-25 16:43 ` antlists 2021-05-25 19:02 ` Peter Humphrey 2021-05-26 4:02 ` Wols Lists 2021-05-27 15:02 ` Sid Spry 2021-05-26 13:49 ` Michael 2021-05-27 8:22 ` Peter Humphrey 2021-05-27 11:01 ` Michael 2021-05-27 11:38 ` Peter Humphrey -- strict thread matches above, loose matches on Subject: below -- 2017-09-13 22:12 Peter Humphrey 2017-09-14 4:09 ` R0b0t1 2017-09-14 4:36 ` Sam Jorna 2017-09-14 4:43 ` R0b0t1 2017-09-14 5:01 ` Sam Jorna 2017-09-14 8:20 ` Peter Humphrey 2017-09-14 18:51 ` R0b0t1 2017-09-17 14:12 ` Peter Humphrey 2017-09-18 4:17 ` R0b0t1 2017-09-18 7:53 ` Peter Humphrey 2017-09-18 10:52 ` Mick 2017-09-18 11:09 ` Peter Humphrey 2017-09-18 11:17 ` Mick 2017-09-18 13:06 ` Peter Humphrey 2017-09-19 4:15 ` R0b0t1 2017-09-19 11:07 ` Peter Humphrey 2017-09-15 1:16 ` Taiidan 2017-09-15 4:04 ` R0b0t1 2017-09-15 9:03 ` Radoje Stojisic 2017-09-16 3:25 ` R0b0t1 2017-09-16 8:46 ` Taiidan
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox