Warum verwendet Grub2 keine benutzerdefinierte Auflösung?

8

Ich hoffe, jemand kann mir dabei helfen ... Ubuntu 12.10 GNOME Remix ausführen

Ich versuche, Grub2 dazu zu bringen, eine Auflösung von 1600x900 zu verwenden ...

Ich habe vbeinfo und hwinfo --framebuffer überprüft, die beide Folgendes bieten:

Modus 0x037f: 1600x900 (+6400), 24 Bit

Diese Lösung hat bei früheren Installationen von Ubuntu und Fedora funktioniert.


Warum wird es nicht wirksam? Ich habe verschiedene Auflösungen ausprobiert ... Hintergründe und Schriftfarben können geändert werden.

Vielen Dank für Ihren Einblick.

Beanaroo
quelle
Was ist deine Grafikkarte? Das klingt nach einem Fehler und vielleicht möchten die Grub-Leute Ihren Fehlerbericht ... gnu.org/software/grub/manual/grub.html#Reporting-bugs
fossfreedom
Ich habe mich gefragt, ob es vielleicht ein HW-Problem sein könnte, aber um ehrlich zu sein, ich habe keine Ahnung, wie ich es überprüfen / debuggen soll. Es ist ein GT630M, der im ahem Optimus-Modus läuft ...
beanaroo

Antworten:

3

Versuchen Sie beim Einstellen des Modus, auch die Bittiefe in Folgendes /etc/default/grubeinzubeziehen: z.

GRUB_GFXMODE=1600x900x24

Fügen Sie auch diese Zeile hinzu:

GRUB_GFXPAYLOAD_LINUX=keep

Führen Sie es aus sudo update-grub, starten Sie es neu und lassen Sie uns wissen, ob es funktioniert hat.

Phoibos
quelle
Das hat leider nicht funktioniert. Es zwang mein GDM auch in den Low-Graphics-Modus. Vielen Dank für Ihre Antwort, Phoibos!
Beanaroo
2

Ich denke, GRUB_GFXMODEwird ignoriert (oder zumindest war es irgendwann vor). Sie können immer den traditionellen Weg mit VGA-Code versuchen

  1. Zuerst installieren Sie hwinfo:

    sudo apt-get installiere hwinfo

  2. Dann erhalten Sie den vgacode mit hwinfo(bevorzugte Auflösung, 24 Bit):

    sudo hwinfo --framebuffer

    02: Keine 00.0: 11001 VESA-Framebuffer
    [Erstellt am BIOS.464]
    Eindeutige ID: rdCR.ku_DuSHewh1
    Hardwareklasse: Framebuffer
    Modell: "Intel (R) Sandybridge Mobile Graphics Controller"
    Anbieter: "Intel Corporation"
    Gerät: SubVendor "Intel (R) Sandybridge Mobile Graphics Controller"
    : "Intel (R) Sandybridge Mobile Graphics Chipsatz beschleunigtes VGA-BIOS"
    SubDevice:
    Revision: "Hardware Version 0.0"
    Speichergröße: 63 MB + 960 kB
    Speicherbereich: 0xd0000000-0xd3feffff (rw )
    Modus 0x0360: 1366x768 (+1408), 8-Bit-
    Modus 0x0361: 1366x768 (+2752), 16-Bit-
    Modus 0x0362: 1366x768 (+5504), 24 Bit
    Modus 0x0363: 1600x900 (+1600), 8-Bit-
    Modus 0x0364: 1600x900 (+3200), 16-Bit-
    Modus 0x0365 : 1600x900 (+6400), 24-Bit-
    Modus 0x0366: 1920x1080 (+1920), 8-Bit-
    Modus 0x0367: 1920x1080 (+ 3840), 16-Bit-
    Modus 0x0368: 1920x1080 (+7680), 24-Bit-
    Modus 0x0307: 1280x1024 (+1280), 8-Bit-
    Modus 0x031a: 1280x1024 (+2560), 16-Bit-
    Modus 0x031b: 1280x1024 (+5120), 24-Bit-
    Modus 0x0305: 1024x768 (+1024), 8-Bit-
    Modus 0x0317: 1024x768 (+2048), 16-Bit-
    Modus 0x0318: 1024x768 (+4096), 24-Bit-
    Modus 0x0312: 640x480 (+2560), 24-Bit-
    Modus 0x0314: 800x600 (+1600) ), 16 Bit
    Modus 0x0315: 800x600 (+3200), 24 Bit
    Modus 0x0301: 640x480 (+640), 8 Bit
    Modus 0x0303: 800x600 (+832), 8 Bit
    Modus 0x0311: 640x480 (+1280), 16 Bit
    Konfigurationsstatus: cfg = neu, verfügbar = ja, Bedarf = nein, aktiv = Unbekannt

  3. Sie bearbeiten eine Zeile in Ihrem /etc/default/grub(oder verwenden Sie nur grub-customizer), um Folgendes einzuschließen, vga=0x0365oder vga=891(0x365 ist 869):

    sudo gedit / etc / default / grub

    ...
    GRUB_CMDLINE_LINUX_DEFAULT = "quiet splash vga = 891"
    ...

  4. Sie aktualisieren die Grub-Konfiguration:

    sudo update-grub

  5. Starten Sie neu und lassen Sie uns wissen, was passiert ist

