Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

GRUB 2 : scripts systèmes

/etc/grub.d/40_custom

C'est le script modèle destiné à faire l'objet de vos modifications.

Par défaut il ne contient rien !

On le copie et on lui donne un chiffre et un nom différent, puis on y intégre un script spécifique ou une entrée supplémentaire pour un système qui ne serait pas détecté par la commande :

os-prober

On peut créer ses propres scripts et leurs attribuer un préfixe libre afin de déterminer l'ordre d'exécution.

Veillez à ce que les nouveaux scripts soient exécutables !

ATTENTION !
Les distributions autres que DEBIAN n'ont pas vocation ici d'être maintenues à jour par nos membres !
Les indications les concernant sont donc formulées à titre d'exemple seulement.

Ajouter un système Archlinux

Il peut arriver qu'en ajoutant un second système linux, il y ait un méli mélo entre les partitions des 2 systèmes en configuration automatique.

Ainsi, bien que la distribution d'une archlinux fraîchement ajoutée soit correctement trouvée et la ligne d'ouverture visible, il y a la possibilité d'une confusion entre les boot de debian et celui de arch qu'il faut corriger manuellement.

Voir, cette installation de archlinux mise en exemple ou le boot trouvé automatiquement par grub2 était celui de debian sur /dev/sda6 et non celui de arch sur /dev/sda7 !

Pour ajouter un système archlinux sur la partition /dev/sda7 par exemple :

On pourra créer :

cp /etc/grub.d/40_custom /etc/grub.d/10_archlinux

Et y copier le script :

fichier.txt
    #!/bin/sh
    exec tail -n +3 $0
    # This file provides an easy way to add custom menu entries.  Simply type the
    # menu entries you want to add after this comment.  Be careful not to change
    # the 'exec tail' line above.
 
 
    menuentry "ArchLinux" {
            set root=(hd0,6)
            linux /boot/vmlinuz-linux root=/dev/sda6 ro
            initrd /boot/initramfs-linux.img
    }

Mettre à jour le grub :

update-grub

Et la configuration du /boot/grub/grub.cfg est à jour avec cette nouvelle distribution dans les lignes du grub.

Sans que nous ayons à intervenir dans le fichier grub.cfg directement.

Merci pour ce test et pour son amicale collaboration à TechDesk sur le salon #debianfr ! :-)

Ajouter un système Ubuntu

Pour ajouter un système Ubuntu Jaunty sur /dev/sdc1 par exemple :

Pour ajouter la même entrée pour Ubuntu, après les entrées par défaut mais avant les systèmes détectés par 40_os-prober et l'entrée de memtest, on pourra créer :

cp /etc/grub.d/40_custom /etc/grub.d/11_ubuntu-jaunty

Et y copier le script :

fichier.txt
#!/bin/sh
exec tail -n +3 $0
# This file is an example on how to add custom entries
#
 
#Ubuntu Jaunty sur /dev/sdc1
menuentry "Ubuntu (on /dev/sdc1)" {
        set root=(hd2,1)
        linux   /vmlinuz root=/dev/sdc1 ro quiet silent
        initrd  /initrd.img
}

Mettre à jour le grub :

update-grub

Et la configuration du /boot/grub/grub.cfg est à jour avec cette nouvelle distribution dans les lignes du grub.

Sans que nous ayons à intervenir dans le fichier grub.cfg directement.

Ajouter un système Windows

Dans cet exemple, le boot et la racine de windows se trouve sur : /dev/hda1.

Pour ajouter une distribution non reconnue par os_prober au démarrage, vous copiez et renommer le fichier 40_custom ainsi :

cp /etc/grub.d/40_custom /etc/grub.d/36_windows

Il vous revient de mettre un chiffre intermédiaire à votre convenance…

Ensuite, vous l'éditez :

nano /etc/grub.d/36_windows

Et vous y ajoutez sous les lignes déjà écrites les renseignements nécessaire entre deux balises EOF (EndOfFile).

Pour mon exemple d'un windows en /dev/hda1 :

fichier.txt
#!/bin/sh
exec tail -n +3 $0
# This file is an example on how to add custom entries
#
 
# WINDOWS
EOF
menuentry     "Windows"
{
              set root=(hd0,1)
              chainloader +1
}
EOF

Mettre à jour le grub :

update-grub

Ajouter un système personnel : Studio

Un exemple d'entrée /etc/grub.d/12_studio avec chainage, grub-set-default (ou grub-reboot) et retour sur l'entrée par défaut de grub2.

Editez :

nano /etc/grub.d/12_studio

Ecrire :

fichier.txt
#!/bin/sh
exec tail -n +3 $0
# studio
menuentry "Studio" {
    search --fs-uuid --set 929247df-0ca7-46d3-b1d0-8e7fc1bca0b3
    chainloader +1
    saved_entry=0
    save_env saved_entry
}

Mettre à jour le grub :

update-grub

Offert et corrigé par phlinux de ses mimines mêmes, vrai !

Sur le forum là : http://debian-facile.org/forum/viewtopic.php?pid=19319#p19319

Ajouter un système personnel : Fedora

fichier.txt
#!/bin/sh
exec tail -n +3 $0
#Fedora12 sur /dev/sdXx 
insmod chain                # important a préciser pour le chainage
menuentry "Fedora12 (on /dev/sdXx)" { 
        set root=(hdX,x)  # la partition de boot vue par grub
        chainloader +1    # et forcément préciser qu'il s'agit d'un chainage
}

Mettre à jour le grub :

update-grub

Yep ! :-D

Venu de Clem sur le forum ici :
http://debian-facile.org/forum/viewtopic.php?pid=19323#p19323

1) N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/systeme/grub2/configuration-2.txt · Dernière modification: 23/07/2015 13:08 par milou

Pied de page des forums

Propulsé par FluxBB