2025/10/09

Ubuntu 24.04 Server で VitualBoxの Autostartを

 VirtualBoxのインストールをを aptでインストールしたが autostartでvmが起動しなかったのでChatGPTに聞きながらやっと起動できるようになったのでそのメモ。

aptでインストールすると vboxautostart-service.serviceが入っていないので、これを作成して有効にする

その前段階として、autostartを有効にする環境設定のメモ
前提として、動かしたいユーザー名は [username]としてメモする

vboxusersグループに動かすユーザを追加

$ sudo usermod -aG vboxusers [username]

Autostart動作用ディレクトリの作成

$ sudo mkdir /etc/vbox
$ sudo chown root:vboxusers /etc/vbox
$ sudo chmod 1775 /etc/vbox

/etc/vbox/autostart.cfg ファイルの作成

# /etc/vbox/autostart.cfg
default_policy = deny
[username] = {
    allow = true
    startup_delay = 10
}

パーミッション設定

$ sudo chown root:vboxusers /etc/vbox/autostart.cfg
$ sudo chmod 644 /etc/vbox/autostart.cfg

VirtualBox の環境設定を追加
/etc/default/virtualboxに追記、なければ作成

# /etc/default/virtualbox
VBOXAUTOSTART_DB=/etc/vbox
VBOXAUTOSTART_CONFIG=/etc/vbox/autostart.cfg

Virtualboxのグローバル設定
[username]環境とroot環境のvirtualboxにautostart設定をする。たぶんroot環境だけでいいと思うんだけど、一応

$ VBoxManage setproperty autostartdbpath /etc/vbox
$ sudo VBoxManage setproperty autostartdbpath /etc/vbox

各Virtual Machineに autostartの設定

$ VBoxManage modifyvm "vm名" --autostart-enabled on

個人ユーザーで動かす vboxautostart@.service作成

# /etc/systemd/system/vboxautostart@.service
[Unit]
Description=VirtualBox autostart for user %i
After=network.target

[Service]
User=%i
Type=oneshot
ExecStart=/usr/lib/virtualbox/VBoxAutostart --start --config /etc/vbox/autostart.cfg
ExecStop=/usr/lib/virtualbox/VBoxAutostart --stop --config /etc/vbox/autostart.cfg
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

サービスの有効化・起動

$ sudo systemctl daemon-reload
$ sudo systemctl enable vboxautostart@[username].service
$ sudo systemctl start vboxautostart@[username].service

これでエラーなくvmが立ち上がれば多分システム起動時にVMがスタートするはず

こんなところかな。

0 件のコメント:

Ubuntu 24.04 Server で VitualBoxの Autostartを

 VirtualBoxのインストールをを aptでインストールしたが autostartでvmが起動しなかったのでChatGPTに聞きながらやっと起動できるようになったのでそのメモ。