logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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
doc:install:refind-boot-uefi [10/08/2013 19:14]
mytux
doc:install:refind-boot-uefi [14/08/2013 14:13]
mytux [Installation]
Ligne 7: Ligne 7:
  
  
-====== UEFI & EFI ======+====== UEFI & EFI ( EN chantier )======
  
 Toutes les versions 64bits des PC qui exécutent Windows certifié par le programme de certification Windows utilisent l’UEFI à la place du BIOS. Toutes les versions 64bits des PC qui exécutent Windows certifié par le programme de certification Windows utilisent l’UEFI à la place du BIOS.
Ligne 19: Ligne 19:
 ===== EFI & UEFI =====    ===== EFI & UEFI =====   
  
-Unified Extensible Firmware Interface ​ (UEFI, interface micrologiciel extensible unifiée) définit un logicielle intermédiaire entre le logicielle micrologiciel (firmware) et le système d'​exploitation d'un ordinateur.//​ 
  
-Il fait suite à EFI (Extensible Firmware Interface), conçue par Intel.//+A l'aube de l'ère du PC en 1981, IBM a livré son Personal Computer 5150 un firmware connu sous le nom de  Basic Input/​Output System (BIOS). 
 +Le BIOS était destiné ​à être une interface entre plusieurs périphériques et le Disk Operating System ​(DOS).
  
-Il est écrit ​en Ccontrairement au Bios qui lui est écrit ​en assembleur//+Au fil des ans,  le BIOS a été de moins en moins utilisé, car il était ​ ecrit   sur 16 bits, les systèmes d'​exploitation ont évolué sur 32 bits et, maintenant, en 64-bit. Les OS avancés n'ont puent continuer à utiliser le Bios sans pertes de performance.
  
-il existe un Shell EFI proche ​du MSDOSqui permet ​d’exécuter des commandesdes scripts ​et des applications écrites en C/C++.//+Aujourd'​hui,​ donc, le rôle principal ​du BIOS est de commencer le processus de démarrage. Une fois que le système est démarréle BIOS n’a plus d’intérêt. Pourtant, le démarrage de l'​ordinateur est une tâche importante, et la vieille conception ​ du BIOS créé est limitée
  
-L'UEFI permet aussi la construction d'​applications de configuration plus élaborées,​ avec un affichage graphique, prise en charge de la souris ​et plus d'​options d'​amorçage qu'​avec le BIOS. //+=====EFI ​et UEFI=====
  
-===== Secure Boot=====+J'​utilise le terme EFI pour se référer soit à EFI 1.X ou l'​UEFI.
  
-Depuis la version 2.3.1l'UEFI intègre une fonctionnalité n'​autorisant ​le démarrage qu'aux systèmes d'​exploitation reconnus.//+L'​Extensible Firmware Interface (EFI) et sa variante plus récente,UEFI (Unified EXtensible Firmware Interface), sont des conceptions de firmware qui sont destinés à remplacer ​le BIOS.
  
-En mode secure bootl'UEFI utilise ​un mécanisme ​de vérification par signature numérique. Le micrologiciel interdit tout chargement ​de driver ou de noyau dont la signature ​ne correspondrait ​pas à celle gravée en ROM.//+Les implémentations EFI sont plus grandes que les implémentations du BIOS un EFI peut lire les tables ​de partitions et systèmes ​de fichiers, ce qu’ un BIOS ne  ​pourra  ​pas faire.
  
-Ainsi, si l'​utilisateur ne désactive pas le secure boot dans l'​UEFI ​celui-ci peut empêcher l'utilisation de certains systèmes ​d'exploitation libre ou alternatifs.//+Cela permet à plusieurs chargeurs de démarrage de coexister sur le disque duret d'être accessible tout en utilisant des mécanismes ​d'accès aux fichiers normaux.
  
-===== Spécifications : =====+Une autre caractéristique de l'EFI est le **Secure Boot**. Cette fonctionnalité est destinée à améliorer la sécurité, en veillant à ce que seuls les chargeurs de démarrage signés avec une clé de chiffrement,​ pourront s'​éxécuter. 
 +=====Structures de disques EFI=====
  
