Archives par mot-clé : customiser

Customiser GRUB-PC dans Ubuntu 10.04

J’ai la chance de pouvoir écrire assez régulièrement pour le magazine Linux Identity (j’en avais parlé dans un précédent billet d’ailleurs). Ce qui est sympathique, c’est que l’on peut reproduire le contenu des articles que l’on écrit au bout d’un certain temps. Voici donc ma prose sur la customisation de Grub-PC sur Ubuntu 10.04 (mais je pense que ça doit pouvoir s’adapter aux versions ultérieures d’Ubuntu, à toute distribution à base de Debian et peut être même aux autres.)

De GRUB à GRUB-PC

Afin de démarrer, votre ordinateur a besoin de savoir quels sont les systèmes d’exploitation présents, afin de pouvoir choisir celui qui doit être lancé et mettre en marche la procédure de boot.
Dans les versions d’Ubuntu antérieures à la 9.10, GRUB Legacy (GRUB étant l’acronyme de GRand Unified Bootloader) était le programme installé par défaut qui était en charge de cette tâche. Il peut amorcer des systèmes compatibles avec la norme POSIX (GNU/Linux, *BSD, Apple Mac OS, etc.) et possède également la capacité d’enchainer vers un autre amorceur pour les systèmes non compatibles avec la norme POSIX (comme Windows).

Cependant, le projet a choisi de faire évoluer GRUB vers une nouvelle version et un nouveau programme a été écrit, qui a donné naissance à GRUB 2, renommé ensuite GRUB-PC.

Présentation de GRUB-PC
Tout comme GRUB Legacy, GRUB-PC va vous permettre de choisir les entrées qui seront disponibles lors du démarrage de votre ordinateur. Il est également compatible avec les OS de la norme POSIX et ceux qui ne le sont pas. Aucun souci donc pour faire cohabiter par exemple, un ou plusieurs systèmes d’exploitation GNU Linux, une version de Microsoft Windows et une de Mac OS dans le menu.

Grub au démarrage

Cette nouvelle version ayant été réécrite totalement, elle est devenue beaucoup plus puissante. La contrepartie de cette puissance étant une complexité de paramétrage accrue et le nombre d’options disponibles.

Les avantages et inconvénients de GRUB-PC vs GRUB

La majorité des paramétrages de GRUB Legacy tenait dans un seul fichier, « /boot/grub/menu.lst ».

Un simple éditeur de texte en mode super utilisateur suffisait pour paramétrer l’ordre des OS au démarrage, leur nombre, le timeout, …

Aujourd’hui ce n’est plus forcément vrai. En effet, GRUB-PC est plus complexe que son ancêtre. Il est composé de plusieurs fichiers et de scripts répartis dans plusieurs répertoires et la simple édition de ces fichiers n’apportera pas forcément la modification escomptée.

L’avantage de cette complexité étant notamment que le programme possède désormais une interface graphique, est nettement plus modulable et s’adapte à un plus grand nombre d’architectures matérielles.

Afin de s’y retrouver par la suite, voyons quels sont les fichiers utilisés par GRUB-PC

Liste des fichiers utilisés pour la configuration

Voici une brève présentation des fichiers que nous allons rencontrer dans les paragraphes suivants.

  • /boot/grub/grub.cfg : C’est le fichier lu au démarrage de l’ordinateur, remplaçant donc menu.lst sur grub-legacy. En revanche, comme il est généré automatiquement par update-grub, il ne doit donc pas être modifié manuellement, sous peine de voir ses modifications écrasées lors de la prochaine mise à jour.
  • /etc/default/grub : il gère les valeurs par défaut de grub (notamment le délai de lancement, la résolution d’affichage, splash/quiet)
  • les fichiers du dossier /etc/grub.d/

Ce sont avec ces six scripts que nous allons le plus agir, car ils vont nous permettre de modifier les choix et l’ordre des systèmes d’exploitation dans le menu.

  • 00_header : contient le script gérant les options définies dans /etc/default/grub.
  • 05_debian_theme : gère les couleurs du menu et le fond d’écran éventuel.
  • 10_linux : contient le script spécifique au chargement d’un type de noyau. Ce script génère les entrées pour le système par défaut du grub.cfg.
  • 20_memtest86+ : lance le test de mémoire « memtest ».
  • 30_os-prober : contient le script de recherche des autres systèmes installés.
  • 40_custom : configuration perso. C’est là qu’on pourra paramétrer manuellement le lancement des systèmes d’exploitation.

La notion la plus importante à connaitre à propos de ces fichiers est qu’ils seront traités dans l’ordre numérique (00, puis 05, 10, 20 …). Cela aura son importance plus tard.

Modifier l’ordre des différents OS dans le menu

