Domanda di risposta: rimuovere più elementi di avvio?


11

Ho appena installato Ubuntu su un'unità separata (non partizionata con nessun altro sistema operativo), così come rEFInd, sul mio Mac Pro. Sono riuscito a fare in modo che tutto si avvii correttamente e posso avviare qualsiasi posizione da rEFInd senza problemi. Il problema è che ho 3 elementi aggiuntivi caricati sul boot manager di cui vorrei liberarmi. Ho cercato risposte e ancora niente sembra funzionare. Oltre al mio OS X, Windows 7 e Ubuntu Grubx64 (qualunque cosa significhi), ho i seguenti elementi:

boot \ vmlinuz-3.11.0-18-generic.efi.signed
boot \ vmlinuz-3.11.0-15-generic.efi.signed
Boot Legacy OS da tutto il volume del disco

Continuo a vedere la gente dire "beh prova questo" e danno semplicemente il metodo senza dare le indicazioni su come farlo realmente. Qualcuno può darmi solo una semplice serie di indicazioni su come nasconderle?

Risposte:


7

Esistono diversi modi per fare ciò che vuoi, ma prima di tutto devi capire che hai tre (o forse quattro) voci che avviano Ubuntu in diversi modi:

  • La grubx64.efivoce avvia GRUB, che a sua volta avvia il kernel Linux (e può anche offrire un proprio menu per l'avvio di altre cose, a seconda di come è configurato).
  • La boot\vmlinuz-3.11.0-18-generic.efi.signedvoce avvia il kernel 3.11.0-18-generico senza usare GRUB. (Si avvia tramite il caricatore di stub EFI , che è integrato nel kernel stesso.)
  • La boot\vmlinuz-3.11.0-15-generic.efi.signedvoce lancia il kernel 3.11.0-15-generico - un kernel leggermente più vecchio di quello precedente.
  • L'opzione "Boot Legacy OS ..." potrebbe lanciare una versione di GRUB in modalità BIOS - non descrivi cosa succede quando selezioni quell'opzione, quindi non è molto chiaro se lo fa o è utile.

In ogni caso, la grande distinzione qui è tra GRUB e il caricatore di stub EFI. Nella maggior parte dei casi, entrambi gli approcci all'avvio di Linux funzionano ugualmente bene, ma a volte uno funziona meglio dell'altro. Personalmente, non mi piace GRUB; IMHO è gonfio e inutilmente complesso. È anche un ulteriore passaggio nel percorso di avvio, dato che probabilmente hai bisogno di rEFInd per gestire il tuo triplo avvio su un Mac. OTOH, GRUB è il modo standard di avviare Ubuntu. Nota che, sebbene GRUB abbia solo una voce in rEFInd, il suo menu (se lo imposti per apparire) probabilmente ti permetterà di avviare uno dei due kernel Linux che rEFInd ti consente di avviare direttamente.

Personalmente, terrei tutte e tre le voci (GRUB e i due kernel), almeno se funzionano tutte. Il motivo è che ti danno più opzioni per avviare il tuo computer; se uno fallisce, avrai gli altri come fallback. Si noti che è probabile che la selezione del kernel aumenti quando si aggiorna il sistema e vengono rilasciati nuovi kernel. È possibile mantenere l'elenco a due o tre utilizzando sudo apt-get autoremoveuna volta che l'elenco supera tale limite.

Se vuoi rimuovere le voci, hai diverse opzioni, la maggior parte delle quali coinvolgono l'editing refind.conf(che è probabilmente in /boot/efi/EFI/refindLinux):

  • Aggiungi il nome del file (s) che si desidera evitare la scansione dont_scan_files. Notare che nascondere i singoli kernel in questo modo è inefficiente, poiché sarà necessario aggiornare l'elenco quando vengono installati nuovi kernel. Questo potrebbe essere un buon modo per nascondere GRUB, però.
  • Aggiungi la / le directory in cui sono descritti i boot loader indesiderati dont_scan_dirs. (Ad esempio, bootper rimuovere i kernel Linux o EFI/ubuntuper rimuovere GRUB.)
  • Aggiungere i nomi dei volumi associati ai caricatori di avvio indesiderati a dont_scan_volumes. Si noti che questa è l'unica dont_scan_*opzione che funziona con le opzioni di avvio BIOS / CSM / legacy; aggiungere qualsiasi sottoinsieme del nome pertinente per bloccare quella voce.
  • Per disattivare tutte le opzioni di boot del BIOS / CSM / legacy basate su disco, rimuovere il commento scanfore garantire che hdbiosè non è tra le opzioni. Questo è probabilmente indesiderato nel tuo caso, tuttavia, poiché dici che stai avviando Windows 7 e che di solito si avvia in modalità BIOS / CSM / legacy. Se sei riuscito a installare Windows in modalità EFI, questa potrebbe essere una buona opzione.
  • Per rimuovere sia le opzioni del kernel, sia tutte le future opzioni del kernel, è possibile rimuovere il driver del filesystem EFI per il proprio filesystem Linux dalla sottodirectory drivers( drivers_x64o drivers_ia32, a seconda della propria architettura) della EFI/refinddirectory sul proprio ESP. Questo renderà rEFInd incapace di localizzare i kernel Linux, quindi quelle opzioni scompariranno. GRUB non si basa su questi driver, quindi continuerà a funzionare.
  • Le opzioni BIOS / CSM / legacy vengono visualizzate solo quando rEFInd ritiene che sia stato rilevato il codice di avvio sull'MBR di un disco o in una partizione. Data la descrizione dell'opzione "Boot Legacy OS ...", rEFInd ha probabilmente trovato il codice di avvio nell'MBR. (Tuttavia, in alcune versioni recenti di rEFInd i bug causano errori di identificazione della posizione, quindi, se non si utilizza la versione 0.8.7, tale identificazione potrebbe essere errata.) La cancellazione del codice di avvio può quindi rimuovere una voce dal menu di rEFInd. Questo approccio è PERICOLOSO, però. Vi consiglio di provare solo se si è già capito come fare, ed è per questo che sto volutamente non fornendo istruzioni esplicite farlo - Potrei scrivere un intero risposta su come fare questo compito e sarebbe probabilmente ancora incompleta.

Le refind.confopzioni sono descritte più dettagliatamente nei commenti all'interno refind.confe nella pagina della documentazione di configurazione di rEFInd.


Praticamente dalla directory di avvio sono stato in grado di spostare i kernel indesiderati nella nuova directory, che li ha rimossi in modo sicuro dalla schermata del boot manager. In caso di problemi futuri, posso estrarre le altre unità del mio sistema operativo, il che causerà un bypass al boot manager e avvierà direttamente Ubuntu. Ora si tratta solo di capire il "Boot Legacy OS", che risulta semplicemente avviare il boot camp e portarmi anche su Windows 7. Grazie per il vostro aiuto in merito. È un'esperienza di apprendimento piuttosto divertente
whitecrow1

1
NON dovresti spostare i tuoi file del kernel! GRUB fa affidamento sul fatto che sono anche loro! Potresti cavartela in determinate circostanze, ma nella migliore delle ipotesi è un'azione molto rischiosa da intraprendere!
Rod Smith,

0

Easy Fix

Nel menu di avvio del bootloader , puoi nascondere le voci in eccesso selezionando le voci extra con i tasti freccia sulla tastiera e quindi premendo il tasto Elimina ! Apparirà una conferma ... selezionando Sì, la voce viene nascosta e il tuo bootloader è pronto!

Saluti!


1
Curiosità: l'altra risposta è stata scritta dallo sviluppatore di rEFind.
Marmo organico il

Chiedigli se sbaglio, perché ho risolto il mio problema con questa soluzione.
Soujatya Sarkar,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.