Ceci est une ancienne révision du document !



Cette page ne concerne qu'une des utilisations possibles de Grub2 dont la documentation détaillée est disponible ici.

Lancer des images iso directement depuis GRUB 2

Pour lancer une distribution linux sans avoir à graver sur Cd, les solutions existantes ont le plus souvent le recours à une clé USB :

Voici la procédure à suivre pour lancer vos isos présents sur le disque dur directement avec Grub 2. Ce type de lancement ne fonctionne pas dans toutes les distributions Linux. Le fonctionnement est aussi très différent d'une distribution à l'autre.

  • vous donner la possibilité de tester toutes les versions Ubuntu concernées par la documentation du site doc.ubuntu-fr.org sur un matériel non émulé,
  • vous donner nos expériences d'installation d'Ubuntu sans gravure sur CD,
  • vous donner la possibilité d'utiliser des isos de maintenance (Parted Magic, SytemRescueCD,..) depuis un menu Grub2,
  • vous donner les menus pour d'autres distributions que l'on peut lancer de la même façon (à titre d'exemples),..
  • Vérifier que la version de Grub (grub-install -v) est une version 1.97 ou supérieure.
  • Dans les exemples cités, la partition (hd0,7) soit /dev/sda7 est à adapter à votre propre configuration (voir notice ici).
  • les isos sont stockés à la racine de cette partition plutôt que dans un sous-dossier car plus facile à trouver pour grub.
  • Les menus sont à ajouter au fichier /etc/grub.d/40_custom. Ensuite, pour qu'ils soient activés dans grub :
    sudo update-grub
  • Les menus peuvent également être insérés dans le fichier /boot/grub/custom.cfg. Ils sont alors pris en compte sans avoir à mettre à jour le fichier /boot/grub/grub.cfg par la commande update-grub

Ubuntu ou ses dérivés

Cette configuration fonctionne aussi pour Linux Mint.

Voici le menu de base pour le lancement du CD Live avec prise en charge du français :

/etc/grub.d/40_custom_(extrait)
menuentry ".. Ubuntu 12.10 Quantal AMD64" {
    insmod loopback
    insmod iso9660
    set isofile="/ubuntu-12.10-desktop-amd64.iso"
    #recherche de la partition dans laquelle se trouve le fichier ISO et montage de celle ci dans "/"
    search -sf $isofile
    #Montage du fichier ISO dans (loop)/
    loopback loop $isofile
    echo	'Chargement du noyau Linux ...'
    linux (loop)/casper/vmlinuz locale=fr_FR bootkbd=fr console-setup/layoutcode=fr iso-scan/filename=$isofile boot=casper file=/cdrom/preseed/ubuntu.seed noprompt quiet splash --
    echo	'Chargement du disque mémoire initial ...'
    initrd (loop)/casper/initrd.lz
}

Adaptations pour Ubuntu

Article détaillé sur cette variante. CD : Lucid, Oneiric, Precise, Quantal. DVD : Lucid, Oneiric, Precise, Quantal. Versions de développement : Alpha, Beta,..1), Daily builds.
Selon votre configuration, il faudra adapter "(hd0,7)" en mettant le numéro de partition sur laquelle est votre iso. En fonction de la version à lancer, vous devrez aussi adapter "set isofile=" (nom et emplacement du fichier à lancer) ainsi :

  • Ubuntu Amd64 (français partiellement fonctionnel) :
    • Lucid (torrent) : set isofile="/ubuntu-10.04.4-desktop-amd64.iso"
    • Oneiric (torrent) : set isofile="/ubuntu-11.10-desktop-amd64.iso"
    • Precise (torrent) : set isofile="/ubuntu-12.04.2-desktop-amd64.iso"
    • Quantal (torrent) : set isofile="/ubuntu-12.10-desktop-amd64.iso"
  • Ubuntu i386 :
    • Lucid (torrent) : set isofile="/ubuntu-10.04.4-desktop-i386.iso"
    • Oneiric (torrent) : set isofile="/ubuntu-11.10-desktop-i386.iso"
    • Precise (torrent) : set isofile="/ubuntu-12.04.2-desktop-i386.iso"
    • Quantal (torrent) : set isofile="/ubuntu-12.10-desktop-i386.iso"
  • Ubuntu Amd64 DVD (le français y est fonctionnel) :
    • Lucid (torrent) : set isofile="/ubuntu-10.04.4-dvd-amd64.iso"
    • Oneiric (torrent) : set isofile="/ubuntu-11.10-dvd-amd64.iso"
    • Precise (torrent) : set isofile="/ubuntu-12.04.2-dvd-amd64.iso"
    • Quantal (torrent) : set isofile="/ubuntu-12.10-dvd-amd64.iso"

