Comment passez-vous les modes VGA / VESA avec GRUB2?

11

Une de mes machines a une configuration HD de 3 To pour un triple démarrage dans Mint 14 (variante Ubuntu 12.10), Slackware 14.1 et Arch Linux. Le HD est formaté à l'aide du système GPT / Guid. Le Grub2 "appartient" techniquement à l'installation de Linux Mint mais est utilisé pour tripler le démarrage des 3 systèmes. L'installation il y a environ 1 an a été une procédure extrêmement pénible et a nécessité 2 à 3 jours de lutte et de modification pour lui permettre de reconnaître les installations Slackware et Arch; il a toujours reconnu l'installation de Mint Linux facilement.

J'ai besoin de pouvoir passer les modes VGA / VESA à Slackware et Arch. J'utilise Slackware et Arch à partir de la ligne de commande et donc la résolution de la console et la taille de la police sont des facteurs importants.

Haziz
la source
Dans votre config grub sont les linux...lignes, pourquoi ne pas simplement ajouter ce dont vous avez besoin à ces lignes?
slm
@slm J'ai essayé plus tôt, avant de poster ma question, d'ajouter une vga=askentrée à la ligne de commande du fichier grub.conf pour Slackware avec et sans faire update-grub2, cela n'a toujours pas fonctionné. J'ai également perdu mon entrée pour arch avec le update-grub2mais heureusement, j'ai récupéré mon entrée pour arch car j'avais sauvegardé mon fichier grub.conf non modifié.
haziz

Réponses:

20

Dans GRUB2, la méthode préférée pour définir la résolution du tampon d'images (sur GRUB et le noyau) consiste à modifier /etc/default/grubpour contenir ces variables:

  • GRUB_GFXMODE définit la résolution de GRUB
  • GRUB_GFXPAYLOAD_LINUXcontrôle si le noyau linux gardera la résolution, et si vous voulez que le noyau linux utilise une résolution différente de GRUB, vous pouvez le définir avec cette variable sous forme widthxheight.

Pour afficher tous les modes que vous pouvez utiliser:

  • hwinfo --framebuffer dans le terminal linux
  • vbeinfo dans l'invite GRUB

Exemple de configuration de la résolution du tampon d'image

Ces lignes sont insérées pour /etc/default/grub:

GRUB_GFXMODE=1024x768x32
GRUB_GFXPAYLOAD_LINUX=keep

Afin de générer les modifications, exécutez

# grub-mkconfig -o /boot/grub/grub.cfg

Extrait du manuel GNU GRUB 2.00

‘GRUB_GFXMODE’

Définissez la résolution utilisée sur le ‘gfxterm’terminal graphique. Notez que vous ne pouvez utiliser que les modes pris en charge par votre carte graphique via les extensions VESA BIOS (VBE). Par exemple, les résolutions natives du panneau LCD peuvent ne pas être disponibles. La valeur par défaut est ‘auto’, qui essaie de sélectionner une résolution préférée. Voir gfxmode .

‘GRUB_GFXPAYLOAD_LINUX’

Définissez pour ‘text’forcer le noyau Linux à démarrer en mode texte normal, ‘keep’pour conserver le mode graphique défini à l'aide de ‘GRUB_GFXMODE’, ‘widthxheight’[ ‘xdepth’] pour définir un mode graphique particulier, ou une séquence de ceux-ci séparés par des virgules ou des points-virgules pour essayer plusieurs modes en séquence. Voir gfxpayload .

Selon votre noyau, votre distribution, votre carte graphique et la phase de la lune, notez que l'utilisation de cette option peut entraîner des problèmes d'affichage pour GNU / Linux, en particulier au début de la séquence de démarrage. Si vous rencontrez des problèmes, définissez cette option sur ‘text’et GRUB indiquera à Linux de démarrer en mode texte normal.

Les références

Risto Salminen
la source
Il semble qu'au lieu d'exécuter grub-mkconfig, il est recommandé d'exécuter update-grub (qui exécute grub-mkconfig).
Par Lindberg
Je n'ai pas update-grub ou update-grub2 sur mon installation de Fedora Server 26. Au lieu de cela, je cours sudo grub2-mkconfig -o $(sudo find /boot -name grub.cfg). Une commande pour les systèmes EFI et non EFI.
Robpol86
2

Dans grub hérité, nous avions l'habitude de passer le mode VGA / VESA dans la ligne du noyau comme VGA=1024x768 dans grub2, la même chose peut être obtenue par lignegfxpayload=1024x768

Suivez plus d'informations ici

SHW
la source