Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
tutoriel:grub2_lancer_des_images_iso [Le 01/04/2020, 09:34]
frombenny [Installation depuis le live-cd]
tutoriel:grub2_lancer_des_images_iso [Le 05/04/2020, 08:16]
sangorys [Problèmes connus]
Ligne 5: Ligne 5:
 ====== Lancer des images iso directement depuis GRUB 2 ====== ====== 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 gravée avec **[[:​live_usb#​en_ligne_de_commandes|l'​instruction "​dd"​]]** (en mode graphique avec [[:​Etcher]]) ​ou avec un utilitaire comme **[[:​usb-creator]]****[[:​Unetbootin]]****[[:​Multisystem]]**etc. +Pour **lancer une distribution linux sans avoir à graver sur Cd**, les solutions existantes ont le plus souvent le recours à une **clé USB** gravée avec 
 +  * **[[:​live_usb#​en_ligne_de_commandes|l'​instruction "​dd"​]]** (en mode graphique avec [[:​Etcher]]) 
 +  * un utilitaire comme 
 +    * **[[:​usb-creator]]** 
 +    * **[[:​Unetbootin]]** 
 +    * **[[:​Multisystem]]** 
 +    * etc.
 On peut aussi utiliser **[[:​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é. On peut aussi utiliser **[[:​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-pc|Grub 2]]**. **Voici la procédure à suivre pour lancer vos ISOs présents sur le disque dur directement avec [[:​grub-pc|Grub 2]]**.
  
-**Remarques avant de démarrer:** + 
-  * la version de Grub est une version 1.97 ou supérieure. <​code>​grub-install -V</​code>​+===== Généralités ===== 
 + 
 +==== Pourquoi lancer les ISOs avec Grub2 ? ==== 
 +  ​pouvoir ​**tester** n'​importe quelle distribution Linux 
 +  * pouvoir **installer** vos distributions préférées sans avoir à graver un CD 
 +  * pouvoir **installer** les distributions de maintenance pour quand l'​ordinateur ne marche plus (gparted live, rescueCD,.. ) 
 + 
 +==== Prérequis ==== 
 +  * la version de Grub doit etre en version 1.97 ou supérieure. <​code>​grub-install -V</​code>​
   * la page de doc principale pour grub est **[[:​grub-pc|ici]]**.   * la page de doc principale pour grub est **[[:​grub-pc|ici]]**.
   * ce type de lancement est très différent d'une distribution linux à l'​autre voir impossible avec certaines d'​entre elles.   * ce type de lancement est très différent d'une distribution linux à l'​autre voir impossible avec certaines d'​entre elles.
  
-**Objectifs de ce tutoriel:** 
-  * pouvoir **tester** toutes les versions et variantes Ubuntu sur votre matériel, 
-  * pouvoir **installer** ces distributions sans avoir à graver un CD, 
-  * connaitre aussi les astuces de lancement des ISOs en dehors du seul monde Ubuntu (pour de la maintenance : gparted live, rescueCD,.. ou pour tester d'​autres environnements : dernières versions de [[:​Gnome-Shell]],​ [[:​Cinnamon]],​ Mate, [[:​Lxqt]],​..) 
  
 <note important>​Pour les versions 19.10 et suivantes installées en mode Uefi -> **[[#​Problèmes connus]]** pour pouvoir continuer à utiliser cette fonctionnalité.</​note>​ <note important>​Pour les versions 19.10 et suivantes installées en mode Uefi -> **[[#​Problèmes connus]]** pour pouvoir continuer à utiliser cette fonctionnalité.</​note>​
  
-===== Principe général ​===== + 
-  ​* ​Dans ce tutoriel, les **fichiers "​iso"​** sont tous stockés **dans un dossier /isos à la racine** d'une des partitions présentes dans l'​ordinateur.+==== Installation depuis l'iso lancé ​==== 
 +Par défaut, Ubuntu monte le support d'​installation dans **/​isodevice**. On n'en a **pas besoin** car Ubuntu est lancé en ram. Pour **éviter** que l'​installation ne soit **bloquée**,​ on **lancera la commande**:<​code>​sudo umount -lrf /​isodevice</​code>​ 
 + 
 +**Maintenant**,​ il suffit de double cliquer sur "​**installer ubuntu**"​. 
 + 
 +===== Comment ajouter un ISO à Grub ? ===== 
 + 
 +==== Les étapes ==== 
 +Dans ce tutoriel, les **fichiers "​iso"​** sont tous stockés **dans un dossier /isos à la racine** d'une des partitions présentes dans l'​ordinateur.
   * On **ajoutera les menus** pour les isos **au fichier** de configuration //​**/​etc/​grub.d/​40_custom**//​ (avec les [[:​permissions#​modifier_les_permissions|droits '​administrateurs'​]]).   * On **ajoutera les menus** pour les isos **au fichier** de configuration //​**/​etc/​grub.d/​40_custom**//​ (avec les [[:​permissions#​modifier_les_permissions|droits '​administrateurs'​]]).
   * On lancera **ensuite dans un terminal** la commande:<​code>​sudo update-grub</​code>​   * On lancera **ensuite dans un terminal** la commande:<​code>​sudo update-grub</​code>​
  
-==== Menu rapide ====+ 
 +Une méthode modulaire (plus souple) est d'​utiliser un fichier de configuration par système d'​exploitation et de le référencer dans grub.cfg : voir la section [[tutoriel:​grub2_lancer_des_images_iso#​une_configuration_sans_etre_root|Une configuration sans être root]] 
 +==== La méthode universelle et rapide ====
 Lorsque Grub est **en mode EFI**, on peut activer le **menu par défaut intégré** à l'iso avec ce menu type: Lorsque Grub est **en mode EFI**, on peut activer le **menu par défaut intégré** à l'iso avec ce menu type:
 <file txt /​etc/​grub.d/​40_custom>​menuentry "​.. ​   Xubuntu Focal 20.04 (Daily build)"​ { <file txt /​etc/​grub.d/​40_custom>​menuentry "​.. ​   Xubuntu Focal 20.04 (Daily build)"​ {
Ligne 43: Ligne 62:
 C'est pratique et rapide à mettre en oeuvre (**on ne change que le nom de l'​iso**) mais la distribution n'est pas localisée en français.. C'est pratique et rapide à mettre en oeuvre (**on ne change que le nom de l'​iso**) mais la distribution n'est pas localisée en français..
  
-==== Menu personnalisé (Ubuntu et dérivés====+==== Distribution ​Ubuntu et dérivés ====
 Ubuntu utilise le **paquet '​casper'​** pour ses live-cd. Donc ce menu est **valable aussi** pour Linux-Mint et d'​autres **distributions basées sur Ubuntu**. Ubuntu utilise le **paquet '​casper'​** pour ses live-cd. Donc ce menu est **valable aussi** pour Linux-Mint et d'​autres **distributions basées sur Ubuntu**.
 <file txt /​etc/​grub.d/​40_custom>​menuentry "​.. ​   Xubuntu 19.10 eoan ...." {  <file txt /​etc/​grub.d/​40_custom>​menuentry "​.. ​   Xubuntu 19.10 eoan ...." { 
Ligne 56: Ligne 75:
   * Ce menu fonctionne **aussi avec les BIOS non EFI**.   * Ce menu fonctionne **aussi avec les BIOS non EFI**.
  
-==== Sources des isos ==== +=== Sources des isos === 
-=== Ubuntu et ses variantes ​===+== Ubuntu et ses variantes ==
 <note important>​ **Attention ! pour certaines anciennes versions avant 18.04**, on peut avoir **vmlinuz.efi** (et non vmlinuz) et **une extension .lz ou .gz** à **initrd**. <note important>​ **Attention ! pour certaines anciennes versions avant 18.04**, on peut avoir **vmlinuz.efi** (et non vmlinuz) et **une extension .lz ou .gz** à **initrd**.
  
Ligne 78: Ligne 97:
  
  
-=== Dérivés : LinuxMint,​.. ​===+== Dérivés : LinuxMint,​.. ==
   * **[[:​linux_mint|Linux Mint]]** : [[https://​linuxmint.com/​download.php|versions soutenues]] - [[https://​community.linuxmint.com/​iso|versions en cours de développement]]\\ //​file=/​cdrom/​preseed/​linuxmint.seed//​   * **[[:​linux_mint|Linux Mint]]** : [[https://​linuxmint.com/​download.php|versions soutenues]] - [[https://​community.linuxmint.com/​iso|versions en cours de développement]]\\ //​file=/​cdrom/​preseed/​linuxmint.seed//​
  
   * **[[https://​voyagerlive.org/​|Voyager]]** : [[https://​sourceforge.net/​projects/​voyagerlive/​|site de téléchargement]]\\ //​file=/​cdrom/​preseed/​ubuntu.seed//​   * **[[https://​voyagerlive.org/​|Voyager]]** : [[https://​sourceforge.net/​projects/​voyagerlive/​|site de téléchargement]]\\ //​file=/​cdrom/​preseed/​ubuntu.seed//​
  
-==== Installation depuis l'iso lancé ==== 
-Par défaut, Ubuntu monte le support d'​installation dans **/​isodevice**. On n'en a **pas besoin** car Ubuntu est lancé en ram. Pour **éviter** que l'​installation ne soit **bloquée**,​ on **lancera la commande**:<​code>​sudo umount -lrf /​isodevice</​code>​ 
  
-**Maintenant**,​ il suffit de double cliquer sur "​**installer ubuntu**"​. 
  
-===== Autres distributions linux ===== +==== Systèmes de maintenance ​====
-==== Maintenance ​====+
 === GParted Live === === GParted Live ===
 Elle contient [[:​PhotoRec]] et [[:​Testdisk]]. Par contre, le gestionnaire de fichiers est un peu limité (il n'​affiche pas les partitions non montées) - **[[https://​sourceforge.net/​projects/​gparted/​files/​gparted-live-stable/​|Téléchargement]]** Elle contient [[:​PhotoRec]] et [[:​Testdisk]]. Par contre, le gestionnaire de fichiers est un peu limité (il n'​affiche pas les partitions non montées) - **[[https://​sourceforge.net/​projects/​gparted/​files/​gparted-live-stable/​|Téléchargement]]**
Ligne 127: Ligne 142:
   initrd (loop)/​live/​initrd.img</​file>​   initrd (loop)/​live/​initrd.img</​file>​
  
-==== Connues ​====+==== Distributions Linux prinipales ​====
 === Arch === === Arch ===
 Ne connaissant aucune version livecd officielle, voici quelques distributions dérivées de Arch Linux (pas trouvé comment les lancer directement en français) : Ne connaissant aucune version livecd officielle, voici quelques distributions dérivées de Arch Linux (pas trouvé comment les lancer directement en français) :
Ligne 178: Ligne 193:
   * **[[wpfr>​Slackware]]** version install. [[http://​bear.alienbase.nl/​mirrors/​slackware/​slackware-iso/​|Téléchargement]]\\ //linux (loop)/​kernels/​huge.s/​bzImage load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 SLACK_KERNEL=huge.s locale=fr_FR.utf8 kbd=fr tz=Europe/​Paris\\ initrd (loop)/​isolinux/​initrd.img//​   * **[[wpfr>​Slackware]]** version install. [[http://​bear.alienbase.nl/​mirrors/​slackware/​slackware-iso/​|Téléchargement]]\\ //linux (loop)/​kernels/​huge.s/​bzImage load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 SLACK_KERNEL=huge.s locale=fr_FR.utf8 kbd=fr tz=Europe/​Paris\\ initrd (loop)/​isolinux/​initrd.img//​
  
-==== Spécialisées ​====+==== Distributions linu spécialisées ​====
 Ce sont des distributions dédiées à une certaine utilisation. N'​oubliez pas les paramètres généraux et les lignes en italiques sont celles qui sont différentes du menu de base. Ce sont des distributions dédiées à une certaine utilisation. N'​oubliez pas les paramètres généraux et les lignes en italiques sont celles qui sont différentes du menu de base.
  
Ligne 197: Ligne 212:
   * **[[:​mao#​distributions_orientees_mao|Musix]]** développée par des argentins : [[http://​musix.najval.net/​musix/​isos/​|Site de téléchargement]]\\ //linux (loop)/​live/​vmlinuz boot=live findiso=${isofile} live-config lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 keyboard-layouts=fr timezone=Europe/​Paris utc=yes quiet splash\\ initrd (loop)/​live/​initrd.img//​   * **[[:​mao#​distributions_orientees_mao|Musix]]** développée par des argentins : [[http://​musix.najval.net/​musix/​isos/​|Site de téléchargement]]\\ //linux (loop)/​live/​vmlinuz boot=live findiso=${isofile} live-config lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 keyboard-layouts=fr timezone=Europe/​Paris utc=yes quiet splash\\ initrd (loop)/​live/​initrd.img//​
   ​   ​
-==== Environnements à tester ​====+==== Distribution pour test d'​environnements ​====
 === Enlightenment === === Enlightenment ===
   * **[[:​Enlightenment|Elive]]** a quelques racourcis intéressants (Alt + clic glissé : clic gauche déplace la fenêtre, clic droit la redimensionne par exemple) : [[http://​www.elivecd.org/​download/​beta/​|téléchargement de la version beta]]\\ //linux (loop)/​live/​vmlinuz1 username=eliveuser boot=live findiso=${isofile} live-config lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 keyboard-layouts=fr timezone=Europe/​Paris utc=yes loglevel=0 quiet splash\\ initrd (loop)/​live/​initrd1.img//​   * **[[:​Enlightenment|Elive]]** a quelques racourcis intéressants (Alt + clic glissé : clic gauche déplace la fenêtre, clic droit la redimensionne par exemple) : [[http://​www.elivecd.org/​download/​beta/​|téléchargement de la version beta]]\\ //linux (loop)/​live/​vmlinuz1 username=eliveuser boot=live findiso=${isofile} live-config lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 keyboard-layouts=fr timezone=Europe/​Paris utc=yes loglevel=0 quiet splash\\ initrd (loop)/​live/​initrd1.img//​
Ligne 212: Ligne 227:
  
 Remarque : **'​bootdev'​** et **'​xres'​** sont à adapter à votre configuration. Remarque : **'​bootdev'​** et **'​xres'​** sont à adapter à votre configuration.
 +
 +==== Windows 10====
 +**Voici la configuration de base : **
 +
 +<​code>​
 +menuentry "​Windows 10" --class windows --class os {
 +    # Insert modules needed in order to access the iso-file
 +    insmod part_gpt
 +    #insmod part_msdos
 +
 +    insmod ntfs
 +    #insmod ext2
 +
 +    # Insert module needed in order to find partition
 +    insmod search_fs_uuid
 +
 +
 +    # Set UUID of partition with the iso-image
 +    # and let grub2 find the partition
 +    # (save it's identifier to the variable $root)
 +    set uuid="​XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"​
 +    search --no-floppy --set=root --fs-uuid $uuid
 +
 +    # Mount the iso image by addressing it with (partition)/​path
 +    set iso=/​ISO_PATH/​file.iso
 +    loopback loop ($root)$iso
 +
 +
 +    # boot (chain-load) the image using the cdboot.efi file located
 +    # on the win10-image
 +    chainloader (loop)/​efi/​microsoft/​boot/​cdboot.efi
 +}
 +</​code>​
 +
 +**Adaptation :**
 +  - Remplacer XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX avec UUID de la partition ou est l'​image Windows 10.
 +  - Activer les modules necessaires :
 +    * insmod part_gpt: ce module est nécessaire,​ si Win10-ISO-Image est sur une table de partition GPT.
 +    * insmod part_msdos: Choisir si l'​image Windows est sur une table de partition DOS
 +    * insmod ntfs: ce module est nécessaire si l'​image Windows est sur une table de partition NTFS.
 +    * insmod ext2: Remplacer insmod ntfs par insmod ext2, si l'​image est sur des partitions ext2/ext3 ou ext4
 +  - Remplacer /​ISO_PATH/​file.iso pas le chemin d'​accès et le fichier iso
  
 ===== Pour aller plus loin ===== ===== Pour aller plus loin =====
Ligne 338: Ligne 395:
  
 ===== Problèmes connus ===== ===== Problèmes connus =====
 +====grub en version 2.04 installé en mode EFI====
 +
 Selon ce [[https://​bugs.launchpad.net/​ubuntu/​+source/​grub2/​+bug/​1851311|bug]],​ pour les versions 19.10 et suivantes avec un grub en version 2.04 installé en mode EFI, cette fonctionnalité ne fonctionne plus. Selon ce [[https://​bugs.launchpad.net/​ubuntu/​+source/​grub2/​+bug/​1851311|bug]],​ pour les versions 19.10 et suivantes avec un grub en version 2.04 installé en mode EFI, cette fonctionnalité ne fonctionne plus.
  
  • tutoriel/grub2_lancer_des_images_iso.txt
  • Dernière modification: Le 09/09/2023, 13:09
  • par brochignac