Pour Kubuntu

Article détaillé sur cette variante. CD : Lucid, Oneiric, Precise, Quantal. DVD : Lucid, Oneiric, Precise, Quantal. Versions de développement : Alpha, Beta,.., Daily builds.
Comme pour les versions Ubuntu, il faudra adapter "(hd0,7)" en fonction de la partition sur laquelle se trouve l'iso à lancer. Mais en plus, il faudra modifier "file=/cdrom/preseed/ubuntu.seed" en mettant kubuntu.seed au lieu de ubuntu.seed.

  • Kubuntu Amd64 :
    • Lucid (torrent) : set isofile="/kubuntu-10.04.4-desktop-amd64.iso"
    • Oneiric (torrent) : set isofile="/kubuntu-11.10-desktop-amd64.iso"
    • Precise (torrent) : set isofile="/kubuntu-12.04.2-desktop-amd64.iso"
    • Quantal (torrent) : set isofile="/kubuntu-12.10-desktop-amd64.iso"
  • Kubuntu i386 :
    • Lucid (torrent) : set isofile="/kubuntu-10.04.4-desktop-i386.iso"
    • Oneiric (torrent) : set isofile="/kubuntu-11.10-desktop-i386.iso"
    • Precise (torrent) : set isofile="/kubuntu-12.04.2-desktop-i386.iso"
    • Quantal (torrent) : set isofile="/kubuntu-12.10-desktop-i386.iso"

Pour Xubuntu

Article détaillé sur cette variante. CD : Lucid, Oneiric, Precise, Quantal. Versions de développement : Alpha, Beta,.., Daily builds.
Idem que pour version Kubuntu pour le "(hd0,7)" à adapter ou le "file=/cdrom/preseed/ubuntu.seed" à mettre en xubuntu.seed.

  • Xubuntu Amd64 :
    • Lucid (torrent) : set isofile="/xubuntu-10.04.2-desktop-amd64.iso"
    • Oneiric (torrent) : set isofile="/xubuntu-11.10-desktop-amd64.iso"
    • Precise (torrent) : set isofile="/xubuntu-12.04.2-desktop-amd64.iso"
    • Quantal (torrent) : set isofile="/xubuntu-12.10-desktop-amd64.iso"
  • Xubuntu i386 :
    • Lucid (torrent) : set isofile="/xubuntu-10.04.2-desktop-i386.iso"
    • Oneiric (torrent) : set isofile="/xubuntu-11.10-desktop-i386.iso"
    • Precise (torrent) : set isofile="/xubuntu-12.04.2-desktop-i386.iso"
    • Quantal (torrent) : set isofile="/xubuntu-12.10-desktop-i386.iso"

Pour Lubuntu

