# Comment grub peut sauver le monde

**URL:** <https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196>\
**Category:** Trucs et Astuces\
**Created:** [Février 20, 2016, 4:38 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196 "2016-02-20T16:38:06Z")\
**Posts on this page:** 14\
**Page:** 2

<div class="post-metadata">

**Author:** ![SGC.Alex](https://www.debian-fr.org/user_avatar/www.debian-fr.org/sgc.alex/32/9386_2.png) [@SGC.Alex](https://www.debian-fr.org/u/SGC.Alex)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/21 "2016-02-20T16:39:26Z")

</div>

> [@](#):
>
> @SGC.Alex : J’avoue ne pas avoir étudié toute la théorie de la chose, je vais chercher plus en détail.

Tiens merci c’est gentil ! J’ai eu beau cherché partout sur le net, je galère… 😉 La seule autre solution que j’ai vue qui permettrait d’avoir GeeXboX dans le GRUB c’est de l’installer sur le disque. Franchement c’est mieux si on peut se permettre de simplement copier un fichier iso à chaque nouvelle version, non ? ![:mrgreen:](https://www.debian-fr.org/uploads/default/original/1X/cc83e9b583138e48ff45f96609046b06d06c7f9d.gif "Mr. Green")

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/22 "2016-02-20T16:39:27Z")

</div>

Bon je suis dans mes tests et je viens de voir que ça fonctionne pas avec la netinstal de Debian, il boot comme il faut mais il cherche le CD pendant l’installation …

Une autre solution qui semble marcher mieux c’est de copier le contenu de l’iso dans une partition.

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/23 "2016-02-20T16:39:31Z")

</div>

J’ai voulu aussi tester cette astuce qui est interressante, mais comme j’ai une partition /boot de 128, j’ai copier le noyau vmlinux dans ma partiton qui est monté dans /home qui se nomme /dev/sdc7 ainsi que l’initr et l’archive iso.

Dans grub j’ai mis:

label Live  
root (hd0,6)  
kernel /vmlinuz root=/dev/sda7 ro  
initrd /initrd.img  
savedefault

Sa boot mais pas plus loin l’initram. Mais il doit bien y avoir un moyen de booter sans decompresser l’iso.  
Et je ne vois pas pourquoi il faudrai mettre l’iso dans /boot.

Ps: j’ai essayer avec la nouvelle ubuntu.

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/24 "2016-02-20T16:39:34Z")

</div>

> [@](#):
>
> Et je ne vois pas pourquoi il faudrai mettre l’iso dans /boot.

Ça n’est en rien une obligation mais je ne sais pas si on peut metre l’iso autre part qu’à la racine d’une partition.

Je met l’iso dans /boot pour pouvoir faire mes installation directement (chose qui ne marche pas avec Debian d’ailleurs).

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/25 "2016-02-20T16:39:35Z")

</div>

Ok d’accord, moi j’ai mis le .iso a la racine de ma partition montée dans /home. Mais ca bloque sur l’initrd. Je ne comprend pas comment la procedure de boot peut comprendre qu’il devrait monter l’iso est booter dessus. Tu modifie autre chose? Le fichier linuxrc par exemple?

---

<div class="post-metadata">

**Author:** ![MisterFreez](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/bb73d2/32.png) [@MisterFreez](https://www.debian-fr.org/u/MisterFreez)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/26 "2016-02-20T16:39:37Z")

</div>

Non est je suis toujours à la recherche du pourquoi ça fonctionne ❓

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/27 "2016-02-20T16:39:37Z")

</div>

oui moi aussi, et c’est encore plus étrange si tu me dis que tu copie le .iso dans ta partition /boot ainsi que vmlinuz et l’initrd ca marche, et que moi je le met dans ma partition /home ca ne marche pas 😮 .

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:39 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/28 "2016-02-20T16:39:47Z")

</div>

Je capte vraiment pas comment l’initram peut monter l’iso et booter dessus…

```auto
(initramfs)mkdir /test
(initramfs) modprobe loop
 loop: module loader
(initramfs)mount /root/ubuntu.iso /test
mount: Couldn't setupe loop device
mount: Mounting (null) on /test/ failed: No such file or directory
(initramfs)
```

C’est bien l’iso de la derniere ubuntu que tu as réussi à booter dessus?

En plus lor du boot le script init par en sucette:

```auto
Mouting /sys on /root/sys failed: no such device or directory..
```

Normal vu qu’on est dans ma home, il faudrai monter l’iso dans /root pour que ca marche.

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 4:40 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/29 "2016-02-20T16:40:22Z")

</div>

Tu as plusieurs façons de bouter sur un CD:

