Ceci est une ancienne révision du document !



Plymouth

Plymouth est le nouveau chargeur graphique d'Ubuntu 10.04 LTS. Il remplace usplash et xsplash présents dans la version Ubuntu 9.10.

Description de Plymouth sur Wikipedia

Plymouth est directement installé avec Ubuntu 10.04 Lucid Lynx et 11.04 Natty Narwhal.

FIXME possibilité de l'installer sur des versions antérieures ?

Attention ! Ces manipulations peuvent rendre Grub-pc inopérant et, de ce fait, empêcher Ubuntu de démarrer normalement. Ce qui est proposé ci-dessous est exclusivement réservé aux utilisateurs avancés, maîtrisant parfaitement la ligne de commande et les opérations de secours sur une installation de GNU/Linux dont Grub est cassé.

Il est conseillé de faire une copie de sauvegarde des fichiers que vous allez modifier, dans l'éventualité où votre système viendrait à ne pas se lancer après ces manipulations. Veillez à consulter la documentation de grub-pc à la section Réinstaller/Restaurer AVANT de commencer.

Augmenter la résolution

Depuis la version Lucid Lynx d'Ubuntu, l'activation des pilotes propriétaires Nvidia ou ATI provoque un bug qui rend l'affichage du thème de démarrage pixelisé ou "baveux". En réalité c'est parce que l'écran est en basse résolution à ce moment-là. Il y a quatre solutions à ce problème, la deuxième étant légèrement plus simple mais ne fonctionnant pas toujours.

Avec une interface graphique

En utilisant StartUp-Manager

Avant d'essayer ces méthodes qui pourrait être dangereuse, vous pouvez essayer d'installer le logiciel StartUp-Manager, il se placera dans le menu Systeme/Administration.

  • Cochez la case "Afficher l'animation de démarrage" et décochez la case "afficher le texte pendant le redémarrage".
  • Choisissez ensuite la résolution d'écran que vous voulez, puis, dans l'onglet "Configuration avancée" sélectionnez la même résolution d'écran.
  • Fermer le programme, redémarrer, et au démarrage vous verrez si cela à fonctionné.

Sinon, essayez les solution ci-dessous.

Le développement de StartUp-Manager est arrêté, ce logiciel devient obsolète avec les derniers changements de grub dans Natty. Le développeur recommande de se tourner vers d'autres solutions, comme Grub Customizer1).

FIXME : StartUp-Manager serait fonctionnel jusqu'à Maverick? Certains peuvent confirmer? Merci d'avance!

En utilisant Grub Customizer

Se reporter à la page concernée.

Préambule à l'édition des paramètres

En premier lieu il faudra déterminer quelles résolutions d'écran sont acceptées par Grub / Plymouth. Pour voir cela il faut avoir accès au menu de démarrage de Grub. Si vous n'avez qu'un seul système d'exploitation, il y a de fortes chances pour que vous n'ayez pas de menu de sélection Grub au démarrage. Dans un tel cas, on peut afficher le menu Grub en appuyant sur la touche majuscule (shift) ou echap (ESC) tout de suite après l'affichage de l'écran du manufacturier. 2)

Ensuite dans le menu Grub, appuyez sur la touche "c", puis tapez

vbeinfo

Une liste de résolutions supportées par Grub est affichée, notez la plus haute sur un papier (par exemple: 1280x1024x32). Puis, appuyez sur la touche Esc pour revenir au menu de Grub et démarrer votre ordinateur.

Solution 1

Cette méthode a été testée sur Lucid et Maverick 64bits sur une carte nvidia (driver propriétaire installé) et sur Lucid 32 bits sur une carte VIA (driver non propriétaire) avec une résolution de 1680x1050.
Avant d'appliquer la solution faites une sauvegarde des fichiers qui seront modifiés !

Lancez le terminal et tapez :

  sudo cp /etc/default/grub /etc/default/grub_$(date +%Y%m%d)

pour créer une copie de sauvegarde des fichiers, que vous pourrez restaurer en cas de problème.

Editez le fichier /etc/default/grub avec les droits administrateur.

gksudo gedit /etc/default/grub

