Ceci est une ancienne révision du document !
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 :
- ou avec l'instruction "dd" (fonctionne avec Debian squeeze et dérivés mais pas toujours avec Ubuntu : la clé ne boote pas),
- ou via le créateur de disque de démarrage USB présent en standard dans Ubuntu,
- ou encore avec Virtualbox qui ne nécessite pas de clé USB mais dont l'inconvénient est qu'il ne teste pas votre configuration mais un matériel émulé.
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.
Objectifs de ce tutoriel
- 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),..
Pré-requis / Notice d'utilisation
- 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
Ubuntu ou ses dérivés
Cette configuration fonctionne aussi pour Linux Mint.
Menu de base
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" loopback loop (hd0,7)$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,.., 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) :
- Ubuntu i386 :
- Ubuntu Amd64 DVD (le français y est fonctionnel) :
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 :
- Kubuntu i386 :
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 :
- Xubuntu i386 :
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 :
- Lubuntu i386 :
Installer à partir d'un iso "desktop"
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
…
net-install
Télécharger un 'mini.iso'
Menu grub
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 }
Installations "texte"
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
etinitrd.gz
de ce noyau dans le dossier "hd-media" ainsi que tous les isos concernés (alternate ou dvd).
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)
- Ubuntu Amd64 : search –set -f /ubuntu-12.10-alternate-amd64.iso
(lien de téléchargement, lien torrent) - Ubuntu i386 : search –set -f /ubuntu-12.10-alternate-i386.iso
(lien de téléchargement, lien torrent) - Kubuntu Amd64 : search –set -f /kubuntu-12.10-alternate-amd64.iso
(lien de téléchargement, lien torrent) - Kubuntu i386 : search –set -f /kubuntu-12.10-alternate-i386.iso
(lien de téléchargement, lien torrent) - Xubuntu Amd64 : search –set -f /xubuntu-12.10-alternate-amd64.iso
(lien de téléchargement, lien torrent) - Xubuntu i386 : search –set -f /xubuntu-12.10-alternate-i386.iso
(lien de téléchargement, lien torrent) - Lubuntu Amd64 : search –set -f /lubuntu-12.10-alternate-amd64.iso
(lien de téléchargement, lien torrent) - Lubuntu i386 : search –set -f /lubuntu-12.10-alternate-i386.iso
(lien de téléchargement, lien torrent)
Depuis le DVD
- Ubuntu Amd64 : search –set -f /ubuntu-12.10-dvd-amd64.iso
(page de téléchargement) - Ubuntu i386 : search –set -f /ubuntu-12.10-dvd-i386.iso
(page de téléchargement) - Kubuntu Amd64 : search –set -f /kubuntu-12.10-dvd-amd64.iso
(page de téléchargement) - Kubuntu i386 : search –set -f /kubuntu-12.10-dvd-i386.iso
(page de téléchargement)
Maintenance
Parted Magic
Très complet (liste des programmes, site de téléchargement) :
- Gparted (et autres manipulateurs de partitions),
- Partclone, Ghost,
- des gestionnaires de fichiers, éditeurs de texte, navigateurs internet,..
menuentry "... Parted Magic" { insmod loopback insmod iso9660 set isofile="/pmagic_2012_09_12.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 }
GRUB 2 sur une clef USB
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 :
Voir au tout début de la page d'autres possibilités avec clé USB telles que Unetbootin, MultiSystem, etc.
Autres distributions testées
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 …