web-dev-qa-db-fra.com

Exécutez des fichiers / des scripts EFI de [Boot, Media virtuel] ISO

La plupart des fournisseurs fournissent récemment des mises à jour du micrologiciel de serveurs uniquement en tant qu'ensemble de fichiers EFI ( exemple ). Mais leurs serveurs internes (également comme toute externe) IP-KVM peuvent connecter uniquement ISO images comme support virtuel de démarrage. Avec ce flash de micrologiciel distant de média virtuel, il est impossible.

Les serveurs sont à distance la plupart du temps et personne ne peut y accéder physiquement à insérer USB Stick pour flash Mises à jour du micrologiciel. Les mises à jour du micrologiciel doivent être distantes que pour un processus complet d'accélération. La question est de savoir comment je peux lancer EFI dossiers comme - celles-ci à partir de démarrage ISO pour flash mises à jour du micrologiciel?

Très probablement, la solution prête n'existe pas. Je voudrais donc construire par moi-même. Mais je n'ai rien trouvé dans Google pour commencer. Besoin de point sur un certain manuel pour commencer ou quelque chose comme. Peut-être qu'il y a un moyen d'organiser en ISO ces fichiers en quelque sorte à EFI shell va pouvoir accéder et commencer?

Je voudrais Linux solution pour la construction ISO.

3
raven428

La solution ci-dessous est implémentée sur Linux Mint 19 64 dans la machine virtuelle.

Outils nécessaires

GParted - Outil d'interface graphique pour gérer des partitions. Ceci est généralement disponible en LIVE Linux CD/DVD. Si vous n'avez pas d'espace libre à la fin de votre disque, vous devrez redimensionner et créer une petite partition de graisse. Si des partitions existantes sont utilisées, vous devrez peut-être invoquer GParted à partir de CD/DVD LIVE Linux pour qu'il fonctionne sur votre partition.

genisoimage - Outil de ligne de commande pour gérer l'ISO. Si cela n'est pas disponible, installez-le simplement. Ceci était facilement disponible à Linux Mint 19 64bit

Sudo apt-get install genisoimage