Cherchez la ligne #GRUB_GFXMODE=640x480. Enlevez le "#" de la ligne et remplacez les valeurs après le "=" par la résolution la plus haute trouvée via "vbeinfo". La ligne devrait ressembler à ça :

GRUB_GFXMODE=1680x1050

Ajoutez en dessous cette ligne :

GRUB_GFXPAYLOAD_LINUX=1680x1050

Enregistrez et fermez ce fichier et puis :

sudo update-grub

Pour prendre en compte les changements, cela peut prendre un certain temps. Ne fermez pas le terminal avant que Grub ne vous dise qu'il a terminé (retour au prompt).

Après un redémarrage, l'affichage devrait se faire en haute résolution. Si ce n'est pas le cas, vérifiez bien la résolution obtenue par vbeinfo (voir préambule).

Si vous ne pouvez plus démarrer Ubuntu suite à cette manipulation (écran restant indéfiniment noir ou sur l'arrière-plan de Grub), redémarrez votre ordinateur et lors de l'affichage du menu de Grub, appuyez sur la touche c de votre clavier. Lorsque l'invite de commande de Grub s'affiche, tapez la commande ci-dessous puis appuyez sur la touche Entrée. Vous pouvez alors revenir au menu de Grub en appuyant sur Echap et démarrer votre ordinateur normalement.
set gfxpayload=
Il peut être utile d'activer le framebuffer afin d'afficher le logo Ubuntu beaucoup plus tôt avant que le driver de votre carte graphique prenne le relais. Voici la procédure pour activer le framebuffer avec Ubuntu 10.04.
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u

Solution 2

Avant d'appliquer la solution pensez à faire une sauvegarde des fichiers qui seront modifiés !

Lancez le terminal et tapez :

sudo cp /etc/default/grub /etc/default/grub_$(date +%Y%m%d)
sudo cp /etc/initramfs-tools/modules /etc/initramfs-tools/modules_$(date +%Y%m%d)

pour créer une copie de sauvegarde des fichiers, que vous pourrez restaurer en cas de problème.

La démarche est expliquée pour une résolution obtenue par vbeinfo de 1280x1024x24 (voir préambule). Vous devez adapter les modifications à la résolution que vous avez obtenue pour votre ordinateur !

Commencez par installer le paquet v86d, puis éditez grub :

sudo apt-get install v86d
gksudo gedit /etc/default/grub

et remplacez la ligne 9

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

par

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

Ne pas oublier les guillemets avant quiet et après ywrap

puis (optionnel, car change juste la résolution de Grub, pas celle du Splash) la ligne 18

#GRUB_GFXMODE=640x480

par

GRUB_GFXMODE=1280x1024

Enregistrez et fermez ce fichier et puis :

gksudo gedit /etc/initramfs-tools/modules

À la fin de ce fichier rajoutez la ligne suivante :

uvesafb mode_option=1280x1024-24 mtrr=3 scroll=ywrap
Chez certains uvesafb a empêché l'ordinateur de s'éteindre lors de son arrêt. Dans ce cas il semble que l'utilisation de vesafb à la place de uvesafb a aidé.

Enregistrez et fermez ce fichier.

et enfin générez à nouveau Grub et initramfs

sudo update-grub
sudo update-initramfs -u

Après un redémarrage, l'affichage devrait se faire en haute résolution. Si ce n'est pas le cas, vérifiez bien la résolution obtenue par vbeinfo (voir préambule).

Solution 3

FIXME La solution a-t-elle réellement fonctionné pour résoudre le problème des pilotes propriétaires ou a-t-elle simplement désactivé les pilotes propriétaires ?

Avant d'appliquer la solution faites une sauvegarde des fichiers qui seront modifiés !

Lancez le terminal et tapez :

sudo cp /etc/default/grub /etc/default/grub_$(date +%Y%m%d)

pour créer une copie de sauvegarde des fichiers, que vous pourrez restaurer en cas de problème.

Editez le fichier /etc/default/grub avec les droits administrateur.

gksudo gedit /etc/default/grub

Cherchez la ligne #GRUB_GFXMODE=640x480. Par défaut, elle se trouve à la ligne 18, mais il se peut qu'elle se trouve ailleurs. Maintenant, enlevez le "#" de la ligne et remplacez les valeurs après le "=" par la résolution la plus haute trouvée via "vbeinfo", suivie par une virgule suivie de la valeur suivante, etc.

La ligne devrait ressembler à ça

GRUB_GFXMODE=1280x1024x32,1280x1024,640x480

Cette ligne indique à Grub d'augmenter sa résolution avec la première valeur, si elle ne marche pas, il lui indique de prendre la deuxième valeur, et ainsi de suite. S'il ne trouve rien il utilisera 640x480. Il est donc suffisant de n'indiquer qu'une seule résolution.

Ensuite, il faut éditer le fichier /etc/grub.d/00_header avec les droits d'administrateur.

gksudo gedit /etc/grub.d/00_header

Cherchez la ligne gfxmode=${GRUB_GFXMODE}. Elle se trouve sur la ligne 103, par défaut. Et juste en dessous, insérez la ligne suivante :

set gfxpayload=keep
Sous maverick, il semble que cette ligne se trouve ligne 147 et non 103

Sauvegardez. Cette ligne va dire de garder la résolution pendant le chargement d'Ubuntu.

Cette ligne n'existe pas forcément dans tous les fichiers ni même cette instruction. En tout cas pas chez moi (auteur SX1), une solution est en cours de recherche. Si vous avez une solution, éditez ce document.
La solution suivante semble fonctionner et est plus simple que celle indiquée ci-dessus : dans le fichier /etc/default/grub, sous la ligne GRUB_GFXMODE=1280x1024x32,1280x1024,640x480 il faut ajouter GRUB_GFXPAYLOAD_LINUX=keep de cette manière, il n'y a pas a modifier le fichier /etc/grub.d/00_header - Sivitri.

Et enfin…

sudo update-grub

Pour prendre en compte les changements, cela peut prendre un certain temps. Ne fermez pas le terminal avant que Grub ne vous dise qu'il a terminé.

Redémarrez. Admirez.

Si vous ne pouvez plus démarrer Ubuntu suite à cette manipulation (écran restant indéfiniment noir ou sur l'arrière-plan de grub), redémarrez votre ordinateur et lors de l'affichage du menu de grub, appuyez sur la touche c de votre clavier. Lorsque l'invite de commande de grub s'affiche, tapez la commande suivante :

set gfxpayload=

…puis appuyez sur la touche Entrée. Vous pouvez alors revenir au menu de grub en appuyant sur Echap et démarrer votre ordinateur normalement.

Chez certains cette solution semble désactiver les drivers Nvidia, ce qui n'est pas vraiment une solution.

Solution 4

Utiliser plymouth manager, cf. ce site et celui-ci.

Solution 5

Voir ce script pour régler automatiquement le problème chez la plupart des gens. Fonctionne aussi avec BURG.

Afficher Plymouth beaucoup plus tôt

Plymouth s'affiche tard par défaut, et est précédé d'un tiret noir clignotant qui n'est pas particulièrement esthétique. Ceci est connu dans Launchpad où les raisons de compatibilités matérielles sont expliquées. A noter: démarrer Plymouth plus tôt ne va pas raccourcir le temps de démarrage mais sera plus esthétique.

Pour améliorer ceci en attendant une mise à jour corrective, il faut réaliser ces opérations dans un terminal :

echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u

L'affichage de Plymouth apparaitra beaucoup plus tôt au démarrage suivant.

Si vous avez effectué cette commande, il se peut que vous ne puissiez pas changer le thème. Pour revenir en arrière, supprimez la ligne suivante dans /etc/initramfs-tools/conf.d/splash :
FRAMEBUFFER=y

et relancez

sudo update-initramfs -u

Plusieurs thèmes sont disponibles dans les dépôts. Pour les installer, installez les paquets commençant par plymouth-theme ou depuis un terminal :

sudo apt-get install 'plymouth-theme*'

Puis pour choisir un thème, tapez :

 sudo update-alternatives --config default.plymouth

Vous avez alors un écran de ce type :

 Il existe 6 choix pour l'alternative default.plymouth (qui fournit /lib/plymouth/themes/default.plymouth).

  Sélection   Chemin                                                 Priorité  État
------------------------------------------------------------
* 0            /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.plymouth   100       mode automatique
  1            /lib/plymouth/themes/fade-in/fade-in.plymouth           10        mode manuel
  2            /lib/plymouth/themes/glow/glow.plymouth                 10        mode manuel
  3            /lib/plymouth/themes/script/script.plymouth             10        mode manuel
  4            /lib/plymouth/themes/solar/solar.plymouth               10        mode manuel
  5            /lib/plymouth/themes/spinfinity/spinfinity.plymouth     10        mode manuel
  6            /lib/plymouth/themes/ubuntu-logo/ubuntu-logo.plymouth   100       mode manuel

Appuyez sur <Entrée> pour conserver la valeur par défaut[*] ou choisissez le numéro sélectionné :

Faites votre choix en tapant un numéro au clavier. Pour prendre en compte les changements :

sudo update-initramfs -u

Redémarrez. Admirez !

Il est possible de visualiser le thème Plymouth sans redémarrer. Pour cela, il faut lancer le démon Plymouthd (à chaque nouvelle visualisation) :
sudo plymouthd

Puis lui demander de visualiser le thème actuel :

sudo plymouth --show-splash

Pour quitter, il suffit d'un simple

sudo plymouth quit
En cas d'installation de l'environnement KDE en plus de Gnome, cette commande permet également de changer le thème qui a généralement été modifié par la même occasion
Pour lancer le démon, avoir un aperçu de 20 secondes, puis quitter l'aperçu en une seule commande, on peut aussi lancer la commande :
sudo plymouthd && sudo plymouth --show-splash & sleep 20 && sudo plymouth quit
Il peut y avoir un problème avec plymouth-theme-spinfinity : au démarrage, l'écran reste noir et les pilotes graphiques ne sont pas chargés/reconnus. Pour arriver au bureau, il faut passer sur une console (ctrl+alt+F1), se connecter et taper
sudo killall plymouth

et repasser sur le bureau graphique (ctrl+alt+F7). Le problème disparaît une fois le thème changé.

Importer un thème plymouth issu de la distribution Mandriva

L'importation va se réaliser en plusieurs étapes. Il s'agira d'abord de récupérer le thème sous le forme d'un paquet RPM. Avec les droits super utilisateur, extraire les fichiers du paquet dans le répertoire des thèmes utilisés pour votre distribution et modifier quelques lignes de configuration. Pour finalement pouvoir activer votre nouveau thème.

- Récupérer un thème contenu dans un paquet RPM par exemple celui, malheureusement en langue allemande mais terriblement 'geek attitude', de tigger-gg sur kde-look.org.

- Ouvrir avec les droits super utilisateur le paquet précédemment téléchargé avec un gestionnaire d'archive (par exemple File Roller installé par défaut). Parcourir successivement les sous-dossiers '.' , 'usr' , 'share' pour parvenir au dossier 'plymouth'. Sélectionnez-le afin de l'extraire dans le répertoire 'lib' à la racine du système de fichier.

Pour plus d'informations concernant les répertoires '.', 'usr', 'share', 'lib' voir les systèmes de fichiers sous Linux

- Ouvrir avec les droits super utilisateur le fichier '/lib/plymouth/themes/mud-waiting/mud-waiting.plymouth' avec votre logiciel d'édition de texte préféré (par défaut Gedit). Modifier les chemins sous [script] pour votre configuration (remplacer le chemin '/usr/share' par '/lib'). Hop, finalement enregistrer vos modifications avant d'activer le thème que vous venez d'installer.


2)
Une autre solution consiste à modifier Grub pour l'obliger à afficher le menu en éditant le fichier /etc/default/grub et en commentant la ligne n°5 "GRUB_HIDDEN_TIMEOUT=0" en ajoutant # au début de la ligne. Plus de détails sur cette page.
  • plymouth.1320016923.txt.gz
  • Dernière modification: Le 15/12/2011, 15:20
  • (modification externe)