Virtualbox(ubuntu)を起動するシェルスクリプトを書いています。コマンドの後、virtualboxのステータスをチェックし続けるためにforループを配置し、ubuntuが完全に開始された後にのみスクリプトがループから出ます。何かのようなもの
vboxmanage starvm Ubuntu
for (i= 0; i < 100; i++)
{
continue if (vbox is not on)
}
vboxが完全にオンになったら終了し、次のコマンドを実行します
VBoxManage を使用して、仮想マシンの状態を照会できます。次のコマンドは、システムで実行中のすべての仮想マシンをリストします。
VBoxManage list runningvms
出力には、スクリプトでさらに解析できる次の情報が表示されます。
"name_of_machine" <UUID>
もちろん、ゲストOSが正常に起動したか、使用する準備ができているかはわかりません。このような情報については、起動後にホストで実行状態を送信するために、ゲストでスクリプトを実行する必要があります。
私はその質問に答えるのが少し遅れていることを知っています。しかし、それは他の人を助けるかもしれません。次のコマンドを実行して、仮想マシンの状態を取得できます
VBoxManage list vms -l | grep -e Name: -e State
すべての仮想マシンとそのステータスが表示されます。ループ内でこのコマンドを実行し、各マシンのステータスを確認します。
if( stopped || paused )
VBoxManage startvm VMNAME //here VMNAME is variable containing name of your vm
else
//do nothing
すべてのVMに対して実行します。私はそれが役立つことを願っています