Si vous avez sur votre disque dur Windows et Ubuntu qui cohabitent, il peut arriver que vous souhaitiez modifier l’ordre d’apparition dans le menu des différents systèmes d’exploitation. En effet par défaut, ce sont les entrées Ubuntu qui apparaissent en premier, puis un séparateur et enfin les autres systèmes d’exploitation. Il est plus pratique, si comme moi vous n’utilisez finalement que deux entrées, d’avoir tout sous la main en descendant ou en montant juste d’une entrée avec les touches fléchées du clavier.

La solution la plus simple pour y arriver est de faire remonter les entrées Windows en premier dans la liste. Il suffit de renommer le fichier « 30_OS-prober » en lui donnant un nom qui commence par un nombre compris entre 06 et 09. Ce qui revient à faire traiter ce script entre « 05_debian » et « 10_linux », puisque nous avons vu précédemment que les fichiers sont traités dans l’ordre qui correspond à leur nom.

On se place donc dans le dossier contenant les scripts en tapant dans un terminal :

cd /etc/grub.d

Puis on renomme le fichier « 30_OS-prober » en « 07_OS-prober » pour le faire remonter dans l’ordre numérique des scripts, en tapant la commande suivante :

sudo mv 30_os-prober 07_os-prober

Si le fait de renommer le fichier original vous donne des sueurs froides, vous pouvez également l’enregistrer sous un autre nom, ce qui vous évitera de perdre votre fichier original, on ne sait jamais. En revanche, vous aurez deux fois les entrées Windows (au début du menu et à la fin). Pour ce faire, il suffit de saisir la commande cp (pour copy) au lieu de mv :

sudo cp 30_os-prober 07_os-prober

Liste des scripts grub modifiés

Rien ne vous empêche de supprimer « 30_OS-prober » par la suite quand vous aurez validé que la manipulation fonctionne.

Enfin, on met à jour le GRUB. C’est une manipulation à faire à chaque fois que vous modifiez quoi que ce soit dans les fichiers, car comme je l’ai indiqué plus haut, vos modifications ne seront pas prises en compte si vous ne le faites pas.

Donc toujours dans un terminal, on tape :

sudo update-grub

Et voilà vous devriez maintenant avoir les entrées Windows au dessus de celles d’Ubuntu.

ligne de commande sudo update-grub suite et fin

Supprimer des entrées de noyau dans le menu de démarrage

On continue dans le nettoyage du menu de démarrage avec la suppression des entrées des noyaux superflus. Si vous avez installé votre Ubuntu depuis un certains temps, vous avez certainement plusieurs noyaux qui ont été installé au fil des mises à jour. Le problème, c’est que chacun de ces noyaux apparait dans le menu, l’alourdissant d’autant. Nous n’allons donc garder que le dernier. Cette opération sera bien sûr à renouveler lorsqu’un nouveau noyau sera installé, mais seulement une fois que vous aurez constaté qu’il n’apporte pas de bug à votre installation.

La solution la plus simple, et qui a le mérite de se faire graphiquement, est de cacher les noyaux superflus en les déplaçant manuellement vers un dossier que l’on créera à cette occasion.

On ouvre tout d’abord le dossier « /boot » avec les privilèges de super utilisateur dans nautilus. A vous d’adapter si vous êtes sous Kubuntu ou Xubuntu avec votre gestionnaire de fichier favori.

gksudo nautilus /boot

On crée ensuite un dossier. Dans un espace vide, on clique droit de la souris et on choisit « Créer un dossier », que l’on nommera « NoyauxCachés ». On peut aussi utiliser le raccourci clavier Ctrl + Shift + N.

On sélectionne ensuite à la souris (ou en maintenant la touche Ctrl du clavier enfoncé entre chaque clic) tous les fichiers désignant un ancien noyau et on les fait glisser dans le dossier « NoyauxCachés ». Dans l’exemple ci-dessous ce sont tous les fichiers dont le nom contient la version du noyau 2.6.32-21.

Noyaux à supprimer

Attention cependant à ne pas cacher le noyau sur lequel votre système s’est lancé, car cela pourra poser des problèmes lors du prochain redémarrage. Soyez donc bien sûr des noyaux que vous déplacez.

Pour finir, on met à jour GRUB :

sudo update-grub

Maintenant, vous devriez voir que le ou les noyaux que vous avez déplacés n’apparaissent plus lors de la création du fichier grub.cfg

ligne commande sudo update-grub

Supprimer les entrées Memtest86 au boot

De la même manière que nous avons caché les noyaux superflus, les entrées Memtest peuvent être cachées également. Pour cela, il suffit de déplacer le script « 20_memtest86+ » dans un dossier que l’on va créer.

