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
refind [Le 13/07/2018, 18:15]
bougron [Fabrication de la clé REFIND]
refind [Le 06/10/2018, 19:31]
bougron [Booter une installation windows bridée refind]
Ligne 3: Ligne 3:
 ====== rEFind ====== ====== rEFind ======
  
-rEFInd est un utilitaire Open-source,​ fork de rEFIt qui crée une interface graphique de démarrage sur Macintel permettant d'​installer une distribution Linux comme Ubuntu ou d'​utiliser Bootcamp sans appuyer sur la touche option au démarrage.+rEFInd est un utilitaire Open-source,​ fork de rEFIt (abandonné) ​qui crée une interface graphique de démarrage sur Macintel permettant d'​installer une distribution Linux comme Ubuntu ou d'​utiliser ​[[wpfr>​Boot Camp (logiciel)|Bootcamp]] sans avoir à appuyer sur la touche option au démarrage.
  
 ===== Pré-requis ===== ===== Pré-requis =====
Ligne 52: Ligne 52:
 ==== Version UBUNTU EFI 32 bits ==== ==== Version UBUNTU EFI 32 bits ====
  
-La version 32 bits est souvent nécessaire pour faire démarrer des ordinateurs récents ​de petits ​prix qui ont un bios efi en 32 bits  mais qui sont capables d'​exécuter des applications 64 bits.+La version 32 bits est souvent nécessaire pour faire démarrer des ordinateurs récents ​vendus à petit prixqui ont un bios EFI en 32 bits mais qui sont malgré cela capables d'​exécuter des applications 64 bits.
 Cette procédure va considérer que l'​installation se fait uniquement avec le support d'​installation. Cette procédure va considérer que l'​installation se fait uniquement avec le support d'​installation.
