GRUB2: utilizzare la massima risoluzione rilevata?


32

Come posso dire a GRUB2 di impostare la sua risoluzione (e anche quella passata al kernel) su quella massima che può rilevare al momento dell'avvio ?



2
@severin: No, non lo fa. Che mi dice solo come impostarlo ad una specifica risoluzione che io riesco a trovare, non il massimo che rileva al momento del boot .
Mehrdad,

'Vbeinfo' ti dirà la massima risoluzione supportata. Quindi puoi modificare / etc / default / grub per usare quella risoluzione.
martin,

3
@severin: Non stai ancora capendo la domanda !! :( Voglio il rilevamento automatico , non il rilevamento manuale .
Mehrdad,

2
@AmithKK: Uh, sì? Ho risoluzioni variabili ...
Mehrdad,

Risposte:


50

Presumo che il motivo per cui ti stai chiedendo questo sia che usi diversi monitor sulla stessa macchina Ubuntu e vuoi che GRUB2 abbia un bell'aspetto su tutti loro. Tuttavia, se sei preoccupato per la risoluzione utilizzata all'avvio di Ubuntu, questo non risolve il problema . GRUB2 non "passa al kernel" la risoluzione selezionata per il menu di avvio.

Modifica /etc/default/grubcome root. Potrebbe essere necessario eseguire prima il backup:

sudo cp /etc/default/grub /etc/default/grub.old

(Lo avresti eseguito nel Terminale, che puoi aprire premendo Ctrl+ Alt+ T.)

Per modificarlo con Gedit come rootesegui:

gksu gedit /etc/default/grub

(O se stai usando Kubuntu, esegui kdesudo kate /etc/default/grubinvece.)

Riceverai molti messaggi nel Terminale, se esegui quel comando nel Terminale anziché con Alt+ F2. Noterai che non dicono che appartengono al file che stai modificando, quindi va bene.

Scoprirai che parte del file dice qualcosa del genere:

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

Rimuovere il commento (vale a dire, togliere la porta #dal) la riga che dice GRUB_GFXMODE, e cambiare la risoluzione da 640x480a auto. La riga dovrebbe ora leggere:

GRUB_GFXMODE=auto

Salvare il file e chiudere l'editor. Nel Terminale, esegui:

sudo update-grub

(Questo deve essere eseguito dopo ogni modifica a /etc/default/grub, per applicare le modifiche.)

Ora riavvia e vedi se fa quello che vuoi.

Potrebbe non (in quanto utilizza il "valore predefinito della piattaforma" che potrebbe non essere il più alto possibile). In tal caso, modifica di /etc/default/grubnuovo e questa volta cambia la riga in modo che dica qualcosa di simile:

GRUB_GFXMODE=1600x1200,1280x1024,1024x768,800x600,640x480

Non vorrai necessariamente usare esattamente quella linea. Dovresti elencare tutte le risoluzioni che vuoi provare, nell'ordine in cui vuoi che vengano provate. Le risoluzioni che ho elencato sono le risoluzioni più standard per monitor con proporzioni 4: 3, ma i monitor widescreen (compresa la maggior parte degli schermi dei laptop in questi giorni) hanno diversi fattori di forma e usano risoluzioni diverse. Wikipedia ha un elenco di risoluzioni comuni che possono aiutarti. Se conosci le risoluzioni specifiche che desideri per ciascun dispositivo, puoi semplicemente elencarle (prima le più alte). Probabilmente dovresti includere 640x480o autoalla fine. Lo consiglio perché non so se GRUB2 proverà sempre una bassa risoluzione sicura, se non lo includi.

Quindi salvare di nuovo il file, eseguirlo di sudo update-grubnuovo, riavviare di nuovo e vedere se fa quello che ti serve.

In caso contrario, potresti essere sfortunato. GRUB2 non visualizza i video allo stesso modo di Ubuntu dopo l'avvio. GRUB2 utilizza le estensioni BIOS VESA per visualizzare il menu di avvio con risoluzione (e profondità del colore) migliorate, e la massima risoluzione di una macchina tramite VBE non è sempre alta quanto la massima risoluzione supportata dalla scheda video e dal monitor.

Fonte: la documentazione ufficiale di GRUB2 . (Noterai che il numero di versione è 1.99 . È ancora GRUB2. Un po 'confuso, ma vero.)

[Infine, grazie a TechZilla per aver segnalato un grave errore nella versione originale di questa risposta.]


+1 sicuramente una soluzione praticabile, anche se non è perfetta. Grazie per la risposta dettagliata, è molto ben scritto!
Mehrdad,

2
Anche solo una FYI, GRUB_GFXMODE=autoquasi sempre ottiene la migliore risoluzione possibile tramite VESA. Le risoluzioni widescreen VESA non sono standardizzate e non sono mai stato in grado di farlo funzionare da Grub2. Ho sentito che è possibile, se si utilizza un chip Intel GFX e alcuni soft-patching VESA semi-complicati. AFAIK questo non è possibile con chip GFX non Intel. ... inoltre dovresti aggiungere un +1 al mio commento se fosse sul target. : P
JM Becker,

1
@Mehrdad Dai la grazia a questa risposta. Questo è il più vicino possibile per ottenere AFAIK: D
Amith KK,

@AmithKK: Molto probabilmente lo farò, anche se penso che aspetterò un po 'e lascerò che altre persone abbiano la possibilità di leggere almeno la domanda prima di assegnarla ahah. :)
Mehrdad,

12

C'è anche un'opzione GUI disponibile.

Grub Customizer:

Grub Customizer consente di modificare, rinominare, riordinare o bloccare le voci di Grub. Consente inoltre di modificare i colori di sfondo del menu Grub o aggiungere un'immagine personalizzata e supporta anche la personalizzazione di BURG. È inoltre possibile utilizzare Grub Customizer da un ambiente Live CD / USB per risolvere i problemi di avvio.

Installazione:

Premi Alt+ Ctrl+ Tper aprire il terminale ed eseguire i seguenti comandi:

sudo add-apt-repository ppa: danielrichter2007 / grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

Come usare:

Una volta installato, premi Alt+ F2, digita grub-customizere premi Enter.

Autenticare fornendo la password dell'utente.

Una volta aperto, fai clic su Preferencesnella barra degli strumenti.

inserisci qui la descrizione dell'immagine

In Appearancescheda abilita custom resolutione digita autola casella di testo.

inserisci qui la descrizione dell'immagine

In alternativa, Advancedabilita la scheda GRUB_GFXMODEe digita autoil campo di testo di fronte. Puoi anche specificare la risoluzione come una sequenza di una o più modalità, separate da virgole (',') o punto e virgola (';'); ognuno verrà provato a sua volta fino a quando non ne verrà trovato uno. Per esempio:

1440x900,1680x1050,1920x1200,2560x1600

O specificato con profondità (8, 16 o 24):

1440x900x16,1680x1050x16,1920x1200x16,2560x1600x16

inserisci qui la descrizione dell'immagine

Chiudi la Preferencesfinestra di dialogo e fai clic su Salva sulla barra degli strumenti della finestra principale. Questo è tutto!

inserisci qui la descrizione dell'immagine

Per rimuovere Grub Customizer eseguire i seguenti comandi nel terminale:

sudo apt-get autoremove --purge grub-customizer
sudo add-apt-repository -r ppa: danielrichter2007 / grub-customizer
sudo apt-get update
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.