Pour changer, on va créer le dossier « memtest » dans le dossier dans /etc/grub.d/ en ligne de commande :

sudo mkdir /etc/grub.d/memtest

Puis, on déplace graphiquement le script « 20_memtest86+ » dans le dossier créé dans nautilus (toujours avec les droits de super utilisateur) :

gksudo nautilus /etc/grub.d
Fichiers dans grub.d

Et on n’oublie surtout pas de mettre à jour GRUB :

sudo update-grub
Ligne de commande sudo update-grub suite

Modifier le système d’exploitation sur lequel démarrer par défaut

Par défaut, c’est la première entrée du menu de démarrage qui est sélectionnée et qui provoquera le démarrage du système. Or, on peut avoir envie parfois de ne pas démarrer par défaut sur cette première ligne (par exemple pour démarrer sur Windows si on partage son PC avec d’autres

personnes). Pour modifier ce paramétrage, il faut tout d’abord comprendre la règle de comptage des entrées par GRUB, car c’est le numéro de la ligne qui va déterminer le système qui sera lancé.

Si on se base sur mon menu de démarrage avant que nous ayons appliqué toutes nos modifications, ça ressemble à cela :

Ubuntu, avec Linux 2.6.32-23-generic
Ubuntu, avec Linux 2.6.32-23-generic(mode de récupération)
Ubuntu, avec Linux 2.6.32-21-generic
Ubuntu, avec Linux 2.6.32-21-generic(mode de récupération)
Memory Test, (memtest86+)
Memory Test, (memtest86+, serial console 115200)
Microsoft Windows XP  Professionnel (on /dev/sda3)

Voici le même menu avec les numéros correspondants sur la gauche :

0	Ubuntu, avec Linux 2.6.32-23-generic
1	Ubuntu, avec Linux 2.6.32-23-generic(mode de récupération)
2	Ubuntu, avec Linux 2.6.32-21-generic
3	Ubuntu, avec Linux 2.6.32-21-generic(mode de récupération)
4	Memory Test, (memtest86+)
5	Memory Test, (memtest86+, serial console 115200)
6	Microsoft Windows XP  Professionnel (on /dev/sda3)

L’entrée de Windows XP correspondra donc au N° 6 car on commence à compter à partir de zéro.

Le plus simple pour choisir la ligne et donc le système d’exploitation sur lequel l’ordinateur sera positionné par défaut dans le menu est de saisir la ligne de commande ci-dessous, où « x » est bien sûr le nombre que l’on a trouvé à l’étape précédente,

sudo grub-set-default x

Cependant, sur certaines configurations, cette commande ne fonctionne pas. Il faut alors aller modifier manuellement le fichier /etc/default/grub, en modifiant la variable GRUB_DEFAULT= avec le nombre que l’on a trouvé précédemment.

On peut aussi choisir de fonctionner autrement et décider de mettre par défaut le système qui a été choisi lors du dernier démarrage. Dans ce cas la variable GRUB_DEFAULT= sera suivi de « saved » (sans guillemet), Pour que cela fonctionne, il faudra rajouter une ligne en dessous de celle que l’on vient de modifier avec l’entrée GRUB_SAVEDEFAULT=true.

Changement du fond d’écran du menu

La couleur noire du menu de démarrage est assez tristounette, il faut bien le dire. Nous allons donc ajouter une image en « fond d’écran » pour l’égayer.