Article détaillé sur cette variante sous environnement LXDE. CD : Oneiric, Precise, Quantal. Versions de développement : Alpha, Beta,.., Daily builds.
Idem que pour version Kubuntu pour le "(hd0,7)" à adapter ou le "file=/cdrom/preseed/ubuntu.seed" à mettre en lubuntu.seed.

  • Lubuntu Amd64 :
    • Oneiric (torrent) : set isofile="/lubuntu-11.10-desktop-amd64.iso"
    • Precise (torrent) : set isofile="/lubuntu-12.04-desktop-amd64.iso"
    • Quantal (torrent) : set isofile="/lubuntu-12.10-desktop-amd64.iso"
  • Lubuntu i386 :
    • Oneiric (torrent) : set isofile="/lubuntu-11.10-desktop-i386.iso"
    • Precise (torrent) : set isofile="/lubuntu-12.04-desktop-i386.iso"
    • Quantal (torrent) : set isofile="/lubuntu-12.10-desktop-i386.iso"

Lorsqu'on lance la procédure d'installation depuis un iso desktop, on est bloqué souvent par un message nous demandant de démonter certaines partitions et notamment : /isodevice.

Il suffit de forcer maintenant le démontage de /isodevice avec cette commande :

sudo umount -l -r -f /isodevice

Si cela ne fonctionne pas, le recours sera une installation réseau ou texte (voir plus loin).

Le lancement peut également planter si les modules acpi et/ou apm sont inadéquats au matériel. Ajouter acpi=off apm=off noacpi noapm. Concrètement : linux (loop)/casper/vmlinuz locale=fr_FR … devient linux (loop)/casper/vmlinuz locale=fr_FR acpi=off apm=off noacpi noapm

Télécharger un 'mini.iso'

menuentry "...       Install d'Ubuntu via une connexion internet" {
	insmod loopback
	insmod iso9660
	search --set -f /mini.iso
	loopback loop /mini.iso
	linux (loop)/linux locale=fr_FR bootkbd=fr console-setup/layoutcode=fr -- quiet
	initrd (loop)/initrd.gz
}

Pré-requis

Ubuntu Alternate Amd64 : ne fonctionne pas directement. Pour l'exemple, on devra :

  • créer un dossier "hd-media" à la racine de la partition,
  • chercher sur cette page le noyau hd-media qui nous concerne,
  • puis copier les fichiers vmlinuz et initrd.gz de ce noyau dans le dossier "hd-media" ainsi que tous les isos concernés (alternate ou dvd).
L'image ISO doit être à la racine de la partition ou au premier niveau d'arborescence de répertoires de cette partition cf. chapitre Looking for the Ubuntu Installer ISO Image qui explique le fontionnement du module "iso-scan".

Le menu de base

menuentry ".. Install texte - Ubuntu dvd" {
  search -sf /hd-media/ubuntu-12.10-dvd-amd64.iso
  linux /hd-media/vmlinuz priority=medium quiet splash
  initrd /hd-media/initrd.gz
}

À adapter en fonction de la source

Alternate CD (Precise Pangolin)

Depuis le DVD

Parted Magic

Très complet (liste des programmes, site de téléchargement) :

menuentry "...       Parted Magic" {
	insmod loopback
	insmod iso9660
	set isofile="/pmagic_2013_02_28.iso"
	loopback loop (hd0,7)$isofile
        echo	'Chargement du noyau Linux ...'
	linux (loop)/pmagic/bzImage keymap=fr-latin1 fr_FR
        echo	'Chargement du disque mémoire initial ...'
	initrd (loop)/pmagic/initrd.img
}

Rappel la ligne "set isofile" (emplacement du fichier iso) et indication de disque "(hd0,7)" sont à adapter en fonction de la version du fichier que vous avez téléchargée et du disque sur lequel vous l'avez mis.

SystemRescueCD (V≥1.4.0)

Fonctionne mais une install sur clé avec l'instruction "dd" vous donnera plus de fonctionnalités. site de téléchargement

menuentry "SytemRescueCD" {
insmod ext2
insmod loopback
insmod iso9660
set isofile="systemrescuecd-x86-3.0.0.iso"
search --set -f $isofile
loopback loop $isofile
linux (loop)/isolinux/rescuecd isoloop=$isofile setkmap=fr vga=0x317
initrd (loop)/isolinux/initram.igz
}