-Les spécifications de l'UEFI définissent ​un boot manager dont le rôle est de charger l'OS loader et les drivers nécessaires au démarrage.//​ +Lorsque vous configurez ​un ordinateur pour démarrer ​en mode UEFI, il est généralement préférable ​de créer ​un disque GPT. 
-  +
- Les systèmes de fichiers pris en charge incluent FAT32, FAT16 et FAT12. Les tables de partition prises en charges comprennent les formats MBR et GPT. +
-Outre le partitionnement classique par MBR (limité à 2,​2 To), ​UEFI gère pour les disques, un nouveau système de partitionnement nommé GPT (globally unique identifier partition table).  +
-Le GPT permet 128 partitions principales sur un support de capacité allant jusqu'​à 9,4 Zo (milliard de téraoctets). UEFI permet ainsi le démarrage sur des disques de 2,2 To et plus. +
-Pour tout périphérique amovible partitionné détecté (clé USB, disque dur externe, etc.), l'UEFI recherche un répertoire EFI sur toutes les partitions et liste un point d'​amorçage UEFI pour chaque fichier dont le nom ressemble à bootx64.efi dans le répertoire EFI.  +
-Deux formats de tables des partitions sont pris en charge: l'​ancien MBR et le nouveau GPT.   +
-Par contre, il y a de bonnes chances pour que les interfaces de  l'UEFI permettent d'​amorcer tout ça si bien qu'un gestionnaire d'​amorçage indépendant comme rEFInd pourrait outrepasser les limitations imposées par la carte mère, quitte à charger des modules UEFI additionnels. +
-Pour qu'un amorçage UEFI ait lieu depuis ​un disque ​fixe, ce dernier doit comporter une partition spéciale appelée EFI System Partition (ESP) avec un identifiant spécial.  +
-Cette dernière, habituellement en FAT32, des fois en FAT16, contient un répertoire EFI dans lequel on trouve un sous-répertoire pour chaque système installé. Habituellement,​ la combinaison ​GPT et FAT32 a de bonnes chances de fonctionner+
  
 +EFI repose sur une partition spéciale, connue sous le nom de la partition système EFI (ESP), pour stocker des données EFI spécifiques. ​
  
 +L'ESP devrait officiellement utiliser un système de fichiers FAT32, bien que de nombreuses distributions Linux utilise un système de fichiers FAT16.
  
 +Certains utilisateurs ont constaté que certains EFI ont des bugs qui causent des problèmes avec les ESP  infèrieure à 512MiB (537MB), certain fichiers ne peuvent ​ être lus par l'EFI, donc je vous recommande la création d’ une  ESP d’ au moins 550MiB.
  
-=====UEFI Shell :​=====+Chaque chargeur de démarrage EFI est stocké dans un sous-répertoire du répertoire EFI sur l'​ESP. ​
  
-Preparons une clef USB, pour accueillir ​le shell UEFI. +Ces répertoires sont généralement nommés d'​après ​le système ​d'exploitation qui les a créésPar exempleUbuntu met ses fichiers EFI dans EFI / ubuntuet Red Hat met ses  dans EFI / redhat
-Comme expliqué précédemment nous aurons besoin ​d'une table de partition GPT ainsi qu'une partition de type FAT32 ou FAT16. +
-Gdisk, parted ou gparted seront vos amis pour cela.  +
-Une taille de 100 Mo suffira largement, ce sera même un peu grandmais mieux vos voir large au cas ou par la suite vous voudriez installer des tools kitsUEFI.+
  