Nick Andrik
quelle
danke für die interessante technik ... leider keine änderung. Versuchte alle möglichen Auflösungen. gelistet von meinem hwinfo
beanaroo
0

Habe gerade das gleiche Problem für mich gelöst. Hier was ich getan habe:

Deaktivierte den vorherigen Framebuffer (war vga16fb für mich) und aktivierte uvesafb:

/etc/modprobe.d/blacklist-framebuffer.conf:

...
blacklist vga16fb

Mit dem lsmod | grep fbBefehl können Sie herausfinden, welcher Framebuffer derzeit verwendet wird .

/etc/modprobe.d/framebuffer.conf:

options uvesafb mode_option=1680x1050-24 mtrr=3 scroll=ywrap

/ etc / modules:

...
uvesafb

Der nächste Schritt besteht darin, uvesafb in das initrd-Image einzufügen.

/ etc / initramfs-tools / modules:

...
uvesafb mode_option=1680x1050-24 mtrr=3 scroll=ywrap

Initrd neu erstellen: sudo update-initramfs -u

Vorerst sollte die hochauflösende Konsole nach dem Start verfügbar sein. Die nächste Aufgabe besteht darin, grub2 in den hochauflösenden Modus zu versetzen. Aus einigen Gründen fehlten einige wichtige Optionen in meiner Grub-Konfigurationsdatei, daher habe ich sie in / etc / default / grub hinzugefügt:

GRUB_VIDEO_BACKEND="vbe"
GRUB_TERMINAL_OUTPUT="gfxterm"
GRUB_GFXMODE="1680x1050x24"
GRUB_GFXPAYLOAD_LINUX="1680x1050x24"

Ich bin mir über den nächsten Abschnitt nicht sicher, es ist vielleicht nicht notwendig, aber hier, was ich mit /etc/grub.d/00_header gemacht habe:

Fast oben in der Datei befindet sich eine Reihe von if [ "x${GRUB_...Fallback-Operatoren. Ich habe zwei weitere hinzugefügt:

if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=1680x1050x24 ; fi
if [ "x${GRUB_GFXPAYLOAD_LINUX}" = "x" ] ; then GRUB_GFXPAYLOAD_LINUX=1680x1050x24 ; fi

Suchen Sie nun den Text set gfxmode=${GRUB_GFXMODE}in dieser Datei und fügen Sie den folgenden Code als nächste Zeile ein:

set gfxpayload=${GRUB_GFXPAYLOAD_LINUX}

Auch hier bin ich mir nicht sicher, ob es für die neueste Version von grub2 erforderlich ist (ich habe 1.98). Aktualisieren Sie jetzt die Grub-Konfigurationsdatei:

sudo update-grub2

und alles sollte funktionieren.

arzakon
quelle