Voici un script, adapté sur Ubuntu 10.04, qui fonctionne: http://www.sysresccd.org/Sysresccd-manual-en_Easy_install_SystemRescueCd_on_harddisk#Boot_the_ISO_image_from_the_disk_using_Grub2

L'image ISO a été placée sur la deuxième partition du premier disque (hd0,2). L'accès en écriture, sur la partition montée contenant l'image, est impossible.

menuentry "SytemRescueCD" {
        set root=(hd0,2)
        loopback loop /systemrescuecd-x86-3.0.0.iso
        linux (loop)/isolinux/rescue32 isoloop=systemrescuecd-x86-3.0.0.iso setkmap=fr
        initrd (loop)/isolinux/initram.igz
}

Installation

Il vous faut pour cela une distribution Linux avec GRUB installé.

Pour configurer GRUB sur la clé, nous n'utiliserons pas la méthode traditionnelle, mais nous modifierons directement le fichier de configuration. Attention; cette méthode est à réserver à ce cas spécifique. Pour configurer GRUB pour votre partition de disque dur, se référer à GRUB 2 : Le nouveau Grub

Lancez cette commande pour installer GRUB sur votre clé (elle doit être montée)

sudo grub-install --root-directory=<point_montage_part1_clef_usb> <peripherique_clef_usb>

où :

  • <point_montage_part1_clef_usb> est le point de montage de la partition Fat de la clef usb (exemple : /media/clef_4Go)
  • <peripherique_clef_usb> est le périphérique correspondant à la clef usb (exemple : /dev/sdb)

Configuration du chargeur d'amorçage de la clé

Vous avez maintenant une clé bootable avec un dossier boot à la racine, contenant un sous-dossier grub. Il faut créer un fichier de configuration nommé grub.cfg dans le dossier grub. Insérez-y les blocs de texte correspondant à la distribution que vous souhaitez tester, parmi la liste de configurations détaillées ci-dessous :

Attention à bien adapter le chemin de l'image ISO selon l'endroit où vous la placez sur votre clé. Les exemples suivants sont faits en considérant que l'image est placée à la racine de la clé. Si vous souhaitez les ranger dans le dossier /boot ou dans un sous-dossier, ajoutez simplement /boot devant le nom de l'image ISO

Voir au tout début de la page d'autres possibilités avec clé USB telles que Unetbootin, MultiSystem, etc.

Aptosid (anciennement Sidux)

Fonctionnelle : exemple ici pour AMD64 et tout en français. Pour installer, forcer l'installation évite d'avoir à copier sur USB. S'installe en 3 minutes environ. site de téléchargement, Manuel d'utilisation

menuentry "Live - Aptosid" {
insmod loopback
insmod iso9660
set isofile="/aptosid-2011-03-ponos-kde-lite-amd64-201112312100.iso"
search --set -f $isofile
loopback loop $isofile
linux (loop)/boot/vmlinuz0.amd boot=fll lang=fr_FR quiet fromiso=$isofile
initrd (loop)/boot/initrd0.amd
}

Elive

Fonctionnelle : tout paraît être en français après quelques questions au démarrage. site de téléchargement

menuentry "Elive" {
insmod loopback
insmod iso9660
set isofile="/elive_2.0_Topaz_new-kernel_up003.iso"
search --set -f $isofile
loopback loop (hd0,7)$isofile
set gfxpayload=800x600x16, 800x600
linux (loop)/boot/vmlinuz-2.6.30.9-elive-686 boot=eli quiet resolution fromiso=$isofile
initrd (loop)/boot/initrd.img-2.6.30.9-elive-686
}

Gentoo

Impossible de mettre le clavier français par défaut (pour du 32 bits : remplacer /boot/gentoo64 par /boot/gentoo et /boot/gentoo64.igz par /boot/gentoo.igz). site de téléchargement