1. L’initrd contient un système de fichiers complet et suffisant: C’est le cas de la plupart des CDs d’installations ou de réparation. Il te faut faire un système minimaliste. Busybox est là pour ça. Tu peux voir par exemple [http://franboisson.free.fr/Isos/BootCD-2.6-shell.iso](http://franboisson.free.fr/Isos/BootCD-2.6-shell.iso)

2. L’initrd se contente de chercher une racine et de la monter. Cette racine est en général un fichier cloop ou équivalent sur le CD. L’initrd contient un script qui cherche un CDROM avec le bon fichier dessus (c’est comme ça que j’ai fait par exemple). On peut chercher ce fichier partout. Personnellement, je charge le support USB puis cherche une éventuelle clef USB, puis je cherche un éventuelle CDROM IDE et enfin je charge tous les modules SATA (sans finesse sur ce coup) et je cherche un éventuel CDROM SATA.

3. L’initrd récupère l’arborescence du CD et raccroche les fichiers à son arborescence. Je ne connais pas bien cette méthode.

Le problème est que lors du boute (boot), le BIOS est utilisé pour charger le noyau et éventuellement un fichier (l’initrd) puis, dès que le contrôle est passé au noyau, celui ci ne peut plus utiliser ce BIOS (donc lire sur l’unité de boute) ni même savoir sur quelle unité il a bouté (il a quand même accès à la chaine d’appel de lilo/grub/isolinux).

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:40 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/30 "2016-02-20T16:40:33Z")

</div>

Busybox est bien installer dans cette initrd, je devrai pas avoir de soucis pour booter sur l’iso si je pouvais la monter, non?

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 20, 2016, 4:40 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/31 "2016-02-20T16:40:34Z")

</div>

Regardes ce que fait le programme /linuxrc de l’initrd

---

<div class="post-metadata">

**Author:** ![bloodaxe70](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ecae2f/32.png) [@bloodaxe70](https://www.debian-fr.org/u/bloodaxe70)\
**Post date:** [Février 20, 2016, 4:41 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/32 "2016-02-20T16:41:42Z")

</div>

J’ai regarder le script init (pas de linuxrc, mais il le remplace), ainsi que les scripts qu’il appelle dans /scripts. Y a rien qui me saute au yeux expliquant pourquoi ca marcherai de booter sur un iso. Surtout si on ne peut le monter.

---

<div class="post-metadata">

**Author:** ![gbx](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/71c47a/32.png) [@gbx](https://www.debian-fr.org/u/gbx)\
**Post date:** [Février 20, 2016, 4:47 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/33 "2016-02-20T16:47:42Z")

</div>

> [@](#):
>
> Bon, je viens d’essayer avec une GeeXboX… Dommage ça n’marche pas ; ne pas démarrer une Debian complète pour lire un DVD ç’aurait été la classe, par exemple…

J’ai copié le répertoire GEEXBOX de l’iso dans la racine (garde le répertoire sinon y en a partout c’est pas propre), rajouté l’entrée pour GEEXBOX dans le menu et copié les fichiers initrd et vmlinuz dans le répertoire /boot.

et puis je viens de revoir ton code pour l’initrd… tu essaies de charger depuis le cdrom, mais t’en as pas. Pour info voila le mien (de tete, la chuis au boulot), j’utilise la télécommande MS media center (je sais c’est le mal tout ca).

`title	GeeXboX
root	(hd0,0)
kernel	/vmlinuz root=/dev/ram0 rw init=linuxrc boot=sda1 lang=fr splash=silent vga=788 keymap=azerty remote=mceusb receiver=mceusb2 video=vesafb:ywrap,mtrr
initrd /initrd.gz
boot`

---

<div class="post-metadata">

**Author:** ![msfk57](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/ed655f/32.png) [@msfk57](https://www.debian-fr.org/u/msfk57)\
**Post date:** [Février 20, 2016, 4:52 UTC](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196/34 "2016-02-20T16:52:44Z")

</div>

J’essaye d’installer UbuntuStudio à partir d’une Debian/Lenny, en vain.  
J’ai suivi le indications précédentes et ce site [http://www.nautile.org/Installer-une-distribution-sans.html](http://www.nautile.org/Installer-une-distribution-sans.html), mais le mount /dev/sda7 /cdrom me revoie “No such device” ou “Invalid argument”.  
Cela vient-il du fait que c’est un disque sda ? (pourtant il réussit bien à charger le noyau grâce a initrd).  
Quelqu’un a-t-il réussit a installer Ubuntu de cette façon ?

[Page précédente](https://www.debian-fr.org/t/comment-grub-peut-sauver-le-monde/10196.md?page=1)
