procount / pinn-os

os-images for PINN

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Why is Kali (64x) listed as usb boot not supported

newrecycle opened this issue · comments

As title states, I know usb boot is possible with kali on the RPI4, I am just wondering what is stopping PINN from allowing usb boot with this OS?

Edit: I am trying to run PINN off of only a usb device, as I have multiple boot devices for different purposes, using a USB 3.0 usb drive while also needing to have a micro sd for kali kind of defeats the purpose

I have a similar question. The same thing also occurs in lineageOS. I haven't tried booting from USB though. Maybe it will work, who knows?

PINN can boot from SD card, or USB.
An OS must boot from the same drive where PINN is installed.
In general, any additional partitions can be installed to the SD card or USB.
The reason some can't is partly historical and partly due to the OS.

When PINN installs an OS, the OS is located onto different partitions than it expects. Therefore PINN has to fix up any references to partitions so the OS can find them.
In the beginning, all OS partitions were stored on the SD card only, so partitions were referenced using /dev/mmcblk0pX. PINN only needed to change the 'X' to a different partition number and all was good.
To store a partition on the USB drive, the reference needed to change, typically to /dev/sdaX.
But if there were more than one USB memory drive, the kernel could assign their device names (/dev/sda, /dev/sdb etc) in any order, so this method of reference was not suitable. NOOBS (and hence PINN) chose to use partuuid references instead. Not all OSes could cope with such a reference, so a way to exclude those from being stored on USB was needed. This was indicated in the os meta-files.

When USB booting became possible, OSes needed updated firmware to support it. Not all did, so a way to exclude those from being installed onto something it didn't support was needed. Again this was indicated in the OS meta-files.

There are also other ways to reference a partition, eg.. by UUID or label. Some OSes require specific labels which is a problem with PINN as it prevents installing 2 copies of the same OS on the same system.

It could be that OSes have been updated to overcome their previous limitations, but the OS meta-files have not. In this case they just need verifying and their meta-files updated accordingly.

Thank you. Great explanation