Start GNU/Linux Plymouth trotz Nvidia-Treiber

Plymouth trotz Nvidia-Treiber

2786
34

Seit Ubuntu Lucid zeichnet ja der Dienst Plymouth während des Bootvorgangs auf den Bildschirm. Allerdings gibt es immer wieder Probleme im Zusammenspiel zwischen Plymouth und proprietären Videotreibern. Der Grund dafür liegt in den so genannten Kernel Mode-Settings (kurz KMS), die für die Darstellung der Animationen notwendig sind. Früher hatte erst der Xserver dafür gesorgt, dass graphische Elemente ausgegeben werden können. Bis zum Start des Xservers konnte daher nur Text angezeigt werden. Allerdings kann man mit ein bisschen Arbeit trotz proprietärem Video-Treiber auch Plymouth zu Gesicht bekommen.

Durch KMS kann jedoch schon der Kernel die Grafikkarte in den Grafikmodus versetzen und somit die Animation ausgeben. Allerdings ist KMS beim proprietären Grafiktreiber von Nvidia noch so unausgereift, dass die Entwickler von Ubuntu Playmouth bei diesem Treiber lieber deaktiviert haben. Anstelle der ansprechenden Animation sieht man daher oft nur einen simplen Text…

Booten mit und ohne Plymouth

Allerdings können Ihr Plymouth auch mit dem proprietären Nvidia-Treiber verwenden, dafür müssen Ihr allerdings ein bisschen in das System eingreifen. Die Änderung ist experimentell und könnte dafür sorgen, dass Ihr während des Bootvorganges gar nichts mehr auf dem Bildschirm sehen, legtdaher bitte Sicherheitskopien der bearbeiten Dateien an, die Ihr im Fall der Fälle einfach wieder zurückkopieren könnt. In einem ersten Schritt müsst Ihr das Paket v86d installieren…

$ sudo apt-get install v86d

Nun müssen Sie die Konfigurationsdatei /etc/default/grub bearbeiten. Wie schon erwähnt ist es nie eine schlechte Idee die ursprüngliche Konfigurationsdatei zu sichern. Kopiert das Original an eine sichere Stelle…

$ sudo cp /etc/default/grub /etc/default/grub.orig
$ gksudo gedit /etc/default/grub

…und sucht nun in einem Texteditor nach der Zeile…

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Fügt dann an das Ende dieser Zeile die Optionen „video=uvesafb:mode_option=1024×768-24,mtrr=3,scroll=ywrap“ an. Achtet hier darauf, dass Ihr die native Auflösung ihres Displays eintragt. Die 1024×768 sollen nur als Beispiel dienen. Am Ende sollte die Zeile wie folgt aussehen.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1024x768-24,mtrr=3,scroll=ywrap"

Abschließend sucht noch die Zeile…

#GRUB_GFXMODE=640x480

…und entfernt hier die Raute „#“ am Anfang der Zeile. Tragt auch hier wieder die gewünschte Auflösung ein. Im vorliegenden Fall sollte die Zeile nun so aussehen.

GRUB_GFXMODE=1024x768

In einem zweiten Schritt müsst Ihr noch die Konfigurationsdatei /etc/initramfs-tools/modules ändern. Legt für diese Datei wieder eine Sicherheitskopie an und öffnet die Textdatei danach in einem Editor.

$ sudo cp /etc/initramfs-tools/modules /etc/initramfs-tools/modules.orig
$ gksudo gedit /etc/initramfs-tools/modules

Hier müsst Ihr nun nicht lange nach der richtigen Passage suchen, fügt einfach die folgende Zeile an das Ende der Datei an. Achtet bitte auch hier wieder drauf die richtige Auflösung einzutragen.

uvesafb mode_option=1024x768-24 mtrr=3 scroll=ywrap

Nun sind alle nötigen Konfigurationsdateien bearbeitet. Damit die Änderungen aktiv werden, müsst Ihr das System dazu veranlassen die Konfigurationsdateien von Grub neu erstellen zu lassen und das ininitramfs-Archiv neu zu erzeugen.

$ sudo update-grub
$ sudo update-initramfs -u

Wenn Ihr jetzt euren Rechner neu startet, dann sollte die Plymouth-Animation auf ihren Bildschirm zu sehen sein. Unter Lucid und Maverick hab ich diese Lösung mit einer Nvidia-Karte getestet.

