Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
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 Prochaine révision Les deux révisions suivantes | ||
doc:systeme:grub2:detail [23/03/2013 06:13] smolski |
doc:systeme:grub2:detail [26/08/2015 18:35] milou [Configuration] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== GRUB2 ====== | + | ====== GRUB 2 (vision d'ensemble) ====== |
- | Le chargeur d'amorçage version 2 (Depuis la version de la branche **squeeze**). | + | * Objet : GRUB 2, le chargeur d'amorçage version 2 (présent à partir de **squeeze**). |
+ | * Niveau requis : {{tag>avisé}} | ||
+ | * Commentaires : //installation et configuration de GRUB 2 lorsqu'un autre bootloader est présent, en particulier GRUB Legacy. // | ||
+ | * Suivi : {{tag>à-tester}} | ||
+ | * Créé par [[user>smolski]] le 16/02/2010 | ||
+ | * Mise à jour par **...** le ... | ||
+ | * Testé par **...** le ... | ||
+ | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=130655#p130655 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
- | ===== Présentation générale ===== | + | ===== Présentation ===== |
- | Le code de **GRUB** est toujours maintenu, mais il n'y aura plus d'ajout de | + | Le code de grub2 est le seul maintenu et il n'y aura plus d'ajout de nouvelles fonctionnalités à grub (Legacy) premier du nom. |
- | nouvelles fonctionnalités à Grub (Legacy) premier du nom. | + | |
- | Le code de **GRUB2** a fait l'objet d'une réécriture complète. \\ | + | Le code de grub2 a fait l'objet d'une réécriture complète. \\ |
- | L'installation est divisée en plusieurs modules qui sont destinés à différentes | + | L'installation est divisée en plusieurs modules qui sont destinés à différentes architectures et plateformes, avec une base commune. |
- | architectures et plateformes, avec une base commune. | + | |
- | //Exit// les écritures directement dans un fichier, mais configuration au petit poil grâce aux commandes et aux scripts personnalisés propre à **GRUB2**. | + | //Exit// les écritures directement dans un fichier, mais à la place une configuration au petit poil grâce aux commandes et aux scripts personnalisés propre à grub2. |
- | Au cœur du fonctionnement de **GRUB2** on trouve : | + | Au cœur du fonctionnement de grub2 on trouve : |
- L'image amorçable « boot.img » | - L'image amorçable « boot.img » | ||
- Le mini-initrd “core.img” | - Le mini-initrd “core.img” | ||
Ligne 21: | Ligne 26: | ||
* des ''multiboot'' | * des ''multiboot'' | ||
* des ''systèmes non-GNU/Linux'' | * des ''systèmes non-GNU/Linux'' | ||
- | * des partitionnements variés, par exemple utilisant ''raid'' et/ou ''lvm'' rendant disponible les volumes de ce types __dès le menu__ Grub ! | + | * des partitionnements variés, par exemple utilisant //raid// et/ou //lvm// rendant disponibles les volumes de ce types __dès le menu__ grub ! |
- | ===== INSTALLATION - CD ===== | + | ===== Installation ===== |
- | Lors de l'installation, GRUB ne sera pas effacé du secteur d'amorçage (MBR) du disque, GRUB2 sera ''chaîné'' à partir du GRUB déjà existant pour permettre de vérifier que tout fonctionne correctement. | + | Lors de l'installation, grub ne sera pas effacé du secteur d'amorçage (MBR) du disque, grub2 sera //chaîné// à partir du grub déjà existant pour permettre de vérifier que tout fonctionne correctement. |
Au démarrage suivant il faudra choisir dans le menu grub habituel l'entrée commençant par : | Au démarrage suivant il faudra choisir dans le menu grub habituel l'entrée commençant par : | ||
Ligne 31: | Ligne 36: | ||
"chainload into grub2 on …”. | "chainload into grub2 on …”. | ||
- | Si tout se passe bien, il est temps de faire totalement le remplacement de GRUB par GRUB2, en exécutant la commande sous root : | + | Si tout se passe bien, il est alors temps de faire totalement le remplacement de grub par grub2, en exécutant la commande : |
- | + | <code root>upgrade-from-grub-legacy</code> | |
- | # upgrade-from-grub-legacy | + | |
Après cela : | Après cela : | ||
- | - GRUB2 sera installé dans le secteur d'amorçage | + | - grub2 sera installé dans le secteur d'amorçage |
- Le fichier **/boot/grub/grub.cfg** prendra le relai de **/boot/grub/menu.lst**. | - Le fichier **/boot/grub/grub.cfg** prendra le relai de **/boot/grub/menu.lst**. | ||
- | **/boot/grub/menu.lst** reste présent pour servir de référence, il peut aussi être supprimé maintenant. | + | **/boot/grub/menu.lst** reste présent pour servir de référence, cependant, il peut maintenant être supprimé. |
=== Nota : === | === Nota : === | ||
- | Sur certaines distribution (Ubuntu Hardy) la procédure est un peu différente. \\ | + | Sur certaines distributions((Ubuntu Hardy)) la procédure est un peu différente. \\ |
- | Pour basculer sur GRUB2 définitivement il faut l'installer sur le **mbr** en utilisant la commande ''grub-install''. | + | Pour basculer sur grub2 définitivement il faut l'installer sur le **mbr** en utilisant la commande : |
+ | <code root>grub-install</code> | ||
- | ===== COMMANDES DE GRUB2 ===== | + | ===== Commandes ===== |
- | L'utilisation des commandes spécifiques de **GRUB2** devient __la ligne de conduite obligée__ pour : | + | L'utilisation des commandes spécifiques de grub2 devient __la ligne de conduite obligée__ pour le fonctionnement de grub2 : |
- configurer, | - configurer, | ||
- réparer, | - réparer, | ||
- | - administrer | + | - administrer. |
- | le fonctionnement de **GRUB2**. | + | * [[:doc:systeme:grub2:commande | Les commandes de grub2]] |
- | * [[manuel:grub2_commande | Les commandes de grub2]] | + | ===== Configuration ===== |
- | ===== CONFIGURATION ===== | + | * Pour grub, la configuration consistait à retoucher les entrées du fichier ''menu.lst'' directement. |
- | + | * Avec grub2 on intervient sur __un ensemble de fichiers de configuration__ qui seront //sourcés// au moment de la génération du **grub.cfg** (à la manière du //sources.list// pour [[:doc:systeme:apt]]). | |
- | Pour **GRUB**, la configuration consistait à retoucher les entrées du fichier ''menu.lst'' directement. | + | |
- | + | ||
- | Avec **GRUB2** on intervient sur __un ensemble de fichiers de configuration__ qui seront ''sourcés'' au moment de la génération du ''grub.cfg'' (//à la manière du //''sources.list''// pour ''apt''//). | + | |
- | + | ||
- | La configuration modulaire est basée sur des scripts personnels et/ou modifiables. | + | |
+ | La configuration modulaire est basée sur des scripts personnels et/ou modifiables. \\ | ||
**Procédure :** | **Procédure :** | ||
- | |||
- Créer un script (basé sur les modèles fournis), | - Créer un script (basé sur les modèles fournis), | ||
- Le copier dans le répertoire correspondant (par exemple **/etc/grub.d/**), | - Le copier dans le répertoire correspondant (par exemple **/etc/grub.d/**), | ||
- | - Mettre à jour le fichier ''/boot/grub/grub.cfg''. (Voir Commande : ''grub-mkconfig'' ) | + | - Mettre à jour le fichier ///boot/grub/grub.cfg// (''update-grub''). |
- | <note important>Toute modification éditer directement dans le ''grub.cfg'' __sera écrasée__ lors des appels automatiques à **update-grub** ou **grub-mkconfig**.</note> | + | <note important>Toute modification éditée directement dans le //grub.cfg// __sera écrasée__ lors des appels automatiques à **update-grub** ou **grub-mkconfig**.</note> |
== NOTA : == | == NOTA : == | ||
- | **GRUB2** numérote les disques à partir de ''0'' (zero) mais les partitions sont maintenant numérotées à partir de un ''1'' et non plus de zéro ''0''. | + | **grub2** numérote les disques à partir de 0((zero)) mais les **partitions** sont maintenant numérotées __à partir de un__ et non plus de zéro ! |
+ | |||
+ | Donc, pour la première partition du premier disque qui était pour **grub** : | ||
+ | (hd0,0) | ||
- | Donc, pour la première partition du premier disque : | + | devient pour **grub2** : |
- | * pour **GRUB** : ''(hd0,0)'' | + | (hd0,1) |
- | devient : | + | |
- | * pour **GRUB2** : ''(hd0,1)'' | + | |
==== Résolution ==== | ==== Résolution ==== | ||
- | GRUB2 supporte des images de plus haute résolution. Et même, au stade | + | grub2 supporte des images de plus haute résolution. Et même, au stade |
expérimental, la vidéo paraît-il ! | expérimental, la vidéo paraît-il ! | ||
==== Shell ==== | ==== Shell ==== | ||
- | GRUB2 propose aussi un environnement “shell” (console) développé, avec notamment : | + | grub2 propose aussi un environnement “shell” (console) développé, avec notamment : |
* des fonctions de recherche, | * des fonctions de recherche, | ||
* un support des boucles, | * un support des boucles, | ||
Ligne 101: | Ligne 102: | ||
==== MODULE : GRUB - Détail==== | ==== MODULE : GRUB - Détail==== | ||
- | Dans un terminal root, taper : | + | Dans un terminal, taper : |
- | # nano /etc/default/grub | + | <code root>nano /etc/default/grub</code> |
Vous y lisez : | Vous y lisez : | ||
Ligne 173: | Ligne 174: | ||
* etc... | * etc... | ||
- | Voir ici : [[manuel:modules_configuration#tp_-_option_par_defaut_quiet_et_vga_791 | TP - Utilisation de la configuration par DEFAUT]]. | + | Voir ici : [[:doc:systeme:noyau:configuration-des-modules#tp_-_option_par_defaut_quiet_et_vga_791 | TP - Utilisation de la configuration par DEFAUT]]. |
- | === GRUB_GFXMODE - la Resolution === | + | === GRUB_GFXMODE - La Résolution === |
Permet de choisir la résolution du terminal graphique ''gfxgrub'' lorsqu'il est utilisé. | Permet de choisir la résolution du terminal graphique ''gfxgrub'' lorsqu'il est utilisé. | ||
Tout d'abord, pour connaître les modes supportés par votre carte vidéo, vous pouvez utiliser le programme (à installer si absent) **hwinfo** : | Tout d'abord, pour connaître les modes supportés par votre carte vidéo, vous pouvez utiliser le programme (à installer si absent) **hwinfo** : | ||
- | + | <code root>hwinfo --framebuffer</code> | |
- | # hwinfo --framebuffer | + | |
Pour être certain que la résolution sera disponible on peut passer par un shell grub lors du démarrage. | Pour être certain que la résolution sera disponible on peut passer par un shell grub lors du démarrage. | ||
- | - Passer en mode édition avec la touche [e], | + | - Passer en mode édition avec la touche <key>e</key> |
- | - puis [ctrl][c] pour passer sur le shell grub, | + | - puis <key>C-c</key> pour passer sur le shell grub, |
- | - [esc] pour en sortir). | + | - <key>Echap</key> pour en sortir). |
Dans le shell grub, pour connaître la liste des résolutions disponibles, on tape : | Dans le shell grub, pour connaître la liste des résolutions disponibles, on tape : | ||
Ligne 234: | Ligne 234: | ||
Il n'y a normalement aucune raison de modifier ce script. | Il n'y a normalement aucune raison de modifier ce script. | ||
- | On y trouve des fonction d'évaluation des variables contenu dans le | + | On y trouve des fonctions d'évaluation des variables contenu dans le |
**/etc/default/grub**, afin de les passer au **grub.cfg** | **/etc/default/grub**, afin de les passer au **grub.cfg** | ||
Ligne 261: | Ligne 261: | ||
==== /etc/grub.d/05_debian_theme ==== | ==== /etc/grub.d/05_debian_theme ==== | ||
- | Ce sera spécifique à votre distribution. \\ | + | Ce sera spécifique à votre distribution. |
Il gère les éléments du thème graphique utilisé, comme l'image de fond du menu GRUB2 et les couleurs des polices. | Il gère les éléments du thème graphique utilisé, comme l'image de fond du menu GRUB2 et les couleurs des polices. | ||
Ligne 267: | Ligne 268: | ||
<note important>ATTENTION ! Consulter aussi le //précédent// script de configuration pour la résolution, là : \\ | <note important>ATTENTION ! Consulter aussi le //précédent// script de configuration pour la résolution, là : \\ | ||
- | **GRUB_GFXMODE - la Resolution**</note> | + | **GRUB_GFXMODE - La Résolution**</note> |
Pour spécifier un chemin vers une image particulière on pourra modifier la partie concernant le thème par défaut : | Pour spécifier un chemin vers une image particulière on pourra modifier la partie concernant le thème par défaut : | ||
Ligne 351: | Ligne 352: | ||
<note important>Veillez à ce que le script créé soit exécutable.</note> | <note important>Veillez à ce que le script créé soit exécutable.</note> | ||
- | Voir des TP d'utilisation ici : [[manuel:scripts_configuration | Ajouter des distributions variées]] | + | Voir des TP d'utilisation ici : [[:doc:systeme:grub2:configuration-2 | Ajouter des distributions variées]] |
===== FICHIER grub.cfg ===== | ===== FICHIER grub.cfg ===== | ||
Ligne 374: | Ligne 375: | ||
===== GRUB2 et ext4 ===== | ===== GRUB2 et ext4 ===== | ||
- | Le système de fichier **ext4**, fait son apparition dans plusieurs | + | Le système de fichier **ext4**, fait son apparition dans plusieurs distributions. |
- | distributions. | + | |
Sur Debian vous pouvez démarrer directement sur une partition système en **ext4** à partir de Squeeze. | Sur Debian vous pouvez démarrer directement sur une partition système en **ext4** à partir de Squeeze. | ||
- | + | Si vous utilisez grub((ou une version plus ancienne de grub2)) vous devez avoir une partition **/boot** séparée, formatée en **ext3**. | |
- | Si vous utilisez GRUB (ou une version plus ancienne de GRUB2) vous devez avoir une partition **/boot** séparée, formatée en **ext3**. | + | |
- | Voir le tuto pour plus de renseignements encore : \\ | + | Voir le tuto pour plus de renseignements : \\ |
http://www.linuxpedia.fr/doku.php/expert/grub2 | http://www.linuxpedia.fr/doku.php/expert/grub2 | ||
:-P :-P :-P | :-P :-P :-P |