Comment sortir du shell EFI dans une boîte virtuelle

13

J'utilise une machine virtuelle pour Mac OSX et elle démarre toujours dans le shell EFI, je veux juste une explication simple de ce que c'est et comment, si possible, pour le quitter.

Dan
la source

Réponses:

15

Le shell EFI est un outil en ligne de commande similaire au concept de bash sous Linux / Unix / OS X ou une fenêtre d'invite de commandes sous Windows. Il vous permet d'afficher, de supprimer, de modifier et de renommer des fichiers, de mettre à jour les entrées du gestionnaire de démarrage EFI, etc. Vous pouvez quitter le shell en tapant exit; cependant, dans le cas de VirtualBox, cela vous amènera probablement à un menu EFI qui peut être tout aussi déroutant.

Si vous avez installé un système d'exploitation dans votre session VirtualBox, il est probable qu'il ait installé un chargeur de démarrage sur la partition système EFI (ESP). La plupart des systèmes d'exploitation enregistrent ces chargeurs de démarrage avec le micrologiciel, qui les mémorise et les démarre automatiquement. Une particularité de VirtualBox est qu'il oublie généralement ces entrées du gestionnaire de démarrage. Le résultat est que la machine virtuelle démarre par défaut dans le shell EFI. Il existe plusieurs façons de résoudre ce problème, notamment:

  • Vous pouvez lancer le chargeur de démarrage manuellement en utilisant le shell EFI:
    1. Tapez fs0:pour accéder au premier système de fichiers, qui est généralement l'ESP.
    2. Tapez cd EFI\{osname}, où {osname}est le nom du répertoire dans lequel votre système d'exploitation a installé son chargeur de démarrage. (Vous n'avez pas dit quel système d'exploitation vous avez installé, donc je ne peux pas être sûr de ce que c'est. Taper ls EFIvous montrera ce qu'il y a.)
    3. Lancez le chargeur de démarrage en tapant son nom. Encore une fois, je ne peux pas savoir ce que c'est. Pour Linux, c'est généralement le cas grubx64.efi. Pour Windows, c'est bootmgfw.efi.
  • Automatisez la procédure ci-dessus avec un script de démarrage du shell EFI ( startup.nshdans le répertoire racine de l'ESP).
  • Renommez le chargeur de démarrage en EFI\BOOT\bootx64.efi, qui est le nom de fichier de secours:
    1. Tapez fs0:pour accéder au premier système de fichiers, qui est généralement l'ESP.
    2. Tapez mv EFI\{osname} EFI\BOOTpour renommer le répertoire dans lequel réside le chargeur de démarrage. Comme ci-dessus, vous devrez déterminer ce que {osname}vous êtes.
    3. Tapez mv EFI\BOOT\{loadername.efi} EFI\BOOT\bootx64.efi, où {loadername.efi}est le nom du chargeur de démarrage, comme grubx64.efipour la plupart des installations Linux.
  • Enregistrez le chargeur de démarrage avec le firmware VirtualBox à l'aide des outils du shell. Je ne connais pas de description concise de la façon de le faire sur le Web, et je n'ai pas le temps de l'écrire ici. Il est susceptible d'être frustrant sans instructions précises, car il y a de nombreux pièges non évidents à éviter.

Personnellement, la solution que j'utilise le plus souvent consiste à renommer le chargeur de démarrage par défaut du système d'exploitation en EFI\BOOT\bootx64.efi. C'est le plus simple à mettre en œuvre et cela fonctionne assez bien. Un inconvénient de cette approche est que si votre système d'exploitation met à jour le chargeur de démarrage, la mise à jour ira probablement à l'emplacement d'origine, vous devrez donc répéter le processus si vous souhaitez utiliser le chargeur de démarrage mis à jour.

Rod Smith
la source
Et Mac? Vos instructions ne fonctionnent pas
Pacerier