01-03-2020, 08:06 PM
I am able to reboot to a different partition by editing the configuration file in "/boot". The name and path escape me, and I can't boot up my Pinebook Pro right now, (PBP is fine, the desk space is occupied by old laptop chugging away at an update...)
Basically you:
- Have a more recent update to U-Boot, which prefers SD cards over eMMC
- Make 2 or more OS partitions on your SD card, each having "/etc/fstab" correctly mouting their own "/" root file system
- If you want to boot an off-line OS, edit the "/boot/x/x" file so reference the new OS partition
- Reboot
And there you have it. Clumsey, but doable.
A few gotchas. U-Boot may reference the OS by LABEL or GUID, (I can't remember which). So each root FS should have a unique LABEL and GUID. Next, make sure if you use LABELs or GUIDs to mount your root FS in "/etc/fstab", it references the correct partition's OS. Last, again make sure any LABELs and GUID are not used by the eMMC.
The biggest reason I do this, is for updates. Back in the bad old days before OpenZFS or BTRFS, I used 2 same sized partitions for my OS. The other non-OS files systems were elsewhere, (like "/home" or "/media"). So 25GB might be enough. Then when I wanted to update, I cloned the currently booted OS to the off line partition, with something like Rsync. Modified the copies' "/etc/fstab", and anything else needed. Changed Grub to prefer the newly copied OS. A simple reboot tested my cloned OS, which I then could update safely.
Basically you:
- Have a more recent update to U-Boot, which prefers SD cards over eMMC
- Make 2 or more OS partitions on your SD card, each having "/etc/fstab" correctly mouting their own "/" root file system
- If you want to boot an off-line OS, edit the "/boot/x/x" file so reference the new OS partition
- Reboot
And there you have it. Clumsey, but doable.
A few gotchas. U-Boot may reference the OS by LABEL or GUID, (I can't remember which). So each root FS should have a unique LABEL and GUID. Next, make sure if you use LABELs or GUIDs to mount your root FS in "/etc/fstab", it references the correct partition's OS. Last, again make sure any LABELs and GUID are not used by the eMMC.
The biggest reason I do this, is for updates. Back in the bad old days before OpenZFS or BTRFS, I used 2 same sized partitions for my OS. The other non-OS files systems were elsewhere, (like "/home" or "/media"). So 25GB might be enough. Then when I wanted to update, I cloned the currently booted OS to the off line partition, with something like Rsync. Modified the copies' "/etc/fstab", and anything else needed. Changed Grub to prefer the newly copied OS. A simple reboot tested my cloned OS, which I then could update safely.
--
Arwen Evenstar
Princess of Rivendale
Arwen Evenstar
Princess of Rivendale