Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
utilisateurs:frombenny:grub-pc [Le 08/10/2009, 12:16] frombenny |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Karmic amorçage}} | ||
- | ====== GRUB-PC ====== | ||
- | Installé par défaut depuis l'édition [[:karmic|9.10 Karmic Koala d'Ubuntu]], **Grub-pc** est le gestionnaire d'amorçage qui se lance juste après le [[http://www.commentcamarche.net/pc/bios.php3|BIOS]]. C'est lui qui va ensuite transmettre le relais à un système d'exploitation via un menu dans le cas d'un système dit multiboot. | ||
- | |||
- | Anciennement nommé [[:Grub2]], c'est une réécriture complète du [[:grub|Grub 0,9x (renommé à cette occasion Grub Legacy)]]. | ||
- | |||
- | Son fonctionnement est très différent de [[:grub|grub-legacy]]. | ||
- | |||
- | ===== Installation ===== | ||
- | Pour les versions précédentes à Karmic, veuillez vous reporter à [[:Grub2|cette page]]. Sinon, il vous suffit d'installer ou réinstaller le paquet : [[apt://grub-pc]] | ||
- | |||
- | Ensuite, saisissez la commande : | ||
- | sudo grub-install /dev/sdX | ||
- | en remplaçant X par la lettre du disque sur lequel se trouve la partition /boot de votre système. Cette commande copiera tous les fichiers dont grub-pc a besoin dans le dossier /boot. Il lancera, par la même occasion, la commande "grub-mkconfig" qui générera le nouveau fichier grub.cfg (voir plus loin). | ||
- | |||
- | ===== Configuration ===== | ||
- | |||
- | ==== Liste des fichiers utilisés pour la configuration ==== | ||
- | |||
- | === Fichier utilisé par le système === | ||
- | * /boot/grub/**grub.cfg** : il est autogénéré par grub-mkconfig ou update-grub et **ne doit** donc **pas être modifié manuellement**.\\ C'est lui qui est lu au démarrage comme l'était menu.lst sur grub-legacy. | ||
- | |||
- | === Fichiers utilisés pour l'autoconfiguration === | ||
- | * /boot/grub/**device.map** : indique les disques sur lesquels grub-mkconfig ou update-grub cherchera une configuration d'amorçage (le disque principal et la clé USB ayant servi à l'installation d'Ubuntu par exemple) | ||
- | * /etc/default/**grub** : gère les valeurs par défaut de grub (délai de lancement, résolution d'affichage, splash/quiet, options par défaut des nouveaux noyaux,..) | ||
- | * les fichiers du dossier **/etc/grub.d/** | ||
- | * **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 de lancement du système sur lequel on est. | ||
- | * **20_memtest86+** | ||
- | * **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. | ||
- | |||
- | ==== Numérotation des disques ==== | ||
- | Pour linux, on a l'alphabet pour designer les disques durs physiques et une numérotation partant de 1 pour le numéro de la partition. Pour Grub-pc (à la différence de grub-legacy), on a une numérotation **démarrant de 0 pour les disques physiques** et **de 1 pour le numéro de la partition**. | ||
- | |||
- | Par exemple : | ||
- | * /dev/hd**a1** ou /dev/sd**a1** sera nommé hd(**0,1**) par grub-pc. | ||
- | * /dev/hd**c5** ou /dev/sd**c5** sera nommé hd(**2,5**) par grub-pc. | ||
- | |||
- | Une petite gymnastique (a-> 0, b-> 1, c-> 2,..) reste à faire pour les disques physiques. | ||
- | |||
- | ==== Comportement général du menu : /boot/default/grub ==== | ||
- | Éditez le fichier des valeurs par défaut de grub avec la commande : | ||
- | sudo gedit /etc/default/grub | ||
- | |||
- | * **GRUB_DEFAULT=0** correspond au menu qui sera sélectionné par défaut (pour lancer Windows par défaut, il faudra modifier cette valeur). | ||
- | * **#GRUB_HIDDEN_TIMEOUT=0** le # sera enlevé si on veut cacher l'affichage du menu (cas où l'on n'a qu'un seul système sur le disque ou lorsque ce grub est lancé via un chainloader). La durée en seconde permettra d'appuyer sur la touche echap pour voir le menu. | ||
- | * **GRUB_TIMEOUT=10** est la durée en seconde de l'affichage du menu avant de se lancer sur le menu sélectionné par défaut. | ||
- | * **GRUB_DISTRIBUTOR=""**, **GRUB_CMDLINE_LINUX_DEFAULT=""** et **GRUB_CMDLINE_LINUX=""** sont des comportements prédéfinis qui affecteront le lancement des systèmes d'exploitation détectés automatiquement. | ||
- | * **#GRUB_DISABLE_LINUX_UUID=true** : si vous enlevez le # devant, grub-pc ne gèrera plus les disques avec leur immatriculations UUID mais avec leur nom /dev/sdXX (dangereux car cette numérotation peut évoluer si une partition est supprimée ou déplacée). | ||
- | * **#GRUB_DISABLE_LINUX_RECOVERY="true"** : si votre système est stable et si vous n'utilisez jamais les lignes "Recovery" des menus, vous pouvez enlever le #. | ||
- | |||
- | ==== Configuration automatique : génération du fichier grub.cfg ==== | ||
- | sudo grub-mkconfig | ||
- | |||
- | ==== Configuration manuelle ==== | ||
- | === Pré-requis === | ||
- | Commencer par générer un grub.cfg à jour avec la commande : | ||
- | sudo grub-mkconfig | ||
- | |||
- | Cela vous sera utile pour la suite. | ||
- | |||
- | === Pour ne faire apparaître qu'un seul noyau pour le système principal === | ||
- | FIXME Pas trouvé d'équivalent à l'option # howmany=1 qui existait dans grub-legacy | ||
- | |||
- | La seule solution trouvée à ce jour est la désinstallation des noyaux superflus dans Ubuntu en les déplaçant vers un dossier old. | ||
- | sudo nautilus /boot | ||
- | |||
- | === Pour ne plus faire apparaître le Memtest86 === | ||
- | Renommer le fichier 20_memtest86+ (que vous pourrez ainsi à son nom d'origine en cas de changement d'avis) : | ||
- | sudo mv /etc/grub.d/20_memtest86+ /etc/grub.d/zz20_memtest86+ | ||
- | |||
- | === Pour ne plus déclencher la détection automatique des autres systèmes installés === | ||
- | Renommer le fichier 30_os-prober (que vous pourrez ainsi à son nom d'origine en cas de changement d'avis) : | ||
- | sudo mv /etc/grub.d/30_os-prober /etc/grub.d/zz30_os-prober | ||
- | |||
- | === Pour définir vos paramètres personnalisés === | ||
- | Éditez le fichier grub.cfg généré plus haut et le fichier 40_custom : | ||
- | sudo gedit /boot/grub/grub.cfg /etc/grub.d/40_custom | ||
- | |||
- | Copier ce que vous trouverez entre | ||
- | ### BEGIN /etc/grub.d/30_os-prober ### | ||
- | et | ||
- | ### END /etc/grub.d/30_os-prober ### | ||
- | |||
- | du menu grub.cfg vers 40_custom. Puis modifiez les paramètres à votre guise. | ||
- | === Pour appliquer cette nouvelle configuration === | ||
- | sudo grub-mkconfig | ||
- | |||
- | Puis, relancez votre machine. | ||
- | |||
- | ===== Problèmes les plus courants ===== | ||
- | ==== Message d'erreur concernant un périphérique externe introuvable ==== | ||
- | Cela se produit avec grub-install ou grub-mkconfig. L'erreur est due aux supports déclarés dans /boot/grub/device.map. | ||
- | * soit vous éditez le fichier manuellement avec "sudo gedit /boot/grub/device.map", | ||
- | * soit vous lancez la commande "sudo grub-mkdevicemap" | ||
- | |||
- | ==== Restauration de grub-pc lorsque le MBR est occupé par un autre gestionnaire d'amorçage ==== | ||
- | Booter sur un système contenant grub-pc par défaut (par exemple le live-CD de Karmic ou versions suivantes) puis saisissez la commande : | ||
- | sudo grub-install /dev/sdX | ||
- | en remplaçant X par la lettre du disque sur lequel se trouve la partition /boot de votre système. | ||
- | FIXME (non testé) | ||
- | |||
- | ===== Cas particuliers ===== | ||
- | ==== Pour le lancer depuis Grub-Legacy ==== | ||
- | En plaçant ces lignes (avec l'UUID correspondant à la partition souhaitée) dans le menu.lst d'un Grub-Legacy, on pourra le lancer Grub-pc dans un deuxième temps. | ||
- | <code>title Karmic via GRUB-pc | ||
- | uuid 70e29811-71a3-4553-a16c-1cce2ff334ed | ||
- | kernel /boot/grub/core.img</code> | ||
- | |||
- | ==== Changer les couleurs ou le fond d'écran du menu ==== | ||
- | [[:tutoriel/grub-pc thème|Tutoriel concernant le thème du menu]] [[http://blog.nizarus.org/2009/07/changement-de-limage-darriere-plan-de-grub-2]] | ||
- | |||
- | ==== Autres cas particuliers ==== | ||
- | * [[http://www.linuxpedia.fr/doku.php/expert/boot_ubuntu_iso_grub2|Installer Ubuntu à partir d'une image ".iso" avec grub-pc]] | ||
- | * chainloader | ||
- | <code>set root=(hd0,2) | ||
- | chainloader +1 | ||
- | boot</code> | ||
- | ===== Liens externes ===== | ||
- | * [[http://grub.enbug.org/FrontPage|Wiki grub-pc]] | ||
- | * [[http://grub.enbug.org/CommandList|Liste des commandes de grub-pc]] | ||