-
Notifications
You must be signed in to change notification settings - Fork 433
PARTUUIDs #514
Comments
Hex. Are they written as decimal somewhere? |
Everything is HEX: in installed_os.json, cmdline.txt and /etc/fstab of each OS. Here is what I think is happening: |
Ah, the above is not quite right, but I found the bug. PINN is actually booting partition 10 and is rejecting any hex partition numbers because of: It works ok for /dev/mmsblk0p10 because it's decimal, but no provision is made for the those last 2 digits being hexadecimal in the case of PARTUUID. Edit: I can't believe no-one else has spotted this yet. Is no-one running more than 2 OSes on a USB drive? |
Ah, Now I remember - it's my mistake, partly. See procount/pinn#150 When storing OSes on USB, NOOBS uses PARTUUIDs to avoid the device changing name. But it still stores the references in os_installed.json as /dev/sdaX. I changed this in PINN to PARTUUIDS for the cases where the USB device had changed device name. But I haven't changed the code in bootselectiondialog to accommodate this change. So NOOBS won't have this problem, but it will have the original problem. So I guess it's down to me to fix it..... Once done, are you interested in a PR that will fix both issues in NOOBS? |
That's better! Fixed now. |
Yeah, I think a PR for this would be much appreciated. |
Ok, I'll backport it |
I already created PR #497 for the original change a long time ago, so I've just pushed up the bugfix to it. |
I just booted PINN from USB and installed 6 OSes on the USB stick for testing.
The first 2 booted nicely (on partitions 6/7 & 8/9)
The next 3 failed with an unknown PARTUUID (10/11, 12/13, 14/15)
The next 1 booted (16/17), but it booted the rootfs on partition 11 !
Do you see a pattern here? Maybe if you convert those partition numbers to HEX, like the PARTTUUIDs are created, it will become clearer.
So my question is, should the partition number part of the PARTUUID be HEX (like it is created in NOOBS) or DECIMAL?
I haven't tested NOOBS, but I'm using the same code so I expect it will be the same problem. Or has something changed somewhere, because I don't remember this problem occurring before.
The text was updated successfully, but these errors were encountered: