Io ho Linux su un HD esterno e funziona in questo modo:
Se accendi il computer lui carica Windows o un altro OS installato su una porta SATA o IDE. Linux lo devi scegliere manutalmente con il tasto F8 o F2 o un tasto del tuo bios UEFI.
Confermo che anche a me succede questo, però ti dico la verità: non mi torna molto.
Breve ricapitolazione di quanto ho capito finora sul bootstrap di un PC (correggete se sbaglio):
Appena accendiamo il PC, viene eseguito il FW di avvio, BIOS oppure UEFI. Tale FW viene eseguito non da tutte e 4 le CPU del mio Intel i5, bensì soltanto da una di queste 4 CPU, ovvero dalla CPU “BSP”, ossia dal BootStrap (BS) Processor (P), le altre 3 CPUs invece non vengono coinvolte in questa fase iniziale, queste 3 CPUs momentaneamente sono inattive e vengono identificate come le "AP," ovvero Application Processors.
Con i BIOS funziona così (con UEFI?), solo una CPU “BSP” esegue appunto il BIOS, il sotto-programma di POST ecc … le altre CPU “AP” subentrano solo quando viene caricato il kernel di un OS, quindi alle battute finali (non ho ancora capito come viene scelta una CPU, fra le 4 disponibili nel mio Intel i5, in qualità di BSP: quale criterio viene seguito affinchè si possa dire che la CPU 1 è la “BSP” mentre le CPU 2,3,4 sono “AP”?? Online ho letto che la BSP, fra le 4 CPU di un quad-core, viene scelta “dinamicamente” … esattamente avete idea di come funzioni la cosa?).
Ad ogni modo, torniamo sui binari …
La CPU “BSP” esegue il BIOS, per cui viene eseguita prima l’inizializzazione minimale dell’HW, poi il POST, quindi il self-test di base dell’HW appena inizializzato: credo che una delle prime cose che dovrebbero essere inizializzate è il chip di RAM (es: DDR3), poiché se questo chip supera anche la fase di POST, allora la parte rimanente di BIOS/UEFI ancora non indirizzata/eseguita dalla BSP può essere copiata dal chip di ROM/Flash, in cui risiede tale FW, al chip di RAM appunto, quindi le fasi finali del BIOS/UEFI potrebbero essere indirizzate ed eseguite in RAM (come avviene per un normale programma).
Ovviamente il BIOS/UEFI viene eseguito in modalità "real-mode", quindi spazio di indirizzamento lineare, non segmentato, niente paging, quindi niente MMU: accesso diretto/semplice alla flash/ram (nel BIOS dovremmo avere lo spazio di indirizzamento su 20 bits, quindi 1MB di range spaziabile ... con UEFI forse no? ... non so).
Una volta che il POST è superato per tutto l’HW della scheda madre del PC, quindi una volta che anche le porte come la IDE, la PATA, la SATA, le porte USB … sottolineo “tutto l’HW”, tutte le interfacce sono state configurate e testate dal POST, a questo punto il BIOS/UEFI dovrebbe fare uno scanning di tutte le interfacce per memorie di massa, per valutare se esiste un supporto di memorizzazione di massa che contenga almeno una partizione/volume bootable.
L’ordine di tale scansione dovrebbe seguire l’ordinamento, in base alle priorità, imposto da me, quando sono entrato del BIOS/UEFI l’ultima volta (ho acceduto a UEFI, ho settato queste priorità, ed ho salvato). Io ho impostato le priorità in modo che prima ci siano pennette flash e HDD via USB, poi dischi ottici CD/DVD, e come minimo livello di priorità ho messo la voce “OS boot manager IDE/SATA HDD”.
Quindi il BIOS/UEFI dovrebbe seguire questo ordine di scanning, vedere che esiste un HDD esterno su una porta USB, e a quel punto UEFI dovrebbe valutare la partizione di sistema EFI (FAT32) presente in questo disco, eseguirne il bootloader-code e leggerne la tabella GPT, la quale rimanderebbe alle partizioni di home (ext4), root (ext4) e swap (swap) che ho creato per installare manualmente Lubuntu su questo HDD esterno.
Invece il disco esterno USB viene ignorato ed il check da parte di UEFI arriva subito alla porta SATA, sulla quale ho un disco interno, con tanto di sua partizione di sistema EFI, sua GPT, e sua partizione di avvio C: nella quale ho Win10, e si avvia Win10.
Il mio dubbio è che ci sia, a questo punto, un problema nel POST del bios F.21 by Insyde: può darsi che la routine di POST inizializzi solo di base, diciamo in modo “non completo”, le porte USB del PC, quindi a fine POST, quando il BIOS/UEFI scansione le interfacce per vedere se c’è un disco avviabile, non riesce a vedere il disco esterno via USB, quindi lo scanning ricade sulla porta SATA, che invece è a posto, da cui l’avvio di Win10 … può essere?