Étape 1 - Utilisation de GParted (de préférence Bootd Off Live Linux CD/DVD, dans ce cas, j'ai utilisé Linux Linux Mint 19 64bit) Créez une petite partition formatée FAT16 à la fin de votre disque. Pour ce cas particulier, 100 Mo est plus que suffisant. Assurez-vous que pour une telle petite taille, le format est FAT16 plutôt que FAT32

enter image description here

Étape 2- Décompressez et copiez les fichiers requis sur cette partition formatée de graisse. Vous pouvez simplement utiliser l'explorateur de fichiers d'interface graphique par défaut de Linux. Aucune commande gzip distincte nécessaire

enter image description here

enter image description here

Étape 3 - Créez une image de cette partition. La commande ici est

dd if=/dev/sda3 of=/home/test/efi/fat.img

Dans l'exemple ci-dessus /dev/sda3 est la partition de graisse formatée contenant les fichiers et /home/test/efi/fat.img est le fichier image généré.

enter image description here

Étape 4 - Nous allons maintenant créer une ISO amorçable EFI. Les fichiers eux-mêmes peuvent ne pas nécessairement être amorçables ici.

genisoimage -v -J -r -V "TEST" \
  -o /home/test/myiso.iso \
  -eltorito-alt-boot \
  -e fat.img \
  -no-emul-boot \
  /home/test/efi

enter image description here

enter image description here

Dans la commande ci-dessus, nous omettons le chargeur de démarrage du BIOS et nous allons simplement coller sur le chargeur de démarrage EFI, l'autre. /home/test/myiso.iso est le nouveau fichier ISO créé, /home/test/efi est l'emplacement des fichiers source. En tant que tel, il n'y a rien sauf l'image de bootloader à ce sujet.

Maintenant, l'ISO est créé sur la boîte Linux. Montez l'ISO en tant que lecteur de CD et démarrez votre système UEFI dans une coque EFI. Maintenant, la section BootLoader doit mapper sur un lecteur dans la coque EFI et l'image qui détiennent le dossier avec son contenu doit être accessible au shell EFI.

enter image description here

enter image description here

4
patkim

Sur la base de ce que je comprends mieux votre question, je suggère une solution utilisant des outils suivants sur le système d'exploitation Windows 64 bits.

  1. imdisk_toolkit_64_bit émulateur de disque virtuel. Téléchargez et installez à partir de ICI
  2. Power ISO (la version d'évaluation doit faire comme le fichier en question est inférieur à 300 Mo)

Pas

Téléchargez et installez ci-dessus Softwares sur votre OS Windows.

Utilisation d'abord IMDISK_TOOLKIT Créez un disque virtuel et montez-le sur une lettre de lecteur. Formatez le disque sur le système de fichiers FAT. Un disque d'environ 50 -60 Mo est plus que suffisant pour vos besoins car la taille du fichier est à peine <40 Mo

enter image description here

Copiez le contenu de vos fichiers, y compris des fichiers EFI, des fichiers flash et des scripts sur ce lecteur virtuel.

enter image description here

De dans la même application, créez maintenant et enregistrez un fichier .IMG du lecteur virtuel.

enter image description here

Démontez le lecteur virtuel. Cette partie du travail est terminée.

Ouvrez maintenant l'ISO d'alimentation et créez un nouveau conteneur ISO vide.

Aller au menu Action -> Boot -> Ajouter des informations de démarrage

et sélectionnez le fichier .IMG que nous avons créé précédemment.

Maintenant, votre fichier ISO est pratiquement amorcé (il crée un conteneur de gras en tant que fichier de démarrage, bien que dans la réalité, il ne va pas démarrer car vos fichiers eux-mêmes ne sont pas des chargeurs de démarrage)

Enregistrez le fichier comme .iso et grincez-le sur un CD/DVD.

Ce récipient de gras de griffeur de démarrage doit être accessible dans la coque EFI et doit se monter en tant que lecteur accessible dans une coque EFI.

J'ai testé cela sur une machine virtuelle. J'espère que cela fonctionne comme prévu sur le matériel réel.

enter image description here

enter image description here

2
patkim

Peut-être que vous pourriez créer les mises à jour du micrologiciel en tant qu'images de démarrage PXE (bien que les soins devraient être pris pour ne pas se retrouver dans une boucle de reflash). La plupart des serveurs avec EFI sont également capables de revenir à la botte de BIOS PXE si nécessaire.

Si votre périphérique IP-KVM vous permet de joindre des disques USB, vous pouvez trouver que vous pouvez simplement démarrer votre "image" en la fixant une telle chose.

Une meilleure façon peut être de clignoter le serveur à partir d'un système d'exploitation réel entièrement démarré (et certains fabricants fournissent des utilitaires spécifiques à OS pour le faire).

Enfin, certains fournisseurs de serveurs vous factureront un [~ # ~ # ~ # ~] d'argent supplémentaire pour vous permettre de classer le BIOS du serveur sur le réseau (par exemple via IPMI) - vous pourriez être dans ce scénario ...

0
Anon

Il existe d'autres solutions que les iso amorçables, bien qu'ils nécessitent des travaux de construction. La solution à choisir dépend de la nature des ordinateurs distants tels que le fabricant et les systèmes d'exploitation.

Pour les ordinateurs qui sont tous du même fabricant, la plupart des grands fabricants fournissent des produits destinés à la gestion des centres de données, qui sont principalement gratuits. Si tel est votre cas, voici quelques liens:

Sous Windows, on peut utiliser PowerShell pour mettre à jour le BIOS. Les fichiers nécessaires doivent d'abord être poussés à l'ordinateur distant. Des exemples de tels scripts sont:

Chaque solution nécessite une étude et des tests, aucun d'entre eux n'est facile ou absolument garanti.

0
harrymc