Cara keluar dari shell EFI di kotak virtual

13

Saya menjalankan mesin virtual untuk Mac OSX dan selalu boot ke shell EFI, saya hanya ingin penjelasan sederhana tentang apa ini dan bagaimana, jika mungkin, untuk keluar.

Dan
sumber

Jawaban:

15

Shell EFI adalah alat baris perintah yang mirip dengan konsep untuk bash di Linux / Unix / OS X atau jendela Command Prompt di Windows. Ini memungkinkan Anda melihat, menghapus, mengedit, dan mengganti nama file, untuk memperbarui entri manajer boot EFI, dan sebagainya. Anda dapat keluar dari shell dengan mengetik exit; Namun, dalam kasus VirtualBox, ini mungkin akan membawa Anda ke menu EFI yang bisa membingungkan.

Jika Anda telah menginstal OS di sesi VirtualBox Anda, kemungkinan itu menginstal boot loader pada EFI System Partition (ESP). Sebagian besar OS mendaftarkan boot loader ini dengan firmware, yang mengingatnya dan melakukan boot secara otomatis. Satu kekhasan dari VirtualBox adalah bahwa ia biasanya lupa entri boot manager ini. Hasilnya adalah VM melakukan booting ke shell EFI secara default. Ada beberapa cara untuk mengatasi masalah ini, termasuk:

  • Anda dapat meluncurkan boot loader secara manual dengan menggunakan shell EFI:
    1. Ketik fs0:untuk mengakses sistem file pertama, yang biasanya ESP.
    2. Ketik cd EFI\{osname}, di mana {osname}nama direktori tempat OS Anda memasang bootloader-nya. (Anda belum mengatakan OS apa yang telah Anda instal, jadi saya tidak yakin apa itu. Mengetik ls EFIakan menunjukkan kepada Anda apa yang ada di sana.)
    3. Luncurkan boot loader dengan mengetik namanya. Sekali lagi, saya tidak tahu apa itu. Untuk Linux, biasanya grubx64.efi. Untuk Windows bootmgfw.efi.
  • Otomatiskan prosedur di atas dengan skrip startup shell EFI ( startup.nshdalam direktori root ESP).
  • Ganti nama boot loader menjadi EFI\BOOT\bootx64.efi, yang merupakan nama file cadangan:
    1. Ketik fs0:untuk mengakses sistem file pertama, yang biasanya ESP.
    2. Ketik mv EFI\{osname} EFI\BOOTuntuk mengganti nama direktori tempat boot loader berada. Seperti di atas, Anda harus menentukan siapa {osname}diri Anda.
    3. Ketik mv EFI\BOOT\{loadername.efi} EFI\BOOT\bootx64.efi, di mana {loadername.efi}nama pemuat boot, seperti grubx64.efiuntuk sebagian besar instalasi Linux.
  • Daftarkan pemuat boot dengan firmware VirtualBox dengan menggunakan alat shell. Saya tidak tahu deskripsi singkat tentang bagaimana melakukan ini di web, begitu saja, dan saya tidak punya waktu untuk menuliskannya di sini. Ini mungkin membuat frustrasi tanpa instruksi yang tepat karena ada banyak jebakan tidak jelas yang harus Anda hindari.

Secara pribadi, solusi yang paling sering saya gunakan adalah mengubah nama boot loader dari OS default menjadi EFI\BOOT\bootx64.efi. Ini adalah yang termudah untuk diimplementasikan dan bekerja dengan cukup baik. Salah satu kelemahan dari pendekatan ini adalah bahwa jika OS Anda pernah memperbarui boot loader, pembaruan mungkin akan pergi ke lokasi asli, jadi Anda harus mengulangi prosesnya jika Anda ingin menggunakan boot loader yang diperbarui.

Rod Smith
sumber
Bagaimana dengan Mac? Instruksi Anda tidak berfungsi
Pacerier