Multi-booting Buster, Pyro and Windows on new PC
I have posted about the new Lenovo "mini tower" desktop PC:
https://bkhome.org/news/202003/how-many-cores-does-an-intel-i3-cpu-have.html
https://bkhome.org/news/202003/mke2fs-created-wrong-block-size.html
There is a 256GB NVME SSD with Windows 10 Home installed, decided to
leave that alone for now. The new 8TB hard drive has these partitions:
sda1 6.3TB ext4
sda2 32GB swap
sda3 1.3GB fat32 ESP
sda4 48GB ext4
sda5 48GB ext4
etc
The fat32 partition is the EasyOS boot-partition. I copied the "EFI"
folder off the Buster 2.2.12 USB-stick, and created two folders, named
"sda4" and "sda5". I copied Buster files 'vmlinuz', 'initrd' and
'easy.sfs' from the USB-stick to folder "sda4", and ditto from the Pyro
USB-stick to folder "sda5".
Of course, the usual thing is to click on 'initrd' and fix the
'BOOT_SPECS' file inside it. In the case of Buster, this is what mine
looks like:
BOOT_UUID='F633-E6AC'
BOOT_DIR='sda4/'
WKG_UUID='e4e45c2c-199a-4e9c-96f8-3b29f12c38f5'
WKG_DIR='easyos/'
...I could have named that folder "buster" instead of "sda4" -- or
anything else. The working-partition is sda4, and it is nice and tidy if
all the EasyOS folders are kept in a subdirectory, so I set WKG_DIR to
"easyos/" -- that is nice, because the rest of the partition can be used
for anything else without getting confused with the EasyOS-specific
folders.
I edited /EFI/BOOT/refind.conf:
timeout 10
textonly on
textmode 0
showtools shutdown,reboot,firmware
#scan_all_linux_kernels off
#scanfor manual,internal
scanfor manual
menuentry "EasyOS Buster normal bootup (wkg part. sda4)" {
loader /sda4/vmlinuz
initrd /sda4/initrd
ostype linux
options rw
}
menuentry " Filesystem check" {
loader /sda4/vmlinuz
initrd /sda4/initrd
ostype linux
options "rw qfix=fsck"
}
menuentry " Commandline only, do not start X" {
loader /sda4/vmlinuz
initrd /sda4/initrd
ostype linux
options "rw qfix=nox"
}
menuentry " Rollback to last saved session" {
loader /sda4/vmlinuz
initrd /sda4/initrd
ostype linux
options "rw qfix=bak"
}
menuentry " Copy session to RAM & disable drives" {
loader /sda4/vmlinuz
initrd /sda4/initrd
ostype linux
options "rw qfix=cap2 lockdown=confidentiality"
}
menuentry "EasyOS Pyro normal bootup (wkg part. sda5)" {
loader /sda5/vmlinuz
initrd /sda5/initrd
ostype linux
options rw
}
menuentry " Filesystem check" {
loader /sda5/vmlinuz
initrd /sda5/initrd
ostype linux
options "rw qfix=fsck"
}
menuentry " Commandline only, do not start X" {
loader /sda5/vmlinuz
initrd /sda5/initrd
ostype linux
options "rw qfix=nox"
}
menuentry " Rollback to last saved session" {
loader /sda5/vmlinuz
initrd /sda5/initrd
ostype linux
options "rw qfix=bak"
}
menuentry "Windows 10" {
volume SYSTEM
loader \EFI\Microsoft\Boot\bootmgfw.efi
#disabled
}
Detailed information how to setup 'refind.conf' is here:
https://www.rodsbooks.com/refind/configfile.html
This is what it looks like:
reFind has one big flaw, it does not recognise ext4 partitions with the "encrypt" flag set. I had earlier run this:
# tune2fs -O encrypt /dev/sda4
# tune2fs -O encrypt /dev/sda5
Notice above, the Windows volume name "SYSTEM" is specified.
Unfortunately, this cannot be done for sda4 and sda5. But no problem, I
made the fat32 partition big enough to hold the bootup files for both
Buster and Pyro.
If more Linux distributions are to be installed, Slackware for
example into sda6, it is OK to use the "volume" specifier, as reFind
will recognise a normal ext4 partition. So 'vmlinuz' for Slackware can
be in sda6.
Note, although Pyro has been retired, I still use it sometimes
(current version is 1.3, might even do a new release sometime). For
example, to compile my fork of OpenEmbedded, which is getting a bit old,
I get many Python errors when tried to do it in Buster. Unfortunately,
Python is a moving target.
EDIT 2020-03-22:
Here are further instructions for setting up reFind to boot an EasyPup
frugal installation, other puppies and any other Linux distribution:
https://bkhome.org/news/202003/booting-easypup-frugal-installation-with-refind.html
Tags: easy