Voir ce post sur le forum :
C'est le script modèle destiné à faire l'objet de vos modifications.
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.
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 :
#!/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 }
update-grub
Et la configuration du /boot/grub/grub.cfg
est à jour avec cette nouvelle distribution dans les lignes du grub.
grub.cfg
directement.
Merci pour ce test et pour son amicale collaboration à TechDesk sur le salon #debianfr !
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 :
#!/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 }
update-grub
Et la configuration du /boot/grub/grub.cfg
est à jour avec cette nouvelle distribution dans les lignes du grub.
grub.cfg
directement.
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 :
#!/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
update-grub
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 :
#!/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 }
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
#!/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 }
update-grub
Yep !
Venu de Clem sur le forum ici :
http://debian-facile.org/forum/viewtopic.php?pid=19323#p19323
Une fois faite la désinstallation d'un système en dualboot, on opère sa suppression dans la liste du GRUB par la mise à jour.
Soit :
update-grub
Merci qui ?
Merci raleur !