menuentry "...   2 - Gentoo 12 Live DVD" {
	set isofile="/livedvd-x86-amd64-32ul-2012.1.iso"
	search --set -f $isofile
	loopback loop $isofile
	echo	'Chargement du noyau Linux ...'
	linux (loop)/boot/gentoo64 root=/dev/ram0 looptype=squashfs loop=/image.squashfs cdroot isoboot=$isofile splash=silent,theme:livecd-10
	echo	'Chargement du disque mémoire initial ...'
	initrd (loop)/boot/gentoo64.igz
}

Slitaz

Fonctionnelle : tout paraît être en français après quelques questions au démarrage. site de téléchargement

menuentry "Slitaz-3.0" {
insmod loopback
insmod iso9660
set isofile="/slitaz-3.0.iso"
search --set -f $isofile
loopback loop $isofile
linux (loop)/boot/vmlinuz-2.6.30.6-slitaz kmap=fr-latin1
initrd (loop)/boot/rootfs.gz
}

Vector Linux

Fonctionnelle : français absent site de téléchargement

menuentry "ISO Live - Vector Linux Live" {
insmod loopback
insmod iso9660
loopback loop (hd0,7)'/VL6.0-Light-LIVE-Final.iso'
set gfxpayload=1024x768x16, 1024x768
linux (loop)/boot/vmlinuz slax from=/VL6.0-Light-LIVE-Final.iso auto2 splash=silent ramdisk_size=6666 root=/dev/ram0 rw
initrd (loop)/boot/initrd.gz
}

ZevenOS

Fonctionnelle : en français et partiellement en allemand site de téléchargement

menuentry "ISO Live - ZevenOS-20" {
insmod loopback
insmod iso9660
loopback loop (hd0,7)'/ZevenOS-20.iso'
linux (loop)/casper/vmlinuz persistent locale=fr_FR bootkbd=fr iso-scan/filename=/ZevenOS-20.iso boot=casper file=/cdrom/preseed/xubuntu.seed noprompt quiet splash --
initrd (loop)/casper/initrd.lz
}

CloneZilla

Fonctionnelle : en anglais site de téléchargement

menuentry "CloneZilla amd64 (800x600)" {
set isofile="/boot/clonezilla-live-1.2.6-24-amd64.iso"
loopback loop $isofile
linux (loop)/live/vmlinuz boot=live live-config noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_keymap="" ocs_live_batch="no" ocs_lang="" gfxpayload=800x600x16,800x600 ip=frommedia nosplash toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd.img
}

Fedora

Fedora 15 (Téléchargement) ne peut être bootée directement depuis une iso (bug). Il faut donc extraire l'iso dans un dossier, ici boot/iso/LiveCD-FC15 sur une clef usb.

menuentry ".. Fedora 15 Desktop AMD64 (extracted)" {
	linux /boot/iso/LiveCD-FC15/isolinux/vmlinuz0 root=UUID=8816-2C13 live_dir=/boot/iso/LiveCD-FC15/LiveOS/ rootfstype=auto ro liveimg quiet  rhgb rd.luks=0 rd.md=0 rd.dm=0 locale=fr_FR bootkbd=fr console-setup/layoutcode=fr 
	initrd /boot/iso/LiveCD-FC15/isolinux/initrd0.img
}

Remplacez :

  • /boot/iso/LiveCD-FC15 par le répertoire où l'iso est extraite
  • 8816-2C13 par l'UUID de la partition où l'iso est extraite

Inspiré du forum anglohpone Fedora.


Contributeurs principaux : Frombenny


1)
Raring/Ubuntu : les versions Alpha, Beta,.. ne sont plus proposées au téléchargement. Seules les "Daily Build" sont dispo.
  • tutoriel/grub2_lancer_des_images_iso.1369493042.txt.gz
  • Dernière modification: Le 25/05/2013, 16:44
  • par 109.15.239.125