34 Kommentare

  1. ja wichtig ist in vielen Fällen die Auflösung mit Einzutragen , sonnst kann es ein Überraschung in 8bit geben 😉
    also „Besser“:

    GRUB_GFXMODE=1024x768x24

  2. Funktioniert bei mir leider nicht unter Lucid. Die von Simon vorgeschlagene Lösung aber schon, habe das schon vorher verwendet. Die virtuellen Terminals nutze ich sowieso nicht, arbeite immer mit dem GNOME-Terminal.

  3. @blub: Das kann ich für die Verwendung unter Archlinux bestätigen…allerdings hab ich glaub ich damals auch v86d deinstalliert
    Aber ich wüsste gern mal WARUM das so ist.

    LG
    Hølgerssøn

  4. Danke für den Tipp, funktioniert soweit im Prinzip. Allerdings klappt es wohl nicht mit FullHD-Auflösung, kann das sein? Das GRUB-Menü ist jetzt ziemlich klein, aber voll aufgelöst. Danach bleibt der Bildschirm erst schwarz, es folgt ein blinkender Cursor und dann ist noch kurz die Plymouth-Animation zu sehen, bevor der Desktop schon geladen wird. Allerdings ist die Auflösung zwischendurch doch sehr unschön, 640×480 könnte das ungefähr sein…

  5. Danke für den guten Beitrag
    Ich musste nähmlich um Cover-Flow in meinem Nautilus zu aktivieren, den offiziellen ATI-Treiber aktivieren, der dann aber wieder bewirkt, dass die Bootschirme alle häßlich werden.
    Ich brauch halt mein Eye-Candy und deswegen danke ich dir nochmals für den Beitrag, den ich in ca. 5min auch umsetzten konnte.
    Nils
    Ps:Ich habe eine ATI Radeon HD 4350 als Grafikkarte, also mit der funktioniert es auch

  6. Danke für den Beitrag! Es funktioniert (fast) perfekt. Bei mir bleibt noch ein schwarzer Rand beim Laden. Kann man dagegen was tun? Ich benutze eine 1920×1080 Auflösung

  7. Vielen Dank!

    Funktioniert auch mit einer ATI Grafikkarte (bzw. AMD 😉 ) und dem proprietären Treiber fglrx.

    Allerdings hat es mit der Auflösung 1680×1050 nicht funktioniert, zu groß und zu pixelig, aber mit 1024×768 klappt es jetzt 🙂

    • Ich hatte zuerst Christoph’s Anleitung verwendet, aber irgendwie bekam ich dann gar nichts mehr zu sehen, wenn Ubuntu hochfahren wollte. Selbst zum Login ging es dann nicht mehr. Habe keine Ahnung warum. Also über Shell alles wieder rückgängig gemacht.

      Dann dieses Script gefunden, angewendet und ich bekam endlich wieder den hübschen Boot-Screen zu Gesicht. Ich weiß… letztlich macht dieses Script genau das, was hier in der Anleitung steht. Allerdings beträgt die Auflösung 1280×1024 Pixel. Und damit scheint es zu funktionieren.

      Zum Test habe ich die Auflösung anhand Christoph’s Artikel auf meine Standard-Auflösung von 1680×1050 Pixel geändert und wieder bekam ich einen schwarzen Bildschirm beim Booten.

      Ich habe es einige Male versucht und jedes Mal, wenn ich die Auflösung auf meine stellte, bekam ich den schwarzen Bildschirm. (ja, ich habe überall die selbe Auflösung eingetragen ;))

        • gegebenfalls würde hier ja ein man hwinfo helfen.
          Es lässt sich in diesem Forum schlecht lesen, weil aufeinanderfolgende Bindestriche zusammengekleistert werden 🙁 , aber unmittelbar vor „framebuffer“ steht ein „Doppelminus“.

        • Ah ok. Wegen dem Minus wurde schon gemeckert, da irgendwie draus ein langer Bindestrich wurde. Hatte es dann nur mit einem Minus versucht. Dass es zwei sein müssen, bin ich nicht drauf gekommen 🙂

          Also meine Auflösung von 1680×1050 ist nicht mit dabei 🙁 Die höchste 24 bit sind die besagten 1280×1024. Liegt es also daran, dass Plymouth die manuell eingetragene Auflösung von 1680xWurst nicht annimmt?

        • so isses. Mein Display kann bleistiftsweise 1280×800, aber hwinfo gibt als höchste Auflösung 1024×768 an (weia!). Der X-Server macht mit der höheren Auflösung keine Probleme, aber beim Booten scheint das so ’ne Art VESA- und/oder Framebuffer-Modus zu sein (ggfs. bei Wikipedia nachlesen, was VESA ist).

          Also bei mir steht in /etc/default/grub:

          $ grep GFX /etc/default/grub
          GRUB_GFXMODE=1024x768x24
          GRUB_GFXPAYLOAD_LINUX=keep

          bei Dir müsste
          GRUB_GFXMODE=1280×1024×24
          klappen (die folgende Zeile (…=keep) ist aus mir bisher verschlossen gebliebenen Gründen auch irgendwo zwischen „sehr wichtig“ und „essentiell“ (oder schreibt man das inzwischen „essenziell“?) angesiedelt).

          anschließend die beiden obligatorischen
          sudo update-initramfs -u
          und
          sudo update-grub

          und dann sollte ein Neustart eigentlich den Lohn der Mühe zeigen.

  8. Korrektur:

    mit update-grub wird nicht wie oben beschrieben der MBR neu geschrieben, sondern die grub-Konfigurationsdatei menu.lst bzw. beim neuen grub2 die grub.cfg upgedatet.

    Gruß,
    Thomas

  9. Hallo,

    ich liebe solche Anleitungen, davon gibt es hunderte, wenn nicht gar Tausende im web., die sich auch noch in der Qualität voneinander unterscheiden. Als deutliches Qualitätzeichen würde ich einen Eintrag darin schätzen, ab wann sie obsolet sind. Schliesslich ist die Zeit auf unserer Seite, oder.

    Was hältst Du von diesem Vorschlag. Evtl. gehört soetwas sogar in die erste Zeile, jetzt. Als temporäre Hilfe Klasse, wenn man dann später weiss, wie man’s wieder rückgängig machen kann. Lieber Gruss & immer Danke für Deinen Einsatz!

  10. Hallo Leute,

    die Anleitung ist wirklich gut. Aber ich möchte zu denken geben, das es im Internet ein Script gibt, dass das alles automatisch macht. Man muss nur die Auflösung eintragen. Sucht einfach bei einer beliebigen Suchmaschine nach „fixplymouth“.

    Aber klasse Beitrag.

    Nick

  11. Sehr gute Anleitung – damit konnte ich endlich das Problem „hässlicher textbasierter Startschirm“ auf meinem Home Theater PC lösen.
    Danke! 🙂

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein