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
utilisateurs:frombenny:grub-usb [Le 03/10/2019, 22:21]
frombenny
utilisateurs:frombenny:grub-usb [Le 24/01/2020, 17:47]
frombenny suppr de la page
Ligne 1: Ligne 1:
-{{tag>boot tutoriel}}+{{tag>​tutoriel ​grub-pc amorçage}}
  
 ---- ----
-<​note>​Cette page est un tutoriel Grub2 dont la documentation principale est disponible sur les pages [[:​grub-pc]] et [[:​grub-uefi]].</​note>​ 
  
-====== GRUB sur une clé USB ======+====== ​Lancer des images iso directement depuis ​GRUB ======
  
-Le but de ce tutoriel est de créer un **Grub sur une clé USB bootable** avec un ou plusieurs iso()s lançable(s) directement ​comme indiqué ​[[:tutoriel/​grub2_lancer_des_images_iso|ici]].+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.
  
-Dans ce tutoriel, le parti pris est d'utiliser ​une table de partitions de type "​msdos"​ accessible aussi bien depuis des systèmes anciens que récents. On les formatera en FAT32 pour qu'on puisse y avoir accès, aussi, depuis MS Windows.+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é.
  
-===== Pré-requis===== +**Voici la procédure à suivre pour lancer ​vos ISOs présents ​sur le disque dur directement avec [[:grub-pc|Grub 2]]**.
-  ​Avoir une clé USB d'**au moins 2 Go** (Selon le ou les isos qu'on veut lancer. Attention, tout son contenu sera effacé !). +
-  * **Repérer son nom**.<​code>​sudo blkid</​code>​ +
-  * Être **lancé ​sur une variante Ubuntu contenant [[:​gparted]]** (ce n'est pas le même logiciel ni sur [[:Kubuntu]] ni sur [[:​Lubuntu]]). +
-  * Avoir **à disposition un fichier iso** d'une des variantes Ubuntu.+
  
-La procédure pour faire la même chose depuis Windows n'est pas traitée ​ici.+**Remarques avant de démarrer:​** 
 +  * la version de Grub est une version 1.97 ou supérieure. <​code>​grub-install -V</​code>​ 
 +  * 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.
  
-===== Installation de grub sur la clé ===== +**Objectifs de ce tutoriel:** 
-==== Partitionnement avec gparted ==== +  * pouvoir ​**tester** toutes ​les versions et variantes Ubuntu sur votre matériel
-  ​* **Se positionner** sur le bon disque (ici sdc),{{ :​aller_sur_le_bon_device.jpg?​direct&​200 |cliquer sur la liste des périphériques dans gparted}} +  * pouvoir ​**installer** ces distributions sans avoir à graver un CD
-  * Si une ou plusieurs ​**partitions** sont montées, la/les **démonter** par clic droit+  * 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]],​..)
-  * Créer une **nouvelle table de partitions** de type "​msdos"​ (remet la clé à zéro),{{ ::​creer_une_table_de_partition.jpg?​direct&​250 |dans le menu "​Périphérique"​ de gparted}} +
-  * **Créer 2 partitions** ​de type "​FAT32" ​(les noms proposés ici seront utilisés dans les lignes ​de commande plus loin) : +
-    * une de 8 Mo avec pour étiquette ​**EFI-USB** +
-    * une autre avec l'​espace restantétiquette ​**GRUB-SOS**+
  
-==== Fichiers de configuration ==== +<note important>Pour les versions 19.10 et suivantes installées en mode Uefi -> **[[#​Problèmes connus]]** pour pouvoir continuer ​à utiliser cette fonctionnalité.</note>
-On utilisera **2 fichiers de configuration** : +
-  * sur **GRUB-SOS** : on copie le fichier **grub.cfg issu de l'iso xubuntu** dans un dossier /boot/grub. On en profite pour copier la **police par défaut** (certains grub cherchent font.pf2 d'​autres unicode.pf2).<code>cd /​media/​$USER/​GRUB-SOS/​ +
-mkdir boot && mkdir boot/grub +
-cd boot/grub +
-cp /​media/​$USER/​EFI-USB/​boot/​grub/​grub.cfg . +
-cp /​media/​$USER/​EFI-USB/​boot/​grub/​font.pf2 . +
-cp font.pf2 unicode.pf2</​code> +
-  ​sur **EFI-USB** : comme on n'aura plus accès ​à la partition lorsqu'​elle sera bootable, on remplacera le contenu de /​media/​$USER/​EFI-USB/​**grub.cfg** par celui-ci qui **renvoie vers la partition GRUB-SOS** :<file txt grub.cfg>​search.fs_label GRUB-SOS root +
-set prefix=($root)'/​boot/​grub'​ +
-configfile $prefix/​grub.cfg</file>+
  
-==== rendre bootable la partition EFI-USB ​==== +===== Principe général ===== 
-On relancera ​**[[:​gparted]]** et par **clic-droit sur** la partition ​**EFI-USB**, on lui attribuera ​les **drapeaux "​esp"​ et "​boot"​**. La clé est prête. A vous de modifier le fichier grub.cfg de GRUB-SOS pour lancer ce que vous souhaitez ​avec.+  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 lancera **ensuite dans un terminal** la commande:<​code>​sudo update-grub</​code>​
  
-===== Pour un démarrage en mode "​legacy"​ (ordinateurs anciens) ===== +==== Menu rapide ​==== 
-==== Partitionner la clé avec gparted ==== +Lorsque Grub est **en mode EFI**, on peut activer ​le **menu par défaut intégré** à l'iso avec ce menu type: 
-  ​Bien se **positionner** sur le bon disque (ici sdc), +<file txt /etc/​grub.d/​40_custom>​menuentry "​.. ​   Xubuntu Focal 20.04 (Daily build)"​ { 
-  ​Si une ou plusieurs ​**partitions** sont montées, la/les **démonter** par clic droit, + iso_path="/​isos/​focal-desktop-amd64.iso" 
-  * Créer une **nouvelle table de partitions** ​"msdos" (remet la clé à zéro+ export iso_path 
-  Créer ​**1 partition** de type **"​FAT32"​** sur la totalité de la clé avec pour étiquette : **GRUB-LEGACY**.+ search --set=root --file $iso_path 
 + loopback loop $iso_path 
 + root=(loop
 + configfile /​boot/​grub/​loopback.cfg 
 + loopback --delete loop 
 +}</​file>​ 
 +**Testé** sans souci avec les **variantes Ubuntu** actuelles (2019), Linux Mint 19.3 et Debian 10. Parfois, ​sur d'​autres distributions,​ on a le menu mais ensuite le lancement échoue.
  
-==== Ce qu'il faut mettre ​sur cette partition ==== +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..
-  ​il faut d'​abord être lancé sur un **système non-EFI**.<​code>​[ -d /​sys/​firmware/​efi ] && echo "- - Session EFI - -" || echo "​Session non-EFI"</​code>​ +
-  * **ouvrir** la clé dans un gestionnaire de fichiers (objectif: ​que la partition soit montée), +
-  * **copier ​le dossier boot** du système sur lequel on est car il fonctionne :<​code>​mkdir /​media/​$USER/​GRUB-LEGACY/​boot +
-cp /boot/grub /​media/​$USER/​GRUB-LEGACY/​boot/</​code>​+
  
-==== Installer le grub dans le MBR pour rendre la clé bootable ​==== +==== Menu personnalisé (Ubuntu et dérivés) ​==== 
-  * **vérifier** le nom de la clé (ici:sdc) :<​code>​sudo blkid</​code>​ +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**. 
-  ​la commande qui met **grub dans le MBR** :<code>​sudo ​grub-install ​--root-directory=/media/$USER/GRUB-LEGACY ​/dev/sdc</code+<file txt /etc/grub.d/​40_custom>​menuentry "​.. ​   Xubuntu 19.10 eoan ...." {  
-  * maintenant, modifiez le fichier /boot/​grub/​grub.cfg ​à votre guise.+ set isofile="/​isos/​xubuntu-19.10-desktop-amd64.iso"​ 
 + search --set=root --file $isofile 
 + loopback loop $isofile 
 + echo '​Lancement de l'iso en cours, veuillez patienter..'​ 
 + linux (loop)/​casper/​vmlinuz locale=fr_FR bootkbd=fr console-setup/layoutcode=fr iso-scan/filename=$isofile boot=casper file=/cdrom/​preseed/​xubuntu.seed noprompt quiet splash ​-
 + initrd (loop)/casper/initrd 
 +}</file
 +  * L'​avantage principal de ce menu est qu'on **peut ajouter des options de boot** spécifiques ​à notre matériel (clavier, résolution écran, etc). (Le "​preseed"​ est utilisé lors d'une installation sur l'​ordi). 
 +  * Ce menu fonctionne **aussi avec les BIOS non EFI**.
  
-===== Personnaliser le menu Grub ===== +==== Sources des isos ===
-<note important>​Les dossiers de configuration "​locale"​ ou "​themes"​ seront mis dans le dossier /boot/grub/ accessible directement ​(GRUB-SOS ou GRUB-LEGACY).</​note>​+=== Ubuntu et ses variantes ​=== 
 +<note important> ​**Attention ! pour certaines anciennes versions avant 18.04**, on peut avoir **vmlinuz.efi** ​(et non vmlinuzet **une extension .lz ou .gz** à **initrd**.
  
-==== Préalable pour le menu en français ==== +Pour vérifier, il faut ouvrir l'iso avec le gestionnaire d'archives (par clic droit) et regarder dans le dossier "casper".</note>
-Dans le gestionnaire ​de fichiers, vous pouvez faire un copier/​coller ​d'un dossier "locale" ​présent dans un /boot/grub d'un linux installé pour le mettre dans votre /boot/grub. Les paramètres '​locale_dir'​ et '​lang'​ permettront de l'​activer dans le grub.cfg.+
  
-==== Pour le thème utilisé dans l'exemple ==== +Voici les lignes ​'preseed'​ pour toutes les variantes d'​Ubuntu : 
-Dans le grub.cfg exemple, le thème utilisé provient de [[https://www.gnome-look.org/p/1160963/|cette page]].+  * **[[:Ubuntu]]** : [[http://releases.ubuntu.com/​|versions soutenues]] ​[[http://​cdimage.ubuntu.com/ubuntu/daily-live/​current/|versions en cours de développement]]\\ //​file=/​cdrom/​preseed/​ubuntu.seed//
  
-==== Exemple ​de fichier grub.cfg avec un thème ​==== +  * **[[:​Kubuntu]]** : [[http://​cdimage.ubuntu.com/​kubuntu/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​kubuntu/​daily-live/​current/​|versions en cours de développement]]\\ //file=/​cdrom/​preseed/​kubuntu.seed//​ 
-Comme les fichiers ​grub.cfg en service ​sont complexes ​à comprendrevoici un exemple ​pour un Grub sur clé USB : + 
-<file txt grub.cfg>​insmod part_gpt+  * **[[:​Lubuntu]]** : [[http://​cdimage.ubuntu.com/​lubuntu/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​lubuntu/​daily-live/​current/​|versions en cours de développement]]\\ //file=/​cdrom/​preseed/​lubuntu.seed//​ 
 + 
 +  * **[[:​Budgie|Ubuntu-Budgie]]** (nouvelle variante depuis 2017) : [[http://​cdimage.ubuntu.com/​ubuntu-budgie/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​ubuntu-budgie/​daily-live/​current/​|versions en cours de développement]]\\ //file=/​cdrom/​preseed/​ubuntu-budgie.seed//​ 
 + 
 +  * **[[:​mate|Ubuntu-Mate]]** : [[http://​cdimage.ubuntu.com/​ubuntu-mate/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​ubuntu-mate/​daily-live/​current/​|versions en cours de développement]]\\ //file=/​cdrom/​preseed/​ubuntu-mate.seed//​ 
 + 
 +  * **[[:​ubuntu_studio|Ubuntu Studio]]** : [[http://​cdimage.ubuntu.com/​ubuntustudio/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​ubuntustudio/​dvd/​current/​|versions en cours de développement]]\\ //​file=/​cdrom/​preseed/​ubuntustudio.seed// 
 + 
 +  * **[[:​Xubuntu]]** : [[http://​cdimage.ubuntu.com/​xubuntu/​releases/​|versions soutenues]] - [[http://​cdimage.ubuntu.com/​xubuntu/​daily-live/​current/​|versions en cours de développement]]\\ //​file=/​cdrom/​preseed/​xubuntu.seed//​ 
 + 
 + 
 +=== 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//​ 
 + 
 +  * **[[https://​voyagerlive.org/​|Voyager]]** : [[https://​sourceforge.net/​projects/​voyagerlive/​|site de téléchargement]]\\ //​file=/​cdrom/​preseed/​ubuntu.seed//​ 
 + 
 +==== Installation depuis le live-cd ==== 
 +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 ===== 
 +==== Maintenance ==== 
 +=== 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]]** 
 + 
 +  * //linux (loop)/​live/​vmlinuz findiso=${isofile} boot=live union=overlay username=user config components noswap toram=filesystem.squashfs ip= net.ifnames=0 nosplash locales=fr_FR.UTF-8 keyboard-layouts=fr//​\\ //initrd (loop)/​live/​initrd.img//​ 
 + 
 +=== SystemRescueCd === 
 +**À partir de la version 6**. Basé maintenant sur Arch (au lieu de Gentoo).\\ **[[https://​sourceforge.net/​projects/​systemrescuecd/​files/​sysresccd-x86/​|Page de téléchargement]] - [[http://​www.sysresccd.org/​Online-Manual-FR|Manuel d'​utilisation]] - [[http://​www.sysresccd.org/​Sysresccd-manual-en_Easy_install_SystemRescueCd_on_harddisk#​Boot_the_ISO_image_from_the_disk_using_Grub2|Documentation Officielle SystemRescue ISO et grub2]]** 
 + 
 +  * Officiel: la partition où se trouve l'iso a une étiquette "​USB-ISOs"​ (créée avec [[:​Gparted]]). Nom inchangé même si autre chose est branché en USB. 
 +  * Classique: quand on est sûr du nom du disque où se trouve l'iso. Ici: /dev/sdb1 ou (hd1,1) pour grub. 
 +<​code>​menuentry "​systemrescuecd Officiel"​ { 
 +    set isofile="/​isos/​10_maintenance/​systemrescuecd-6.0.0.iso"​ 
 +    search --no-floppy --label USB-ISOs --set=root 
 +    loopback loop $isofile 
 +    echo   '​Chargement du noyau Linux ...' 
 +    linux  (loop)/​sysresccd/​boot/​x86_64/​vmlinuz img_label=USB-ISOs img_loop=$isofile archisobasedir=sysresccd copytoram setkmap=fr-latin9 
 +    echo   '​Chargement de initramfs ...' 
 +    initrd (loop)/​sysresccd/​boot/​x86_64/​sysresccd.img 
 +
 +menuentry "​systemrescuecd Classique"​ { 
 +    set isofile="/​isos/​10_maintenance/​systemrescuecd-6.0.0.iso"​ 
 +    set root=(hd1,​1) 
 +    loopback loop $isofile 
 +    echo   '​Chargement du noyau Linux ...' 
 +    linux  (loop)/​sysresccd/​boot/​x86_64/​vmlinuz img_dev=/​dev/​sdb1 img_loop=$isofile archisobasedir=sysresccd copytoram setkmap=fr-latin9 
 +    echo   '​Chargement de initramfs ...' 
 +    initrd (loop)/​sysresccd/​boot/​x86_64/​sysresccd.img 
 +}</​code>​ 
 + 
 +=== CloneZilla === 
 +**[[wpfr>​Clonezilla]]** vous permettra de cloner une partition vers une image ou une autre partition ou inversement. 
 + 
 +  * **[[http://​clonezilla.org/​downloads/​download.php?​branch=stable|version stable]]** (basée sur Debian)<​file> ​ linux (loop)/​live/​vmlinuz persistent boot=live findiso=$isofile union=overlay username=user config components quiet noswap lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 edd=on nomodeset nodmraid ocs_live_run=\"​ocs-live-general\"​ ocs_live_extra_param=\"​\"​ keyboard-layouts=fr ocs_live_batch=\"​no\"​ vga=normal ip=frommedia nosplash toram=filesystem.squashfs timezone=Europe/​Paris utc=yes 
 +  initrd (loop)/​live/​initrd.img</​file>​ 
 +  * **[[http://​clonezilla.org/​downloads/​download.php?​branch=alternative|version alternative stable]]** (basée sur Ubuntu)<​file> ​ linux (loop)/​live/​vmlinuz persistent boot=live findiso=$isofile union=overlay username=user hostname=xenial config components quiet noswap lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 edd=on nomodeset nodmraid noeject ocs_live_run=\"​ocs-live-general\"​ ocs_live_extra_param=\"​\"​ keyboard-layouts=fr ocs_live_batch=\"​no\"​ vga=normal ip=frommedia nosplash toram=filesystem.squashfs timezone=Europe/​Paris utc=yes net.ifnames=0 
 +  initrd (loop)/​live/​initrd.img</​file>​ 
 + 
 +==== Connues ==== 
 +=== 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) : 
 +  * **[[wp>​Archbang]]** (environnement Openbox) : [[https://​sourceforge.net/​projects/​archbang/​|Téléchargement]]\\ **pensez à modifier '​img_dev'​** selon la partition où est votre iso et **'​archisolabel'​**\\ //linux (loop)/​arch/​boot/​x86_64/​vmlinuz img_dev=/​dev/​sda2 img_loop=$isofile earlymodules=loop archisobasedir=arch archisolabel=ARCHBANG\\ initrd (loop)/​arch/​boot/​intel_ucode.img (loop)/​arch/​boot/​x86_64/​archiso.img//​ 
 + 
 +  * **[[http://​archex.exton.net/​|ArchEX]]** (environnement Lxde) : [[https://​sourceforge.net/​projects/​archex/​|Téléchargement]]\\ **pensez à modifier '​img_dev'​** selon la partition où est votre iso et **'​archisolabel'​**\\ //linux (loop)/​arch/​boot/​x86_64/​vmlinuz img_dev=/​dev/​sda2 img_loop=$isofile earlymodules=loop archisobasedir=arch archisolabel=ARCH_201607\\ initrd (loop)/​arch/​boot/​intel_ucode.img (loop)/​arch/​boot/​x86_64/​archiso.img//​ 
 + 
 +  * **[[wpfr>​Manjaro]] [[:Lxqt]]** : [[https://​sourceforge.net/​projects/​manjarotorrents/​files/​|Lxqt et autres environnements]]\\ **pensez à modifier '​img_dev'​** selon la partition où est votre iso. '​misobasedir'​ et **'​misolabel'​** ne sont pas indispensables pour toutes les versions (il faut ouvrir l'iso dans votre gestionnaire d'​archives et les rechercher dans /boot/grub/kernel.cfg)\\ //linux (loop)/​boot/​vmlinuz-x86_64 img_dev=/​dev/​sda10 img_loop=$isofile misobasedir=manjaro misolabel=MJRO1715 driver=free lang=fr_FR keytable=fr tz=Europe/​Paris\\ initrd (loop)/​boot/​intel_ucode.img (loop)/​boot/​initramfs-x86_64.img//​ 
 + 
 +=== Debian === 
 +Même si Debian est parent du projet Ubuntu, son lancement est différent car il n'​utilise pas casper (pour connaître la version du vmlinuz et du initrd, il faut ouvrir l'iso avec votre gestionnaire d'​archives). 
 + 
 +  * **Stable** (version 9.3 : Stretch) : [[http://​cdimage.debian.org/​mirror/​cdimage/​release/​current-live/​|Téléchargement]]\\ //​linux ​ (loop)/​live/​vmlinuz-4.9.0-4-amd64 boot=live findiso=${isofile} components keyboard-layouts=fr locales=fr_FR.UTF-8 timezone=Europe/​Paris\\ initrd (loop)/​live/​initrd.img-4.9.0-4-amd64//​ 
 + 
 +**Dérivées** 
 +  * **[[:​linux_mint|LMDE]]** : [[https://​www.linuxmint.com/​download_lmde.php|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.lz//​ 
 + 
 +=== Fedora === 
 +Par rapport au menu standard, on définira une variable de plus : $isolabel. Pour la trouver, il faut ouvrir l'iso avec le gestionnaire d'​archive (clic droit). Dans le dossier '​isolinux',​ il faut ouvrir '​isolinux.cfg'​ puis rechercher CDLABEL. 
 + 
 +  * **[[wpfr>​Fedora (GNU/​Linux)|Fedora]]** live Workstation - [[https://​getfedora.org/​fr/​workstation/​download/​|Téléchargement]]\\ //set isolabel="​Fedora-WS-Live-29-1-2"​\\ linux (loop)/​isolinux/​vmlinuz root=live:​CDLABEL=$isolabel iso-scan/​filename=$isofile rootfstype=auto rd.live.image rhgb keytable=fr lang=fr_FR.utf8 locale.lang=fr_FR vconsole.keymap=fr\\ initrd (loop)/​isolinux/​initrd.img//​ 
 + 
 +<note important>​**Attention !** sur la version 29, les codes pour lancer Gnome directement ​en français ne fonctionnent pas (Pas trouvé!).  
 + 
 +Après le lancement, il faut aller dans les paramètres de langue et région, faire les changements et relancer la session comme proposé (sans mot de passe).</​note>​ 
 +=== Gentoo === 
 +  * **[[wpfr>​Gentoo Linux|Gentoo]]** Live DVD (les codes pour le lancer directement en français ne fonctionnent plus depuis la version 2016) - [[https://​www.gentoo.org/​downloads/​|Téléchargement]]\\ //linux (loop)/​isolinux/​gentoo isoboot=$isofile root=/​dev/​ram0 init=/​linuxrc aufs looptype=squashfs loop=/​image.squashfs cdroot vconsole.keymap=fr locale=fr_FR console=tty1 nomodeset\\ initrd (loop)/​isolinux/​gentoo.xz//​ 
 + 
 +**Dérivées** 
 +  * **[[wpfr>​Sabayon Linux|Sabayon]]** (lui peut être lancé en français sans problème) - [[ftp://​ftp.belnet.be/​mirror/​sabayonlinux/​iso/​monthly/​|Téléchargement]]\\ //linux (loop)/​boot/​sabayon root=/​dev/​ram0 init=/​linuxrc lang=fr_FR isoboot=${isofile} cdroot looptype=squashfs loop=/​livecd.squashfs overlayfs\\ initrd (loop)/​boot/​sabayon.igz//​ 
 + 
 +=== openSUSE === 
 + 
 +  * **[[wpfr>​openSUSE]]** version install [[http://​software.opensuse.org/​421/​fr|Téléchargement]]\\ //linux (loop)/​boot/​x86_64/​loader/​linux install=hd:​$isofile\\ initrd (loop)/​boot/​x86_64/​loader/​initrd//​ 
 + 
 +=== Slackware === 
 +Un petit tour chez la grand-mère des distros. Pas réussi à lancer la version live depuis Grub. 
 + 
 +  * **[[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 ==== 
 +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. 
 + 
 +=== Jeux === 
 + 
 +  * **[[wpfr>​Fedora (GNU/​Linux)#​Labs|Fedora]] Games** ([[#​Fedora|voir plus haut]]) [[https://​labs.fedoraproject.org/​fr/​games/​|Téléchargement]] - [[https://​labs.fedoraproject.org/​|Autres suites logicielles]]\\ //set isolabel="​Fedora-Game-Live-24-1-2"​\\ linux (loop)/​isolinux/​vmlinuz root=live:​CDLABEL=$isolabel iso-scan/​filename=$isofile rootfstype=auto rd.live.image rhgb KEYTABLE=fr LANG=fr_FR.utf8 locale.lang=fr_FR vconsole.keymap=fr\\ initrd (loop)/​isolinux/​initrd.img//​ 
 + 
 +=== Logiciels éducatifs === 
 +  * **[[:​edubuntu]]** pas d'iso depuis 2014. 
 + 
 +  * **[[https://​fr.vikidia.org/​wiki/​PrimTux|PrimTux]]** : [[http://​primtux.fr/​telecharger-primtux/​|Page de téléchargement]]\\ //linux (loop)/​live/​vmlinuz2 boot=live findiso=${isofile} components live-config hostname=localhost lang=fr_FR.UTF-8 locales=fr_FR.UTF-8 keyboard-layouts=fr timezone=Europe/​Paris utc=yes quiet splash\\ initrd (loop)/​live/​initrd2.img//​ 
 + 
 +  * **[[wpfr>​Uberstudent]]** (beaucoup de logiciels qui ne sont pas sur d'​autres distros) : [[https://​sourceforge.net/​projects/​uberstudent/​|Téléchargement]]\\ //linux (loop)/​casper/​vmlinuz locale=fr_FR bootkbd=fr console-setup/​layoutcode=fr iso-scan/​filename=$isofile boot=casper file=/​cdrom/​preseed/​uberstudent.seed noprompt quiet splash\\ initrd (loop)/​casper/​initrd.lz//​ 
 + 
 +=== Logiciels pour la MAO (Musique Assistée par Ordinateur) === 
 +  * **[[:​ubuntu_studio|Ubuntu Studio]]** est déjà cité [[#Ubuntu et ses variantes|plus haut]]. 
 + 
 +  * **[[:​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 ==== 
 +=== Enlightenment === 
 +  * **[[:​Enlightenment|Elive]]** a quelques racourcis intéressants (Alt + clic glissé : clic gauche déplace la fenêtreclic 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//​ 
 + 
 +=== Pantheon d'​Elementary OS === 
 +**[[wpfr>​Elementary_OS|Article Wikipédia]]** 
 + 
 +  * Étant basé sur Ubuntu, son lancement est identique. [[http://​www.elementaryos-fr.org/​telecharger-elementary-os/​|Téléchargement]]\\ //linux (loop)/​casper/​vmlinuz locale=fr_FR bootkbd=fr console-setup/​layoutcode=fr iso-scan/​filename=$isofile boot=casper file=/​cdrom/​preseed/​elementary.seed noprompt quiet splash\\ initrd (loop)/​casper/​initrd.lz//​ 
 + 
 +=== antiX: IceWm et Fluxbox === 
 +[[https://​antixlinux.com/​|Antix]] est une distribution pouvant tourner sur de vieux systèmes. Elle utilise notamment des environnements de bureau légers tels que [[:IceWm]] et [[:​Fluxbox]].\\ ​ [[https://​antixlinux.com/​download/​|Page de téléchargement]] 
 + 
 +  * //linux (loop)/​antiX/​vmlinuz fromiso=${isofile} bootdev=sda2 lang=fr tz=Europe/​Paris xres=1920x1080 toram hwclock=utc quiet splash\\ initrd (loop)/​antiX/​initrd.gz//​ 
 + 
 +Remarque : **'​bootdev'​** et **'​xres'​** sont à adapter à votre configuration. 
 + 
 +===== Pour aller plus loin ===== 
 + 
 +==== GRUB sur une clé USB ==== 
 +Pour lancer ses ISOs, on peut créer une clé USB bootable avec Grub dessus.  
 + 
 +  * La procédure décrite ci-dessous permet de démarrer **aussi bien** avec des **BIOS anciens** qu'​avec des **BIOS [[:UEFI]]**. ​ 
 +  * La **clé** sera totalement **effacée**. Pensez à sauvegarder son éventuel contenu!  
 +  * Bien **repérer** le **nom de la clé**.<​code>​sudo blkid</​code>​ 
 +  * exemple réalisé depuis un iso Xubuntu **lancé en '​live-cd'​**. 
 + 
 +=== Remise à zéro de la clé === 
 +**Dans [[:​Gparted]]** 
 +| **Se positionner** sur le bon disque (ici sdc),​\\ ​ {{:​aller_sur_le_bon_device.jpg?​direct&​200|cliquer sur la liste des périphériques dans gparted}} | Si une ou plusieurs **partitions** sont montées, la/les **démonter** par clic droit,​\\ ​ Créer une **nouvelle table de partitions** de type **"​msdos"​**,​\\ ​ {{::​creer_une_table_de_partition.jpg?​direct&​250|dans le menu "​Périphérique"​ de gparted}} | 
 + 
 +=== Créer 2 partitions === 
 +  * créer une partition de **type "​FAT32"​** de **16Mo**, étiquette **EFI-USB** 
 +  * créer une seconde partition de **type "​FAT32"​** pour le **reste**, étiquette **GRUB-SOS** 
 +  * **Appliquer** 
 +  * par clic-droit mettre le **drapeau "​esp"​** sur la partition **EFI-USB** (la rend bootable sur les systèmes UEFI) 
 + 
 +=== Installer Grub === 
 +  * s'​assurer que les binaires des 2 types de Grub sont bien installés: <​code>​sudo apt install grub-pc-bin grub-efi-amd64-bin</​code>​ 
 +  * créer les points de montage et monter les 2 partitions (sdc s'​appelle peut-être différemment pour vous): <​code>​sudo mkdir /mnt/efi 
 +sudo mkdir /mnt/usb 
 +sudo mount /dev/sdc1 /mnt/efi 
 +sudo mount /dev/sdc2 /​mnt/​usb</​code>​ 
 +  * lignes de commandes pour installer les 2 types de Grub: <​code>​sudo grub-install --no-floppy --boot-directory=/​mnt/​usb --removable --target=i386-pc /dev/sdc 
 +sudo grub-install --no-floppy --boot-directory=/​mnt/​usb --removable --target=x86_64-efi --efi-directory=/​mnt/​efi /​dev/​sdc</​code>​ 
 + 
 +Pour faire fonctionner cette clé, il vous faudra **rajouter un fichier** dans /grub: **grub.cfg**. 
 + 
 +=== exemple de fichier grub.cfg === 
 +Voici un **grub.cfg qui fonctionne**: ​<file txt grub.cfg>​insmod part_gpt
 insmod part_msdos insmod part_msdos
 insmod fat insmod fat
 +insmod ext2
 #insmod all_video #insmod all_video
 insmod efi_gop insmod efi_gop
Ligne 81: Ligne 245:
 insmod gfxterm insmod gfxterm
 set gfxmode=1920x1080 set gfxmode=1920x1080
-set locale_dir=/boot/​grub/​locale+set locale_dir=/​grub/​locale
 set lang=fr_FR set lang=fr_FR
 insmod gettext insmod gettext
 terminal_output gfxterm terminal_output gfxterm
 insmod gfxmenu insmod gfxmenu
-loadfont /​boot/​grub/​unicode.pf2 + 
-loadfont /​boot/​grub/​themes/​Crunchy-simple/​ComicNeue_normal.pf2 +insmod gzio 
-loadfont /​boot/​grub/​themes/​Crunchy-simple/​ComicNeue_title.pf2 +insmod loopback 
-set theme=/​boot/​grub/​themes/​Crunchy-simple/​theme-fog.txt +insmod iso9660 
-export theme+insmod png
 insmod jpeg insmod jpeg
 +insmod font
  
-menuentry "​.. ​   Xubuntu ​Disco 19.04 fr" { +loadfont /​grub/​fonts/​unicode.pf2 
-  ​iso_path="/xubuntu-19.04-desktop-amd64.iso"​ +loadfont /​grub/​themes/​Crunchy-simple/​ComicNeue_normal.pf2 
-  loopback loop $iso_path +loadfont /​grub/​themes/​Crunchy-simple/​ComicNeue_title.pf2 
-  linux (loop)/​casper/​vmlinuz locale=fr_FR bootkbd=fr console-setup/​layoutcode=fr iso-scan/​filename=$iso_path ​boot=casper file=/​cdrom/​preseed/​xubuntu.seed noprompt quiet splash -- +theme=/​grub/​themes/​Crunchy-simple/​theme-fog.txt 
-  initrd (loop)/​casper/​initrd+ 
 +#​timeout=4 
 +default=1 
 + 
 +background_image /​grub/​themes/​Crunchy-simple/​fog/​foggy-forest.jpg 
 + 
 +gfxpayload=keep 
 + 
 +menuentry "​------------------- ​    ​MAINTENANCE ​     -------------------"​ { 
 + true 
 +
 +menuentry "...   ​Gparted live" { 
 + set isofile="/​gparted-live-1.0.0-5-amd64.iso"​ 
 + search --set=root --file $isofile 
 + loopback loop $isofile 
 + echo '​Lancement en cours, veuillez patienter ...' 
 + linux (loop)/​live/​vmlinuz findiso=${isofile} boot=live union=overlay username=user config components noswap toram=filesystem.squashfs ip= net.ifnames=0 nosplash locales=fr_FR.UTF-8 keyboard-layouts=fr 
 + initrd (loop)/​live/​initrd.img 
 +
 +menuentry "​----------------- ​      Linux à installer ​      ​-----------------"​ { 
 + true 
 +
 +menuentry "....    Xubuntu ​20.04 LTS" { 
 + set isofile="/xub-focal-desktop-amd64.iso"​ 
 + search --set=root --file $isofile 
 + loopback loop $isofile 
 + echo '​Lancement en cours, veuillez patienter ...' 
 + linux (loop)/​casper/​vmlinuz locale=fr_FR bootkbd=fr console-setup/​layoutcode=fr iso-scan/​filename=$isofile ​boot=casper file=/​cdrom/​preseed/​xubuntu.seed noprompt quiet splash -- 
 + initrd (loop)/​casper/​initrd 
 +
 +menuentry "​----------- ​    ​Accès aux systèmes installés ​    ​-----------"​ { 
 + true 
 +
 +menuentry "​.. ​ Menu sur /dev/sda2 (e pour modifier)"​ { 
 + set root='​hd0,​gpt2'​ 
 + configfile /​boot/​grub/​grub.cfg 
 +
 +menuentry " ​                      > »  ETEINDRE ​ « <" { 
 + halt
 }</​file>​ }</​file>​
  
-===== Booter ​sur cette nouvelle ​clé ===== +Comme sur la clé, nous sommes sur une partition FAT32nous pourrons modifier ce fichier sans avoir besoin d'​être '​root'​.
-Selon le **BIOS** de votre ordinateurvous avez peut-être ​une touche (F7F11,..) pour **choisir le média de démarrage** ? +
  
-Sinon, il faut aller **dans le BIOS** (accès souvent avec touche Echap ou F2 selon les ordinateurs) pour changer l'​**ordre ​de démarrage** des disques+Le thème utilisé provient ​de [[https://​www.gnome-look.org/​p/​1160963/​|cette page]].
  
-Sur certains BIOS, dans le dernier onglet, on a la liste des supports et on peut aller dessus et valider ​avec la touche entrée.+==== Une configuration sans être root ==== 
 +=== le dossier /isos === 
 +Si ce dossier est à la racine, ​peut-être avez-vous des problèmes de droit avec. Il vous suffit de changer l'​appartenance du dossier avec la commande: <​code>​sudo chown -R $USER:$USER /​isos</​code>​
  
 +=== Fichier de configuration non root ===
 +[[#Principe général|Plus haut]], nous avons dit qu'il fallait ajouter les menus dans le fichier "/​etc/​grub.d/​40_custom"​. Cela oblige à faire un //​update-grub//​ après chaque modification.
 +
 +La solution:
 +  * utiliser, par exemple, le fichier grub.cfg cité plus haut,
 +  * le placer dans le dossier /isos
 +  * le renommer, par exemple, grubiso.cfg
 +  * ajouter cette entrée de menu à "/​etc/​grub.d/​40_custom":<​file txt 40_custom>​menuentry "​===>>​ lancer mes isos" {
 + search --set=root --file /​isos/​grubiso.cfg
 + configfile /​isos/​grubiso.cfg
 +}</​file>​
 +  * lancer un //sudo update-grub//​
 +  ​
 +Maintenant, chaque modification de grubiso.cfg est prise en compte sans nouvel //​update-grub//​!
 +
 +===== Problèmes connus =====
 +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.
 +
 +Sans essayer de réinstaller grub en version 2.02, on peut lui demander de lancer cette version au démarrage ainsi:
 +  - télécharger le paquet //​grub-efi-amd64-bin//​ en version 2.02 -> https://​packages.ubuntu.com/​disco-updates/​amd64/​grub-efi-amd64-bin/​download
 +  - ouvrir avec le [[:​archivage|gestionnaire d'​archives]] le paquet deb
 +  - en extraire le fichier //​grubx64.efi//​ (dans /​usr/​lib/​grub/​x86_64-efi/​monolithic/​)
 +  - dans un terminal avec la commande //​[[:​efibootmgr]]//​ vérifier le système sur lequel l'ordi boote (xubuntu par exemple)
 +  - copier //​grubx64.efi//​ dans le bon dossier sur ///​boot/​efi//​. <​code>​sudo cp grubx64.efi /​boot/​efi/​EFI/​xubuntu/​.</​code>​
 +  ​
 +Note: Il faudra peut-être renouveller cette opération si grub s'est mis à jour vers une version 2.04 ou supérieure sans résoudre le problème.
 +
 +----
 +//​Contributeurs principaux : [[:​utilisateurs:​Frombenny]] ...//