OP chiede "senza toccare la mia installazione di Ubuntu esistente". Se vuoi avviare dal tuo dispositivo esterno, non solo installare Ubuntu su di esso, devi aggirare un bug del programma di installazione che riscrive la tua partizione di avvio sul tuo disco interno e non installa una partizione di avvio EFI sul tuo dispositivo esterno, non importa quale dici all'installatore.
Ecco cosa funziona per me in Ubuntu 18.04, 18.10 e 19.04. Testato su Thinkpad T480 e P50, doppio avvio Win 10 e Ubuntu. Ho disattivato l'avvio legacy. UEFI è in uso al 100%. Ho installato Ubuntu e il caricatore di avvio su chiavette USB e unità almeno sei volte usando la mia soluzione.
L'installazione su un secondo disco è una seccatura perché il programma di installazione di Ubuntu utilizza la prima partizione EFI che vede, che è quella sul disco rigido interno, indipendentemente da qualsiasi tentativo tu faccia di specificare un percorso alternativo per la partizione EFI. Pertanto, quando si tenta di impostare il dispositivo di bootload sull'unità USB di destinazione, si viene ignorati. È un bug abbastanza vecchio, ma mentre entriamo nella versione 19.04, ancora presente.
https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1396379
Riepilogo: per aggirare il problema, disabilitare la partizione EFI interna utilizzando gparted per modificare i relativi flag immediatamente prima di iniziare l'installazione. Quindi il programma di installazione non lo troverà e il bug non verrà attivato. Successivamente, riattiva i flag. Questo è un passo banale. È quasi l'equivalente logico di scollegare fisicamente l'unità interna, che sicuramente funziona anche con il bug del programma di installazione.
I passi che ho preso:
Prima di iniziare l'installazione:
è necessario disporre di un dispositivo USB live Ubuntu standard e di un'unità di destinazione su cui installare.
Avvia in Ubuntu live USB in modalità "prova prima".
Usando gparted (potrebbe essere necessario installarlo prima, a volte Ubuntu non lo include sul disco live, sebbene sia incluso in 18.04.1): ...
- ripartizionare l'unità esterna di destinazione con una tabella delle partizioni GPT.
Crea una partizione da 500 MB FAT32. È inoltre possibile impostare le partizioni desiderate per l'installazione di Ubuntu. Potresti trovare utile etichettare la partizione / desiderata perché al momento dell'installazione avrai tre unità: l'unità interna, l'unità del programma di installazione delle immagini live e l'unità di destinazione.
Dopo aver applicato quegli aggiornamenti, cambia i flag sulla piccola partizione da 500 MB appena creata. Fare clic con il tasto destro sulla piccola partizione e Gestisci bandiere. Queste modifiche vengono immediatamente attivate (ma si noti che è necessario creare prima la partizione completando il passaggio precedente) Selezionare per attivare l'avvio, esp e nascosto.
Installare
Hai eseguito l'avvio con un'immagine USB del disco live, come in una normale installazione di Ubuntu. Quindi hai due dispositivi USB: il tuo dispositivo di destinazione e l'unità USB del disco live.
Modifica i flag di partizione EFI sull'unità interna e deseleziona gli stessi tre flag impostati sulla partizione EFI del dispositivo di destinazione.
Ecco un breve video che modifica la bandiera in gparted: https://youtu.be/sdgrmylH6pc
Ora, quando si installa, il programma di installazione vedrà solo una partizione EFI sul dispositivo di destinazione. Questo è il nuovo passo che non ho visto documentato altrove.
Inizia un'installazione di Ubuntu. Procedere fino a quando non viene visualizzata la scheda di configurazione del disco del programma di installazione. Volete ovviamente l'approccio completamente manuale, "Qualcos'altro" sul palco del partizionamento.
Se l'unità di destinazione è montata come sdc e la partizione EFI creata è sdc1, il caricatore di avvio verrà installato sul dispositivo sdc e la partizione EFI sarà sdc1.
Scorri per trovare quella partizione. Dovrebbe essere indicato "efi" nella colonna Tipo. Fare clic su "modifica" per essere sicuri: il programma di installazione dovrebbe dire "Usa come: partizione di sistema EFI". Non cambierai nulla. Non è necessario formattarlo.
Mentre scorri le partizioni, rivedi la colonna Tipo. Non ci dovrebbero essere partizioni EFI sull'unità interna, poiché sono stati disattivati i flag di partizione sulla partizione EFI dell'unità interna. Naturalmente, la partizione viene comunque visualizzata come partizione FAT32. Va bene.
Vedrai anche la partizione EFI del disco live da cui hai eseguito l'avvio per eseguire l'installazione, va bene.
Montare la partizione di destinazione desiderata per / (sdc2, forse) ed eseguire un'installazione normale.
Dopo l'installazione
Ripristina flag sulla partizione EFI interna
Dopo l'installazione, riavviare la nuova installazione. Sarà necessario utilizzare l'opzione "seleziona dispositivo di avvio" del BIOS. Sul mio Thinkpad, F12 è il collegamento a questa parte del menu BIOS.
Dovresti vedere diverse opzioni nel menu di avvio e una di queste è l'unità esterna. Alcuni menu di BIOS mostrano l'etichetta predefinita come 'Ubuntu', quindi è un po 'confuso vederlo più di una volta. A volte la modifica del dispositivo di avvio provoca il riavvio del BIOS (lo fa sul mio Thinkpad), sembra che sia successo qualcosa di brutto, ma va bene.
Successivamente, quando si avvia senza chiavetta USB, il BIOS dovrebbe essere abbastanza intelligente da ripristinare l'ultimo dispositivo EFI noto (il dispositivo interno), ma potrebbe essere necessario riselezionare manualmente una scelta di avvio EFI.
Suggerimento: rietichettare nuovamente la voce di avvio USB per evitare duplicati di voci 'ubuntu'
Se ottieni opzioni di avvio EFI duplicate etichettate ubuntu, puoi risolverlo. Rietichettare le opzioni del menu EFI è molto utile, ma un po 'complicato.
Assicurati di avviare l'installazione sull'unità esterna, quindi
sudo efibootmgr -v
Si è avviato dalla prima riga dell'elenco.
Nota il nome del file utilizzato per l'avvio e notare il numero della partizione. il mio output per la prima voce è:
HD(1,GPT,...) .... File(\EFI\ubuntu\shimx64.efi)
e poi dai un'occhiata a questa discussione: https://www.kubuntuforums.net/showthread.php/68851-Labels-on-UEFI-Boot-Entries-using-efibootmgr-L
Ho fatto questo per rietichettare il mio 'owcUbuntu':
efibootmgr -c -d /dev/sdb -p 1 -L owcUbuntu -l \\EFI\\ubuntu\\shimx64.efi
sapendo che l'unità di avvio è sdb e da quando ho creato prima la partizione EFI, il valore dell'argomento -p è 1. Nota: controlla qual è il tuo disco di avvio effettivo :) usa gparted o df
Alcune cose "strane". Fatto bene, questo processo non toccherà il tuo boot loader esistente sul tuo disco interno. Tuttavia, quando l'unità esterna è collegata e viene avviata normalmente dall'unità interna, i programmi di aggiornamento di grub rileveranno l'installazione di Ubuntu sull'unità esterna e la aggiungeranno all'elenco delle opzioni di avvio. Questo può creare un po 'di confusione, ma è utile rietichettare nuovamente la voce di avvio (sopra)