VMware Workstation で仮想マシンを起動すると、BIOS や UEFI の画面を開く前に OS が起動してしまうことがあります。特に仮想ディスクに OS が入っている状態では、起動が速すぎてキー入力が間に合わないことがあります。
この場合は、仮想マシンの起動直後に BIOS / UEFI へ入る設定を使うか、.vmx ファイルに起動待ち時間を設定すると対処できます。
書籍
作って理解する仮想化技術 ── ハイパーバイザを実装しながら仕組みを学ぶ
VMware Workstation のような仮想マシンを使う前提として、ハイパーバイザ、仮想デバイス、起動処理の考え方を低レイヤから理解したい場合の参考書籍です。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
症状
- VMware Workstation の仮想マシンで BIOS / UEFI に入りたい
- 起動時に
F2やEscを押しても間に合わない - Boot Menu を開きたいが、すぐ OS が起動してしまう
- インストールメディアや ISO から起動したいが、起動順序を変えられない
物理マシンでも起動が速いと BIOS へ入りづらいことがありますが、仮想マシンではさらに短い時間で OS 起動へ進むため、キー入力で入るのが難しいことがあります。
まずは VMware Workstation のメニューから入る
VMware Workstation では、環境やバージョンによって、仮想マシンを次回起動時にファームウェア設定へ入れるメニューが用意されています。まずは GUI から操作できないか確認します。
- 仮想マシンをシャットダウンする
- 仮想マシンのメニューや電源操作から、ファームウェア設定へ入る項目を探す
- 次回起動時に BIOS / UEFI 画面へ入れるか確認する
GUI から入れる場合は、それが一番安全です。.vmx を直接編集する必要がありません。
.vmx ファイルで起動待ち時間を設定する
GUI でうまく入れない場合は、仮想マシンの設定ファイルである .vmx に bios.bootDelay を追加します。単位はミリ秒です。
bios.bootDelay = "5000"上記の例では、起動時に 5000 ミリ秒、つまり 5 秒の待ち時間を設定します。この間に F2 や Esc を押すことで、BIOS / UEFI や Boot Menu に入りやすくなります。
| 設定値 | 意味 |
|---|---|
bios.bootDelay = "3000" | 3 秒待つ |
bios.bootDelay = "5000" | 5 秒待つ |
bios.bootDelay = "10000" | 10 秒待つ |
一度だけ BIOS / UEFI に入る設定
起動待ち時間を増やすのではなく、一度だけ BIOS / UEFI に入れればよい場合は、bios.forceSetupOnce を使う方法もあります。
bios.forceSetupOnce = "TRUE"この設定は、次回起動時にファームウェア設定へ入るためのものです。起動後は VMware 側で設定が戻る場合があります。環境や Workstation のバージョンによって動作が異なることがあるため、反映されない場合は bios.bootDelay を使う方がわかりやすいです。
編集時の注意点
.vmx を直接編集する場合は、仮想マシンを完全に停止した状態で行います。サスペンド中や起動中に編集すると、設定が反映されなかったり、VMware 側で上書きされたりすることがあります。
- 仮想マシンをシャットダウンする
- VMware Workstation を閉じるか、対象 VM が開かれていない状態にする
.vmxファイルをバックアップしてから編集する- 設定行を追加して保存する
- VMware Workstation で仮想マシンを起動し直す
BIOS と UEFI の違いにも注意する
仮想マシンのファームウェアが BIOS なのか UEFI なのかによって、表示される画面や起動メニューの見え方が変わります。古い記事では BIOS と書いていても、現在の仮想マシンでは UEFI を使っていることがあります。
| 目的 | 見る場所 |
|---|---|
| 起動順序を変えたい | BIOS / UEFI の Boot 設定 |
| ISO から一時的に起動したい | Boot Menu または仮想 CD/DVD の接続設定 |
| セキュアブートを確認したい | UEFI 設定 |
| OS インストール前にファームウェア設定を確認したい | 起動時の BIOS / UEFI 画面 |
まとめ
VMware Workstation で BIOS / UEFI に入れない場合は、起動が速すぎてキー入力が間に合っていない可能性があります。まずは VMware Workstation の GUI からファームウェア設定に入れるか確認し、難しい場合は .vmx に bios.bootDelay を設定すると対処しやすくなります。
元記事のポイントは、bios.bootDelay の単位がミリ秒であることです。たとえば 5000 を指定すれば 5 秒待つため、BIOS / UEFI や Boot Menu へ入る操作がしやすくなります。
関連する記事
- Broadcom による VMware 買収をどう見るか – 仮想化基盤の標準が変わるということ
- VMware TKGm Bootstrap を振り返る – vSphere 上で Kubernetes 基盤を作る難しさ
- Ubuntu 20.04 OS インストール VMware Workstation