-Pour l'​instant à partir de 17.10 il n'est pas possible de l'​utiliser,​ le bug se trouve [[https://​bugs.launchpad.net/​ubuntu/​+source/​refind/​+bug/​1729563|ici]]. 
- 
  
 +Exception :
 +  * Spécifique à Ubuntu 17.10 : un bug semble empêcher les manipulations,​ voir [[https://​bugs.launchpad.net/​ubuntu/​+source/​refind/​+bug/​1729563|ici]].
 +  ​
 **Version 16.04. Lubuntu en 32 bits** **Version 16.04. Lubuntu en 32 bits**
 Le paquet [[http://​ppa.launchpad.net/​rodsmith/​refind/​ubuntu/​pool/​main/​r/​refind/​refind_0.11.2-0ppa1_i386.deb|32 bits]]. Le paquet [[http://​ppa.launchpad.net/​rodsmith/​refind/​ubuntu/​pool/​main/​r/​refind/​refind_0.11.2-0ppa1_i386.deb|32 bits]].
Ligne 81: Ligne 82:
   - Arrêter l'​ordinateur via la commande **shutdown now** .   - Arrêter l'​ordinateur via la commande **shutdown now** .
  
-Il ne vous reste plus qu'à aller sur l'​ordinateur cible de l'​installation et à booter avec cette clé puis faire l'installation. +Il ne vous reste plus qu'à aller sur l'​ordinateur cible de l'​installation et à le faire démarrer sur cette clé (se reporter à la doc de l'ordi), puis faire l'​installation.
-<note warning>​Attention je crains un gros problème ;    Je ne sais pas comment on va trouver comment lancer cette installation.</​note>​ +
- +
-<note tip>​CONSTAT:​ Refind ne liste que les fichiers de terminaison **EFI** présents dans le répertoire ​   EFI\BOOT des partitions ESP (le drapeaudes partitions présentes dans le support USB</​note>​ +
- +
-Lorsque ​l'​installation ​est finie, il ne reste plus qu'à dupliquer le contenu de ce répertoire EFI dans le répertoire EFI de  la machine. Il existe un script. Juste le temps de le retrouver. +
- +
- +
- +
  
 +<note tip>​CONSTAT:​ Refind ne liste que les fichiers de terminaison **EFI** présents dans le répertoire ​  ​EFI\BOOT des partitions ESP (le drapeau) des partitions présentes dans le support USB</​note>​
  
 +Lorsque l'​installation est finie, il ne reste plus qu'à dupliquer le contenu de ce répertoire EFI dans le répertoire EFI de la machine.
 ==== Version UBUNTU EFI 64 bits ====  ==== Version UBUNTU EFI 64 bits ==== 
  
Ligne 235: Ligne 229:
   * Booter de nouveau **en prenant le soin de d'​activer le secure-boot**. La première entrée de la NVRAM non sécurisée ne sera pas opérationnelle et la seconde prendra le relais. Shim se lancera et activera le grub.   * Booter de nouveau **en prenant le soin de d'​activer le secure-boot**. La première entrée de la NVRAM non sécurisée ne sera pas opérationnelle et la seconde prendra le relais. Shim se lancera et activera le grub.
   * Utiliser refind pour choisir l'OS à lancer.   * Utiliser refind pour choisir l'OS à lancer.
-==== Fabrication ​de la clé REFIND ====+==== Fabrication ​du module ​REFIND ​ ​sécurisé.====
  
-**__En cours d'​écriture__** ​  En traduction de ce document http://​www.rodsbooks.com/​efi-bootloaders/​controlling-sb.html ; **last update: 7/7/2018**+En traduction de ce document http://​www.rodsbooks.com/​efi-bootloaders/​controlling-sb.html ; **last update: 7/7/2018**
  
 Secure Boot fonctionne en installant un ensemble de clés dans le microprogramme de l'​ordinateur. Ces clés (ou plus précisément,​ leurs contreparties privées) sont utilisées pour signer les chargeurs de démarrage, les pilotes, les ROM en option et les autres logiciels que le microprogramme exécute. La plupart des ordinateurs de bureau (ordinateurs de bureau, ordinateurs portables, tablettes et serveurs) vendus aujourd'​hui incluent des clés que Microsoft contrôle. En effet, les clés de Microsoft sont les seules à être plus ou moins installées dans votre firmware, du moins sur les ordinateurs de bureau et portables. Secure Boot fonctionne en installant un ensemble de clés dans le microprogramme de l'​ordinateur. Ces clés (ou plus précisément,​ leurs contreparties privées) sont utilisées pour signer les chargeurs de démarrage, les pilotes, les ROM en option et les autres logiciels que le microprogramme exécute. La plupart des ordinateurs de bureau (ordinateurs de bureau, ordinateurs portables, tablettes et serveurs) vendus aujourd'​hui incluent des clés que Microsoft contrôle. En effet, les clés de Microsoft sont les seules à être plus ou moins installées dans votre firmware, du moins sur les ordinateurs de bureau et portables.
Ligne 244: Ligne 238:
 **L'​utilisation d'un chargeur de démarrage pré-signé,​ tel que le populaire programme Shim, peut être encore plus simple que la désactivation de Secure Boot**, si votre distribution fournit un tel programme. Sinon, vous aurez besoin de sauter à travers les cerceaux. En outre, l'​utilisation d'un chargeur de démarrage pré-signé avec l'​ensemble de clés par défaut signifie que votre ordinateur acceptera comme chargeurs de démarrage Microsoft valides et tous les autres que Microsoft décide de signer. **L'​utilisation d'un chargeur de démarrage pré-signé,​ tel que le populaire programme Shim, peut être encore plus simple que la désactivation de Secure Boot**, si votre distribution fournit un tel programme. Sinon, vous aurez besoin de sauter à travers les cerceaux. En outre, l'​utilisation d'un chargeur de démarrage pré-signé avec l'​ensemble de clés par défaut signifie que votre ordinateur acceptera comme chargeurs de démarrage Microsoft valides et tous les autres que Microsoft décide de signer.
  
-Maintenant à l'​action! La première étape pour remplacer le jeu de touches standard de votre ordinateur consiste à générer vos propres clés. Pour ce faire, vous aurez besoin de plusieurs paquets installés sur votre ordinateur Linux. En particulier,​ vous avez besoin d'​**openssl** et d'​**efitools**. Le premier est disponible dans un paquet de ce nom sur la plupart des distributions,​ mais efitools est moins commun. Il est disponible dans le référentiel d'​Ubuntu et les versions de plusieurs distributions sont disponibles sur OpenSUSE Build Service (OBS). Si nécessaire,​ vous pouvez le compiler à partir du code source; vérifiez ici pour la source. Notez qu'​efitools dépend de sbsigntool (aka sbsigntools),​ donc vous devrez peut-être l'​installer aussi. Voir [[https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​jejb/​sbsigntools.git/​|ici]] le code source de sbsigntool+Maintenant à l'​action! La première étape pour remplacer le jeu de touches standard de votre ordinateur consiste à générer vos propres clés. Pour ce faire, vous aurez besoin de plusieurs paquets installés sur votre ordinateur Linux. ​ 
 +En particulier,​ vous avez besoin d'​**openssl** et d'​**efitools**. Le premier est disponible dans un paquet de ce nom sur la plupart des distributions,​ 
 +mais efitools est moins commun. Il est disponible dans le référentiel d'​Ubuntu et les versions de plusieurs distributions sont disponibles sur OpenSUSE Build Service (OBS). 
 +Si nécessaire,​ vous pouvez le compiler à partir du code source; vérifiez ici pour la source. Notez qu'​efitools dépend de sbsigntool (aka sbsigntools),​ donc vous devrez peut-être l'​installer aussi. Voir [[https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​jejb/​sbsigntools.git/​|ici]] le code source de sbsigntool 
 + 
 + 
 +**Il est donc nécessaire d'​installer des outils complémentaires pour pouvoir fabriquer des clés. 
 +Sachant que tous les ordinateurs EFI ne réagissent pas de la même manière, il est préférable de ne pas s'​aventurer dans cette logique et de conserver le SHIM que Microsoft maintient. 
 +La suite ne sera donc pas abordée dans ce document.** 
  
  
Ligne 277: Ligne 280:
 **La partition servant au boot n'est pas chiffrée.** **La partition servant au boot n'est pas chiffrée.**
  
-Le contexte retenu est une partition de boot au format EXT2 et une partition RACINE chiffrée +Le contexte retenu est une partition RACINE chiffrée et une partition de boot au format EXT2 ou EXT4 en version 18.04.1 car le formatage EXT2 ou EXT3 n'​existe plus
  
 La clé de chiffrement retenue ​ a été choisie pour avoir  des caractères compatibles aux claviers QWERTY et AZERTY. ​ La clé de chiffrement retenue ​ a été choisie pour avoir  des caractères compatibles aux claviers QWERTY et AZERTY. ​
Ligne 284: Ligne 287:
  
 Le nom du fichier est ** refind_linux.conf ** et il est stocké au premier niveau de la partition de boot directement sous la racine **/boot**. Il faut récupérer le UUID de la partition ​ enveloppe de la racine ​  ( sudo blkid | grep LUKS ) ainsi que le nom logique de la partition contenant la RACINE ( sudo fdisk -l | grep mapper ). Les deux lignes à mettre dans le fichiers seront de ce style  ​ Le nom du fichier est ** refind_linux.conf ** et il est stocké au premier niveau de la partition de boot directement sous la racine **/boot**. Il faut récupérer le UUID de la partition ​ enveloppe de la racine ​  ( sudo blkid | grep LUKS ) ainsi que le nom logique de la partition contenant la RACINE ( sudo fdisk -l | grep mapper ). Les deux lignes à mettre dans le fichiers seront de ce style  ​
-<​code> ​    "​Boot standard" ​  "​crypt_root=2721a6bb-36c5-4d4c-a604-2f7db99d1f87 root=/​dev/​mapper/​sdb4_crypt ​ ro quiet splash vt.handoff=7" ​  +<​code> ​    "​Boot standard" ​  "​crypt_root=2721a6bb-36c5-4d4c-a604-2f7db99d1f87 root=/​dev/​mapper/​sdb2_crypt ​ ro quiet splash vt.handoff=7" ​  
-     "​Boot RECOVERY" ​  "​ro recovery nomodeset crypt_root=2721a6bb-36c5-4d4c-a604-2f7db99d1f87 root=/​dev/​mapper/​sdb4_crypt" ​        ​</​code> ​+     "​Boot RECOVERY" ​  "​ro recovery nomodeset crypt_root=2721a6bb-36c5-4d4c-a604-2f7db99d1f87 root=/​dev/​mapper/​sdb2_crypt" ​ 
 +     "​Boot with minimal options" ​  "​ro root=/​dev/​mapper/​sdb2_crypt"​ 
 +        ​</​code> ​
  
-     +Cependant, si vous décidez de dé-installer refind puis de le réinstaller,​ il fabriquera alors automatiquement ce fichier. 
 +<note help> ​ La saisie du mot de passe de sécurité peut devenir compliquée suite à un clavier pas nécessairement QWERTY et sans touche numérique. On ne dispose que de trois tentatives avant mise en sommeil de 60 secondes et de nouveau trois tentatives avant plantage de ubuntu (version 18.04.1)</​note>​
            
 **  La structure de boot est aussi chiffrée pour plus de sécurité.** **  La structure de boot est aussi chiffrée pour plus de sécurité.**
Ligne 370: Ligne 376:
 ====  Booter une installation ​ ubuntu 32 bits avec un refind 64 bits ==== ====  Booter une installation ​ ubuntu 32 bits avec un refind 64 bits ====
 Cela ne semble pas possible. Une astuce qui veut ce qu'​elle vaut:  Utiliser une autre version de ubuntu en 64 bits (un support d'​installation lancé via refind!) pour faire un chroot sur la version 32 bits afin de la [[https://​doc.ubuntu-fr.org/​chroot#​convertir_un_environnement_32_bits_en_environnement_64_bits|miger]] ​ en 64 bits! Cela ne semble pas possible. Une astuce qui veut ce qu'​elle vaut:  Utiliser une autre version de ubuntu en 64 bits (un support d'​installation lancé via refind!) pour faire un chroot sur la version 32 bits afin de la [[https://​doc.ubuntu-fr.org/​chroot#​convertir_un_environnement_32_bits_en_environnement_64_bits|miger]] ​ en 64 bits!
 +====  Booter avec une installation ​ windows bridée ====
 + ​L'​installation de refind de façon classique a été faite. Cependant des problèmes persistent car le bios EFI est bridé pour ne lancer que windows. ​
 +
 +Il est possible que la commande de  création de l'​entrée refind dans la nvram soit refusée.
 +
 +Il est possible que la commande de  création de l'​entrée refind dans la nvram soit marquée "​unknown"​.
 +
 +Il est possible que tout soit bon et pourtant c'est windows qui met en route!
 +
 +La solution classique est de se faire passer pour windows. De déplacer le fichier de boot de windows et de prendre en charge le lancement de ce nouveau fichier. ​
 +  - Booter avec le support d'​installation et choisir essayer avant d'​installer. Se mettre en mode terminal en frappant **Ctrl Alt t**
 +  - Identifier la partition de boot avec cette commande: ​ **sudo blkid | grep vfat** Ne pas confondre avec celle du support USB!
 +  - Monter la partition de boot  avec une commande de ce style: ​ **sudo mount -v /​dev/​XXXXXX ​  /​mnt**
 +  - Ouvrir le fichier de paramétrage avec cette commande: ​ **sudo nano  /​mnt/​efi/​refind/​refind.conf**
 +  - Y insérer les lignes suivantes:
 +<​code>​menuentry "​Windows 10" {
 +    icon \EFI\refind\icons\os_win.png
 +    loader \EFI\Microsoft\Boot\bkbootmgfw.efi
 +}</​code>​
 +  - Sauvegarder le fichier et quitter nano.
 +  - Mettre la structure de boot de refind dans la structure de boot de windows avec cette commande: **sudo cp -Rv  /​mnt/​efi/​refind/​* ​ /​mnt/​efi/​Microsoft/​Boot**
 +  - Sauver le fichier de boot de windows avec cette commande: **sudo cp -v /​mnt/​efi/​Microsoft/​Boot/​bootmgfw.efi /​mnt/​efi/​Microsoft/​Boot/​bootmgfw.efi.ORIGINE** On n'est jamais trop prudent!
 +  - Mettre le fichier de boot de windows ​ à l'​endroit prévu par refind avec cette commande: **sudo cp -v /​mnt/​efi/​Microsoft/​Boot/​bootmgfw.efi /​mnt/​efi/​Microsoft/​Boot/​bkbootmgfw.efi**
 +  - Mettre le fichier de boot de refind à la place de celui de windows avec cette commande: **sudo cp -v /​mnt/​efi/​Microsoft/​Boot/​refind_x64.efi /​mnt/​efi/​Microsoft/​Boot/​bootmgfw.efi**
 +  - Quitter le support d'​installation et booter.
 +
 +Lorsque Windows fera une grosse mise à jour, il se remettra prioritaire. Il faudra de nouveau rectifier en refaisant uniquement les deux dernières commandes.
 +
 +
  
  
 ===== Liens externes ===== ===== Liens externes =====
  
-  * [[http://​refit.sourceforge.net/​|Site de refit donc refind est le fork]] +  * (en) [[http://​www.rodsbooks.com/​refind/​getting.html|Le site officiel ​de rEFind]] 
-  * [[http://​www.rodsbooks.com/​refind/​getting.html|Le site officiel]], +  * (en) [[http://​www.rodsbooks.com/​refind/​installing.html|Procédure détaillée ​d'​installation]] 
-  * [[http://​www.rodsbooks.com/​refind/​installing.html|Procédure détaillée]] +  * (en) [[http://​www.rodsbooks.com/​refind/​installing.html#​packagefile|Procédure détaillée pour ubuntu]] 
-  * [[http://​www.rodsbooks.com/​refind/​installing.html#​packagefile|Procédure détaillée pour ubuntu]] +  * (en) [[https://​launchpad.net/​~rodsmith/​+archive/​ubuntu/​refind|Le logiciel ​rEFind]] 
-  * [[https://​launchpad.net/​~rodsmith/​+archive/​ubuntu/​refind|Le logiciel]]+  * (en) [[http://​refit.sourceforge.net/​|Site de Refit, dont refind est le fork]]
  • refind.txt
  • Dernière modification: Le 24/12/2023, 19:22
  • par geole