はじめに
先日VirtualBox
のコマンド操作する機会があったので、せっかくなので、使いそうなコマンドをまとめてみました。
コマンドの場所
VirtualBox
をコマンドで操作する場合はVBoxManage
というコマンドで操作を行います。
Windowsの場合、以下にあるため、パスを切りましょう。
パス |
---|
C:\Program Files\Oracle\VirtualBox |
参照系コマンド一覧
説明 | コマンド |
---|---|
全ての仮想マシン一覧の表示 | VBoxManage list vms |
起動中の仮想マシン一覧の表示 | VBoxManage list runningvms |
仮想マシンの詳細表示 | VBoxManage showvminfo [UUID or VM名] |
仮想マシンのスナップショット一覧表示 | VBoxManage snapshot [UUID or VM名] list |
指定したスナップショットの仮想マシン詳細表示 | VBoxManage snapshot [UUID or VM名] showvminfo [スナップショット名] |
操作系コマンド一覧
説明 | コマンド |
---|---|
仮想マシンの起動(GUIあり) | VBoxManage startvm [UUID or VM名] |
仮想マシンの起動(ボタン表示なし) | VBoxManage startvm [UUID or VM名] --type sdl |
仮想マシンの起動(GUIなし) | VBoxManage startvm [UUID or VM名] --type headless |
仮想マシンの起動(GUIなし変更可) | VBoxManage startvm [UUID or VM名] --type separate |
仮想マシンの電源オフ | VBoxManage controlvm [UUID or VM名] poweroff |
仮想マシンのACPIシャットダウン | VBoxManage controlvm [UUID or VM名] acpipowerbutton |
仮想マシンの再起動 | VBoxManage controlvm [UUID or VM名] reset |
仮想マシンのサスペンド | VBoxManage controlvm [UUID or VM名] savestate |
仮想マシンの一時停止 | VBoxManage controlvm [UUID or VM名] pause |
仮想マシンの再開 | VBoxManage controlvm [UUID or VM名] resume |
スナップショットの作成 | VBoxManage snapshot [UUID or VM名] take [スナップショット名] |
指定したスナップショットの削除 | VBoxManage snapshot [UUID or VM名] delete [スナップショット名] |
指定したスナップショット名の修正 | VBoxManage snapshot [UUID or VM名] edit [スナップショット名] --name=[新しいスナップショット名] |
直前のスナップショットへのリストア | VBoxManage snapshot [UUID or VM名] restorecurrent |
指定したスナップショットへのリストア | VBoxManage snapshot [UUID or VM名] restore [スナップショット名] |
ホストからゲストOSの操作 | VBoxManage guestcontrol [UUID or VM名] run --exe "[コマンドフルパス]" --username [ゲストOSユーザ名] --password [ゲストOSパスワード] |
※「仮想マシン起動(GUIあり)」は--type gui
を指定した場合と同じ
仮想マシン起動オプションの違い
オプション無し、または--type gui
の場合、GUIコンソール画面がある通常起動を行います。
--type headless
の場合、コンソール画面無しの状態で起動するので、GUIコンソール画面での操作を行わない仮想マシンを使う場合に便利です。
--type separate
は起動後にGUIありかGUIなしかを変更できるタイプで、起動時はGUIコンソール画面がある状態で起動しますが、「仮想マシン」→「GUIをデタッチ」または「×」→「バックグラウンドで動作を継続」を選択することで、--type headless
と同様の状態となります。
尚、「GUIをデタッチ」または「バックグラウンドで動作を継続」の選択肢はセパレートで起動しないと表示されません。
--type sdl
はウィンドウに仮想マシンの操作メニューが表示されない起動タイプとなりますが、GUIコンソールが表示されるウィンドウ以外にプロンプトが立ち上がるのと、Oracle
のマニュアルにも説明が無いことから、開発用なのかと思われます。
起動タイプをセパレートで起動した際の「仮想マシンを閉じる」操作一覧。
ホストからゲストOSの操作について
使う機会は限られると思いますが、VBoxManage guestcontrol
コマンドを使用することで、ホスト側からゲストOSのコマンドを実行することができます。
但し、コマンドのフルパスを記載する必要があったり、コマンドのオプション指定ができなかったりするようなので、使う場合は注意して下さい。