etc/apt/sources.listに次のリポリトジを書き加える | deb [arch=amd64 signed-by=/usr/share/keyrings/oracle-virtualbox-2016.gpg] https://download.virtualbox.org/virtualbox/debian trixie contrib |
| sudo gpg --yes --output
/usr/share/keyrings/oracle-virtualbox-2016.gpg --dearmor
oracle_vbox_2016.asc |
| wget -O-
https://www.virtualbox.org/download/oracle_vbox_2016.asc |
sudo gpg --yes --output
/usr/share/keyrings/oracle-virtualbox-2016.gpg --dearmor |
| sudo apt-get update sudo apt-get install virtualbox-7.2 |
| VirtualBox can't operate in
VMX root mode. Please disable the KVM kernel extension,
recompile your kernel and reboot
(VERR_VMX_IN_VMX_ROOT_MODE). |
| $ lsmod |grep kvm kvm_intel 413696 0 kvm 1396736 1 kvm_intel irqbypass 12288 1 kvm |
| /etc/modprobe.d/blacklist-kvm.conf |
| blacklist kvm blacklist kvm_intel |
| blacklist kvm blacklist kvm_am |
| $ sudo update-initramfs -u |
| $ lsmod | grep kvm |
これはホストコンピュータの設定の問題。BIOSの設定を変更すると64bitOSの選択肢が出てくくるようになる。
HPノートパソコン(Probook450 G5)の例
SW on → F10 連打 で (メイン セキュリティ 詳細の設定 UEFIドライバー)というメニューが出たら
詳細の設定 → システムオプション を選択し、
Virtualization Technology(VTx)とVirtualization Technology for
Directed I/O(VTd) のチェックボックスにチェックを
入れて再起動する。
設定 → ネットワーク で割当てがNATのところを ブリッジにすれば
IPアドレスがホストとゲストで別個に割り振られる。また、割り振ることが可能になる。
ホストのCPUとメモリ容量にもよるが、複数のゲストを起動してもそれぞれDHCPサーバから
別個のIPアドレスがもらえるので便利。
もし、デフォルトのNATのまま使う場合は、以下のようにする。
(ただし、以下の方法は複数のゲストOSを起動してゲストOS間でSSHとかできない)
ネットワークの割当てがNATになっている場合(デフォルトではNAT)は
以下のように設定
virtualbox上のosがsshポートを開放していてsshサーバが動くという前提で
ホストコンピュータからvirtualboxで動いているゲストosにsshで接続するには
まず歯車の設定アイコンをクリック
ネットワーク → 高度 → ポートフォワーディング の順にクリック

接続は、ホスト側のターミナルから
$ ssh -p 2222 localhost
で接続可能。
Virtualboxで動くゲストOSを終了させないでホストをシャットダウンしたりすると、ホストOSを起動する度に下のようなエラー
メッセージがでることがある。無視して使えるが、毎度このようなメッセージが出てしまうので対処方法をメモしておく。
| コマンドラインを使用して、開始するマシンを指定する必要
があります。 使い方: virtualboxvm --startvm <name|uuid>
virtualbox仮想マシン名または uuidを指定して開始します。 |
まず、コマンドラインで開始する仮想マシン(ゲストマシン名、複数あるときはどれかひとつ)を指定するのだが、
この名前はVirtualBoxマネージャーを開いたときの左側に出てくる。また次のコマンドで仮想マシンのリストが出て
くる。
$ VBoxManage list vms
"bullseye" {a310cbcd-66ec-4e51-b928-5a28304c8fb2}
"bullseye86" {73a46430-b359-4ac7-bebb-a80d8fd6b62b}
"Windows" {46ccedf2-cdd4-4c6f-a38d-e0da3cc006ff}
仮想マシン名がわかったらエラーメッセージにあるコマンドを実行する。
上の例では bullseyeとbullseye86,Windowsの3つのマシン名が出てきた。
どれかひとつ、例えばWindowsを選んで起動する。
$ VirtualBoxVM --startvm Windows
これで、起動しておけば、次回ホストコンピュータに
ログインしたとき、エラーメッセージは出なくなる
| sudo apt remove --purge
virtualbox-7.2 sudo apt dist-upgrade sudo apt autoremove sudo systemctl reboot sudo apt-get install virtualbox-7.2 |