GRUB2: Utiliser la résolution maximale détectée?

32

Comment dire à GRUB2 de régler sa résolution (ainsi que celle transmise au noyau) sur la résolution maximale détectée au moment du démarrage ?

Mehrdad
la source
2
@severin: Non. Cela ne me dit comment mettre à une spécifique résolution que je peux trouver, pas une maximum qu'il détecte au démarrage .
Mehrdad
´vbeinfo´ vous indiquera la résolution maximale prise en charge. Ensuite, vous pouvez éditer / etc / default / grub pour utiliser cette résolution.
martin
3
@severin: Vous ne comprenez toujours pas la question! :( Je veux une détection automatique , pas une détection manuelle .
Mehrdad
2
@AmithKK: Euh, oui? J'ai des résolutions variables ...
Mehrdad

Réponses:

50

Je suppose que la raison pour laquelle vous posez cette question est que vous utilisez différents moniteurs sur la même machine Ubuntu et que vous voulez que GRUB2 soit bien sur chacun d'entre eux. Cependant, si vous êtes préoccupé par la résolution utilisée une fois Ubuntu démarré, cela ne règle pas le problème . GRUB2 ne "transmet pas au noyau" la résolution sélectionnée pour le menu de démarrage.

Modifier en /etc/default/grubtant que root. Vous voudrez peut-être sauvegarder en premier:

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

(Vous exécuterez cela dans le terminal, que vous pourrez ouvrir en appuyant sur Ctrl+ Alt+ T.)

Pour le modifier avec Gedit tel quel root:

gksu gedit /etc/default/grub

(Ou si vous utilisez Kubuntu, exécutez à la kdesudo kate /etc/default/grubplace.)

Vous recevrez beaucoup de messages dans le terminal, si vous exécutez cette commande dans le terminal plutôt qu'avec Alt+ F2. Vous remarquerez qu'ils ne disent pas qu'ils se rapportent au fichier que vous modifiez, alors c'est correct.

Vous constaterez que la partie du fichier dit quelque chose comme ceci:

# 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

Décommentez (c.-à-d. Supprimez le début #de) la ligne qui dit GRUB_GFXMODEet changez la résolution de 640x480à auto. La ligne devrait maintenant se lire:

GRUB_GFXMODE=auto

Enregistrez le fichier et quittez l'éditeur. Dans le terminal, lancez:

sudo update-grub

(Ceci doit être exécuté après chaque modification /etc/default/grub, pour appliquer les modifications.)

Maintenant, redémarrez et voyez si cela fait ce que vous voulez.

Ce n’est peut-être pas le cas (car il utilise la "plate-forme par défaut", qui n’est peut-être pas la plus haute possible). Si tel est le cas, éditez à /etc/default/grubnouveau, et cette fois modifiez la ligne afin qu'elle dise quelque chose comme:

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

Vous ne voudrez pas nécessairement utiliser exactement cette ligne. Vous devez répertorier toutes les résolutions que vous souhaitez essayer, dans l'ordre de votre choix. Les résolutions que j'ai énumérées sont les résolutions les plus standard pour les moniteurs au format 4: 3, mais les écrans larges (y compris la plupart des écrans d'ordinateurs portables) ont des facteurs de forme et des résolutions différentes. Wikipedia a une liste de résolutions communes qui peuvent vous aider. Si vous connaissez les résolutions spécifiques que vous souhaitez pour chaque périphérique, vous pouvez simplement les lister (le plus élevé en premier). Vous devriez probablement inclure 640x480ou autoà la fin. Je le recommande car je ne sais pas si GRUB2 essaiera toujours une résolution basse, si vous n'incluez pas cela.

Enregistrez à nouveau le fichier, exécutez-le à sudo update-grubnouveau, redémarrez à nouveau et voyez si cela vous convient.

Si ce n'est pas le cas, vous n'aurez peut-être pas de chance. GRUB2 n’affiche pas la vidéo de la même manière que Ubuntu une fois qu’elle est démarrée. GRUB2 utilise les extensions de BIOS VESA pour afficher le menu d’amorçage avec une résolution améliorée (et une profondeur de couleur), et la résolution maximale d’une machine par le biais de VBE n’est pas toujours aussi élevée que la résolution maximale prise en charge par la carte vidéo et le moniteur.

Source: La documentation officielle de GRUB2 . (Vous remarquerez que le numéro de version est 1.99 . C'est toujours GRUB2. Un peu déroutant, mais vrai.)

[Enfin, merci à TechZilla d' avoir signalé une grave erreur dans la version originale de cette réponse.]

Eliah Kagan
la source
+1 définitivement une solution viable, même si ce n'est pas parfait. Merci pour la réponse détaillée, c'est très bien écrit!
Mehrdad
2
Aussi, juste un FYI, GRUB_GFXMODE=autoobtient presque toujours la meilleure résolution possible via VESA. Les résolutions d'écran large VESA ne sont pas standardisées et je n'ai jamais réussi à en utiliser une de Grub2. J'ai entendu dire qu'il était possible d'utiliser une puce Intel GFX et des correctifs logiciels VESA semi-compliqués. Autant que je sache, cela n’est pas possible avec des puces non-Intel GFX. ... aussi vous devriez ajouter un +1 à mon commentaire s'il était sur la cible. : P
JM Becker
1
@ Mehrdad Donnez la prime à cette réponse. C’est aussi près que vous allez avoir AFAIK: D
Amith KK
@AmithKK: Je le ferai très probablement, bien que je pense que je vais juste attendre un peu et laisser les autres avoir la chance de lire au moins la question avant que je l'attribue haha. :)
Mehrdad
12

Il y a aussi une option d'interface graphique disponible.

Grub Customizer:

Grub Customizer permet de modifier, renommer, réorganiser ou geler les entrées Grub. Il permet également de changer les couleurs de fond du menu Grub ou d'ajouter une image personnalisée et prend également en charge la personnalisation BURG. Vous pouvez également utiliser Grub Customizer à partir d’un environnement Live CD / USB pour résoudre vos problèmes de démarrage.

Installation:

Appuyez sur Alt+ Ctrl+ Tpour ouvrir le terminal et exécuter les commandes suivantes:

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

Comment utiliser:

Une fois installé, appuyez sur Alt+ F2, tapez grub-customizeret appuyez sur Enter.

Authentifiez-vous en donnant votre mot de passe utilisateur.

Une fois ouvert, cliquez sur Preferencesdans la barre d’outils.

entrez la description de l'image ici

Sous l' Appearanceonglet Activer custom resolution, tapez autodans la zone de texte.

entrez la description de l'image ici

Alternativement, sous l' Advancedonglet, activez GRUB_GFXMODEet tapez autole champ de texte qui le précède. Vous pouvez également spécifier la résolution sous la forme d'une séquence d'un ou de plusieurs modes, séparés par des virgules (',') ou des points-virgules (';'); chacun sera essayé à tour de rôle jusqu'à en trouver un. Par exemple:

1440x900,1680x1050,1920x1200,2560x1600

Ou spécifié avec la profondeur (8, 16 ou 24):

1440x900x16,1680x1050x16,1920x1200x16,2560x1600x16

entrez la description de l'image ici

Fermez la Preferencesboîte de dialogue et cliquez sur Enregistrer dans la barre d’outils de la fenêtre principale. C'est ça!

entrez la description de l'image ici

Pour supprimer Grub Customizer, exécutez les commandes suivantes dans le terminal:

sudo apt-get autoremove --purge grub-customizer
sudo add-apt-repository -r ppa: danielrichter2007 / grub-customizer
sudo apt-get update
Basharat Sialvi
la source