-$ gdisk /​dev/​sdx (sdx étant votre clé usb ) +Une fois Linux installé, ​l'ESP est monté ​ dans / boot / efi, de sorte que l’arborescence soit : / boot / efi / EFI / ubuntu, et: / boot / efi / EFI / redhat.
-$ h  (Affiche ​l'aide ) +
-$ o (Créer une nouvelle table de partition GPT ) +
-$ n ( Créer une nouvelle partition ) +
-$ 1 ( Numero de la partition par défault ) +
-$ 2048 ( Premier secteur par défaut ) +
-$ +100M ( Dernier secteur 100Mo ) +
-$ 8300 ( 8300 LFS par défaut ) +
-$ w ( Sauvegarde des modifications ) +
-$+
  
-Créons maintenant ​un système ​de fichier FAT32 sur notre partition. +Si vous avez besoin d'​installer ​un chargeur ​de démarrage indépendamment de  de votre système d'​exploitation,​ vous pouvez créer votre propre répertoireExemple :  EFI refind pour Refind.
-$ mkfs.vfat -F32 /dev/​sdx1 ​+
  
-Il nous faut la monter pour pouvoir y déposer notre Shell. 
-$mkdir -p /media/efi 
-$ mount /dev/sdx1 /media/efi 
-Reste plus qu' à télécharger ce fameux Shell, et Arch linux proposeune version précompilé :​ 
-https://​wiki.archlinux.org/​index.php/​Unified_Extensible_Firmware_Interface#​UEFI_Shell 
-Télécharger,​ le version correspondante à votre architecture et enregistrer là dans le dossier /​media/​EFI/​boot/,​ rennomer en bootx64.efi. 
-Pour les commandes, et la DOC allez à : 
-http://​sourceforge.net/​projects/​efi-shell/​files/​ 
-Il y-a les sources deux ou trois  en PDF si l' envie  vous viens de compiler votre shell. 
-Ces commandes sont proches du batch Windows : 
  
-Table 1 Commands from Default Build Shell  : 
  
-alias Displays,​ creates, or deletes aliases in the EFI Shell. ​ 
-attrib Displays or changes the attributes of files or directories ​ 
-cd Displays or changes the current directory ​ 
-cls Clears the standard output and optionally changes the background color  
-connect Binds a driver to a specific device and starts the driver ​ 
-cp Copies one or more source files or directories to a destination ​ 
-date Displays and sets the current date for the system ​ 
-del Deletes one or more files or directories ​ 
-dh Displays the device handles in the EFI environment ​ 
-dir Lists directory contents or file information ​ 
-disconnect Disconnects one or more drivers from the specified devices ​ 
-drivers Displays a list of information for drivers ​ 
-drvcfg Invokes the Driver Configuration Protocol ​ 
-drvdiag Invokes the Driver Diagnostics Protocol ​ 
-echo Displays messages or turns command echoing on or off  
-exit Exits the EFI Shell environment ​ 
-help Displays the list of commands that are built into the EFI Shell  
-load Loads an EFI driver into memory ​ 
-ls Lists a directory'​s contents or file information ​ 
-map Defines a mapping between a user-defined name and a device handle ​ 
-mkdir Creates one or more new directories ​ 
-mv Moves one or more files to a destination within a file system ​ 
-reconnect Reconnects drivers to the specific device ​ 
-reset Resets the system ​ 
-rm Deletes one or more files or directories ​ 
-set Used to maintain the environment variables ​ 
-time Displays or sets the current time for the system ​ 
-touch Updates the time and date on a file to the current time and date  
-type Sends the contents of a file to the standard output device ​ 
-unload Unloads a driver image that was already loaded ​ 
-ver Displays the version information for this EFI firmware ​ 
-vol Displays the volume information for the file system ​ 
  
-Table 2 Additional Commands from Full Build Shell  : 
  
-comp Compares the contents of two files on a byte for byte basis  
-dblk Displays the contents of one or more blocks from a block device ​ 
-devices Displays the list of devices managed by EFI drivers ​ 
-devtree This command displays the tree of devices ​ 
-dmem Displays the contents of system or device memory ​ 
-dmpstore Manages all EFI NVRAM variables ​ 
-edit Full screen editor for ASCII or UNICODE files  
-eficompress Compress a file  
-efidecompress Decompress a file  
-err Displays or changes the error level in the system ​ 
-guid Displays all registered EFI GUIDs  
-hexedit Full screen hex editor for files, block devices, or memory ​ 
-ipconfig Displays or modifies the current IP configuration ​ 
-loadpcirom Loads a PCI Option ROM from the specified file  
-mem Displays the contents of system or device memory ​ 
-memmap Displays the memory map maintained by the EFI environment ​ 
-mm Displays or modifies MEM/​MMIO/​IO/​PCI/​PCIE address space  
-mode Displays or changes the console output device mode  
-openinfo Displays the protocols and agents associated with a handle ​ 
-pci Displays PCI device list or PCI function configuration space  
-sermode Sets serial port attributes ​ 
-smbiosview Displays SMBIOS information ​ 
-telnetmgmt Change terminal type  
-timezone Displays or sets time zone information ​ 
  
-Autant dire qu' il y-a de quoi s'​amuser.+===== rEFIND =====
  
 +Refind est un un fork REFIT, c'est un boot manager pour les ordinateurs implémanté par l'​Extensible Firmware Interface (EFI) et Unified EFI (UEFI). ​
  
 +Il faut faire la distinction entre un boot loader tel que GRUB et un boot mangager, comme rEFIND, tous les ordinnateurs basé sur EFI incluent boot manager.
  
-   +Il est assez simple d' utilistation,​ polyvalent et va nous permettre de booter une image iso n'​ayant pas le support pour l'EFI.
-===== A : Introduction =====+
  
-Depuis peu, certain ordinateurs achetés dans le commerce avec windows préinstallé sont équipés de ce nouveau firmware apppelé UEFI+http://www.rodsbooks.com/​refind/​
  
-Qu'est ce que l'UEFI ?+====Téléchargement====
  
-//Citation Wipedia : +Aller à la page de téléchargement de [[http://www.rodsbooks.com/refind/getting.html|rEFIND]].
-"La norme Unified Extensible Firmware Interface (UEFI, « interface micro-logicielle extensible unifiée ») définit un logiciel intermédiaire ​    entre le micrologiciel (firmware) et le système d'​exploitation (OS) d'un ordinateurCette interface succède sur certaines cartes-mères au BIOSElle fait suite à EFI (Extensible Firmware Interface), conçue par Intel pour les processeurs Itanium."​//+
  
-Malheureusement toutes ​les distributions ne sont pas équipées d' un bootloader capable de démarrer sur ce nouveau logiciel, heureusement un certain Roderick W.Smith ​à développer un fork de Refit. Refind un bootmanager qui donne la main à un bootloader traditionnel+Télécharger ​les fichiers correspondant ​à votre périphériques.
  
-Page officiel de Refind: http://www.rodsbooks.com/​refind/ ​+Dans cet exemple je vais utiliser une image disque USB.
  
-===== Installation =====+Après décompression je copie l' image disque à l'aide de <dd>, afin de récupérer les fichiers de l'​image.
  
-==== Prérequis : ====+<​code>​ 
 +$ dd if=refind-flashdrive-0.7.3.img of=/dev/sdx bs=1M   # Copie sur la clef USB 
 +$ mount /dev/sdb1 /​media/​usb0 ​                           
 +$ cd /​media/​usb0 
 +$ls 
 +EFI  shellia32.efi ​ shellx64.efi ​                       # On récupère les fichiers. 
 +$ cp -r * ~/ 
 +$ umount /​media/​usb0 ​                                   # Et on démonte, pour préparer le système de fichier. 
 +</​code>​
  
-  - Un support usb (de 1 à 2 go minimum, selon la taille de votre iso) +=====EFI file System=====
-  - Les droits root. +
-  +
-=== Téléchargement des binaires et création de l'​arborescence du répertoire de boot. ===+
  
-== Téléchargement ==+Une fois les fichiers récupérer nous devons créer une table de partition GPT, un ESP et une partition FAT32 sur notre clé USB, pour acceuillir notre bootmanager,​ et notre image iso.
  
-Commençons tout d'​abord par télécharger ce fameux bootmanagerrendez vous à :​http://​sourceforge.net/​projects/​refind/​ et télécharger le la dernière version en paquet debian enregistrer le par exemple dans **~/​refind**+On va utiliser <​gdisk>​ce soft est similaire ​à fdisk, mais a nous permettre de manipuler des tables de partition GPT. 
 +Sur la plupart des distributions il n'est pas installer ​par défault.
  
-== Extraction ​des fichiers==+<​code>​ 
 +$ sudo apt-get install gdisk  
 +$ sudo gdisk /dev/sdb 
 +$ o                           # Créer une nouvelle table de partion GPT 
 +$ n                           # Créer une nouvelle partition 
 +$ 1                           # Par défault partition numéro 1 
 +$ 2048                        # Premier secteur par défault 
 +$ +100M                       # 100 MB je pense que cela suffira, si vous rencontrez ​des problèmes, augmenter sa taille 
 +$ ef00                        # ef00 (EFI File System) 
 +</​code>​
  
-En ligne de commande on extrait cet archive à l'aide de dpkg.+Création d'une seconde partion pour notre image iso.
  
-   cd ~/refind +<​code>​ 
-   ​dpkg -x refind_0.7.3-1_amd64.deb ./ +n 
-   ​ls +206848 ​                    # 206848 par défault à la suite de l'​ESP 
-   etc/ usr/+$ +2000M ​                    # 2 GB, je vois large
 +8300                       # 8300 (Linux File System) 
 +$ w                          # On sauvegarde 
 +</code>
  
-Les fichiers qui nous intéresses sont situés dans **usr/​share/​refind-0.7.3/​refind/​**+Ensuite, il faut redémarer pour que le Kernel relise la table de partitions.
  
-   cd  usr/​share/​refind-0.7.3/refind/ +<​code>​ 
-   $ls +sudo shutdown ​-r now 
-   ​drivers_x64 ​ icons  tools_x64 ​ refind_x64.efi ​ refind.conf-sample+</code>
  
-On renomme **refind_x64.efi**+Création d' un système de fichiers FAT32 sur les deux partions :
  
-   mv refind_x64.efi bootx64.efi+<​code>​ 
 +mkfs.vfat -F32 /dev/sdb1 
 +$ mkfs.vfat -F32 /dev/sdb2 
 +</​code>​
  
 +===== Installation =====
  
-   +Pour l'​installation on aura juste à copier les fichiers que étaient dans l'​image flashdrive de rEFIND dans notre ESP; et utiliser Unetbootin pour copier notre iso sur notre seconde partition.
  
-Pour la seconde partitions nous allons utiliser Unetbootin. +Montage des périphériques : 
- +<​code>​ 
-Télécharger une image iso, par exemple Crunbang ou LMDE, 64bit. +$ sudo mount /dev/sdb1 /media/usb0 
-Installer votre iso sur /dev/sdb2, avec Unetbootin. +$ sudo mount /​dev/​sdb2 ​/media/usb1 
- +</​code>​
-Une fois terminer éxécuter mount. +
-Vous devriez avoir quelque chose comme ça en sortie.+
  
 +Copie de rEFIND sur la premiere partition :
 <​code>​ <​code>​
-mount +sudo cp -r EFI shellx64.efi  ​/media/usb0  # shellx64.efi selon votre  architecture ​(MAC
-/dev/sdb1 on /media/refind type vfat (rw+$ cd /media/usb0 
-/dev/sdb2 on /media/Debian-Live type vfat (rw,nosuid,nodev,​uid=1000,​gid=1000,​shortname=mixed,​dmask=0077,​utf8=1,​showexec,​flush,​uhelper=udisks2)+$ ls 
 +bootia32.efi ​ bootx64.efi ​ drivers_ia32 ​ drivers_x64 ​ icons  refind.conf 
 +$ rm -r bootia32.efi drivers_ia32 ​                        # Supression des fichiers inutiles 
 +$ mv refind.conf exemple.conf ​                            # Jeter un oeil à ce fichieril y a plein de commentairenous on en créera un nouveau.
 </​code>​ </​code>​
  
 +Ensuite installons notre iso avec Unetbootin :
  
-====  Configuration ==== +</code
- +$ sudo apt-get install unetbootin 
-Pour cette seconde troisième partie nous allons nous attaquer le fichier de configuration **refind.conf** qui ce trouve sur notre clé usb. +$ sudo unetbootin & 
- +</code>
-$ cd /media/​refind/​EFI/​boot +
- +
-Là vous devriez avoir un fichier refind.conf-sample,​ vous pouvez l' éxaminer, il est assez long mais il y a plein de commentaires et quelques modèles. +
- +
-Nous nous allons en créer un beaucoup plus cours.//​(j'​ai récupere ce fichier, dans l'iso de manjaro, cette iso ma beaucoup aidé pour le fonctionnement de refind))//​ +
- +
- +
-<file+
-timeout 5 +
- +
-hideui singleuser +
- +
-textonly +
-#resolution 1024 768 +
- +
-use_graphics_for osx +
- +
-showtools about,​reboot,​shutdown,​exit +
- +
-scan_driver_dirs EFI/​boot/​drivers_x64 +
- +
-scanfor manual,​internal,​external,​optical +
- +
-scan_delay 1 +
- +
-#​also_scan_dirs boot +
- +
-dont_scan_dirs EFI/boot +
- +
-#​scan_all_linux_kernels +
- +
-max_tags 0 +
- +
-default_selection "​Debian Live"​ +
- +
-menuentry "​Debian Live" { +
-        icon /​EFI/​boot/​icons/​os_linux.icns  +
-        volume 1: +
-        loader /​live/​vmlinuz +
-        initrd /​live/​initrd.img +
-        ostype Linux +
- graphics off +
- options "ro root=UUID=3568-43B4 add_efi_memmap config boot=live"​ +
-+
- +
-menuentry "UEFI x64 Shell v2" { +
- icon /​EFI/​boot/​icons/​tool_shell.icns +
- loader /​EFI/​tools/​shellx64_v2.efi +
- graphics off +
-+
- +
-menuentry "UEFI x64 Shell v1" { +
- icon /​EFI/​boot/​icons/​tool_shell.icns +
- loader /​EFI/​tools/​shellx64_v1.efi +
- graphics off +
-} +
- +
-</file> +
- +
-Bien sûr ceci n'est qu'un exemple il faut que vous éditiez refind.conf en prenant exemple sur les fichiers qui sont sur votre iso. +
- +
-== 1 : Quelques poins important :== +
- +
- +
-**scan_driver_dir** : Faites attention que le chemin corresponde bien. +
- +
-**volume 1:** : Correspond au deuxième périphérique de stockage donc votre clé usb <0:> étant /dev/sda. +
- +
-**loader** : Correspond au chemin de l'​image du noyau. +
- +
-**initrd** : Correspond au chemin de l' image RAM. +
- +
-**ro root=UUID=3568-43B4** : Un simple blkid vous renseigne sur ce numéro. +
- +
-Options : reporter les options qui sont dans le fichier **isolinux/​live.cfg**,​ n'​oubliez pas les guillemets et **add_efi_memmap** +
- +
-Pour les autres Options, regardez le fichier **refind.conf-sample**. +
- +
-Vous remarquerez la présence de **menuentry "UEFI x64 Shell v2"​** +
- +
-Et oui, il ya un Shell UEFI vous pouvez les télécharger sur [[https://​wiki.archlinux.org/​index.php/​Unified_Extensible_Firmware_Interface#​UEFI_Shell| Archlinux]] +
- +
-Et pour la forme: [[http://​software.intel.com/​en-us/​articles/​efi-shells-and-scripting/​|EFI Shells and Scripting]] +
- +
- +
- +
- +
-====  Utilisation ==== +
- +
-Si les fichier de configuration sont niquels, et que vous les avez préparer au petits oignons.  +
-On peut redémmarer,​ <​échap>​ ou je ne sais quelle touche, pour booter UEFI USB NMAP je sais pas quoi. +
- +
-Normalement Refind se lance, il scan vos disques, et là si tous est bien configurer vous choisisssez Debian Live. +
- +
-Si cela ne fonctionne pas revoyez votre refind.conf,​ ou bien postez ​ un message sur le forum. +
- +
-J '​espère que ce tuto sera utile, j'ai moi même galéré pour démmarer certaine iso sur mon laptop acheté avec Windows 8 préinstallé. +
- +
-Refind fait des miracles ;) +
- +
  
 +Bon, là pas besoin de moi vous installez une iso qui vous fais des misères (Crunchbang,​ LMDE) sur sdb2.
 + 
  
doc/install/refind-boot-uefi.txt · Dernière modification: 26/11/2015 18:38 par milou

Pied de page des forums

Propulsé par FluxBB