On modifie tout d’abord le fichier /etc/default/grub. On l’ouvre dans un éditeur de texte et on décommente la ligne suivante (en enlevant le # qui se trouve devant) :

# GRUB_GFXMODE=640×480

On va fixer une résolution de 800×600 qui devrait convenir à la plupart des PC, en modifiant la ligne comme suit :

GRUB_GFXMODE=800x600x32,800×600

Le plus important dans la taille à donner est de conserver le ratio de votre écran (4:3, 16:10, …).

On renomme l’image en « 00_image_de_fond.jpg » puis on la copie dans le dossier /boot/grub/ avec les droits de super utilisateur.

Maintenant, nous allons modifier le script « 05_debian_theme » qui, comme on l’a vu précédemment, gère toute les customisations graphiques du menu. On l’ouvre avec son éditeur de texte :

sudo gedit /etc/grub.d/05_debian_theme

On modifie les lignes 10, 11 et 12 comme suit et on sauvegarde :

WALLPAPER= »00_image_de_fond.jpg »

COLOR_NORMAL= »white/black »

<COLOR_HIGHLIGHT= »blue/magenta »

En résumé, on a fait les choses suivantes :

  • donné le nom du fichier qui sera notre fond d’écran (WALLPAPER)
  • défini une couleur pour le texte (COLOR_NORMAL) : blanc sur fond transparent (le noir en deuxième correspond à transparent)
  • défini une couleur pour le texte sélectionné (COLOR_HIGHLIGHT) : bleu sur fond en magenta.

Et on n’oublie pas de mettre à jour :

sudo update-grub

Une fois toutes ces modifications effectuées, vous devriez avoir un magnifique menu de démarrage mis en forme comme vous le souhaitez et avec une belle image de fond. Ce ne sont pas des modifications compliquées et elles ne prennent pas des heures à mettre en place. Mais le résultat permet d’obtenir une meilleure ergonomie et un look largement amélioré.

GRUB2

La Guadeloupe, l’autre pays du sextoy

Comme vous le savez certainement, je suis en vacances en Guadeloupe pendant trois semaines et c’est bien connu, l’antillais est chaud 😉 Dans tous les sens du terme.
La preuve en image.

Je ne suis pas sûr que l’on pourrait voir ce genre de pub en 4 par 3 chez nous sur le bord des routes … C’est les Antilles quoi.
Dommage, il paraît qu’il y a la même en version « banane », mais je n’ai pas de photo.

Mac4Lin 1.0 est sorti, votre linux va ressembler à un Mac

J’avais déjà parlé de Mac4Lin dans un précédent billet. C’est un script qui permet de faire ressembler votre Ubuntu à Mac OS X (je ne sais pas si ça marche sur d’autres Linux, mais pourquoi ça ne marcherait pas ?).

Peng vient d’annoncer sur son blog la disponibilité de la version finale 1.0. Pour plus de copies d’écran, rendez vous sur le billet de l’annonce officielle du développeur, infra_red_dude.

Il y a plein de nouveautés par rapport à la dernière version, je vous laisse les consulter.

Il y a aussi malheureusement encore quelques bugs, dont notamment l’impossibilité de supprimer les fichiers automatiquement les fichiers installés. Mais ce ne sont que des thèmes, des fonds d’écran, etc, donc ce n’est pas bien difficile de les supprimer.

Vous pouvez télécharger les fichiers sur la page du projet sur Sourceforge.

Customisation de l’interface d’Ubuntu 7.10 en Mac OS X Leopard

Si je suis depuis toujours sur plateforme PC, je suis passé depuis quelques mois à Linux, Ubuntu 7.10 Gutsy Gibbon pour être plus précis. Ce qui me plait dans cet OS, c’est que tout est configurable, ce qui peut être un peu perturbant quand on vient de Windows où on ne peut quasiment rien faire pour changer l’interface.
Ubuntu permet en revanche de tout customiser : fond d’écran (bien sûr), pointeur de souris, icônes, thèmes, barres de menus, tout y passe pour peu que l’on s’en donne un peu la peine. Et les effets générés par Compiz Fusion s’ajoute à ces modifications : cube 3D, animations des fenêtres, …

Donc, ma chérie m’ayant fait savoir que le fond d’écran standard était particulièrement laid, je me suis mis à chercher en quoi modifier mon PC. Et puis là, j’ai décidé de le transformer en Mac. Monsieur Jobs vends des produits très (trop) chers, mais qui ont l’avantage certain d’être beaux. Alors autant copier quelque chose qui ait de la gueule.

Nous allons donc transformer notre Gustsy en joli OS X Leopard. Ce qui peut se faire facilement (je le sais, je l’ai fait sur mes 2 bécanes), principalement en jouant sur l’apparence basique de l’interface avec des changements d’icônes et de thèmes. Je vous conseille d’ailleurs le site Gnome Look qui est une mine et une référence incontournable.

La procédure qui suit est bien sûr applicable à tout ce que vous pouvez trouver sur ce site, vous pourrez mixer si vous le voulez des bordures Mac avec des icônes Vista et un thème Ubuntu. Customisable, je vous dit.

Nous allons donc taper dans les thèmes GTK, et plus spécialement dans les Mac4Lin (lire Mac pour Linux quoi). Vous pouvez trouver tous les packages sur sourceforge, mais nous allons les prendre un par un sur Gnome Look

  1. Télécharger le thème principal Mac4Lin version 0.4 GTK Metacity theme
  2. Télécharger le thème des icônes Mac4Lin version 0.4 GTK Icon theme
  3. Dans le menu « Système », choisir « Préférences » puis « Apparence ».
  4. Dans l’onglet « Thème », faire un drag & drop du fichier de thème. Aller dans personnaliser et dans l’onglet thème, choisir Mac4Lin.
  5. Faire la même chose avec le pack d’icônes. Si on vous demande d’appliquer le changement, cliquez sur OK.

Voilà à quoi devrait ressembler les menus et les barres d’outils.

bureauappliraccourcis

preferencesFF

Bonne customisation.