VirtualBox: UbuntuホストからDualbootのWindowsをゲストOSで起動する
海洋ロボコンをやってた人です。
今回はVirtualBoxを使用して、UbuntuホストでDualbootで既に存在するWindowsをゲストOSで起動する方法を備忘録として書いていきます。
Dualbootの設定はしたものの、CADソフトやMSソフトを使う際に毎度デュアルブートしており、この手間をなんとかしたいと思っていました。
あるきっかけでデュアルブートしているWindowsをUbuntu側から起動できると知ったので試したものを、記していきます。
この影響でWindowsのブート順が変わったり、なにかトラブルが起きた際は自己責任でお願いいたします。
私は今のところ問題なく使用できていますが、責任を一切負いませんのでご了承ください。
あくまでサンプル数1の例だという認識でご活用ください。
修正点等あればご遠慮なくご指摘ください。
以下箇条書きになりますが、何卒宜しくお願い致します。
1. Install VirtualBox
下記から「Linux Distributions」を選択し、debファイルからインストールする。
sudo apt install ./virtualbox-7.1_7.1.8-168469~Ubuntu~jammy_amd64.deb
2. create vmdk file
まずはvboxusersにグループ追加し、再起動します。
sudo gpasswd -a ubuntu disk
sudo gpasswd -a ubuntu vboxusers
newgrp vboxusers
sudo reboot
その後、.vmdk ファイルを作成(VirtualBoxのrawディスクアクセス用)します。
lsblk -o NAME,MODEL,SIZE,FSTYPE,LABEL,MOUNTPOINT
NAME MODEL SIZE FSTYPE LABEL MOUNTPOINT
nvme0n1 SOLIDIGM SSDPFK 953.9G
├─nvme0n1p1 100M vfat SYSTEM /boot/efi
├─nvme0n1p2 16M
├─nvme0n1p3 483.2G ntfs Windows
├─nvme0n1p4 1.8G ntfs Recovery
└─nvme0n1p5 468.8G ext4 /
cd ~/.VirtualBox || mkdir -p ~/.VirtualBox && cd ~/.VirtualBox
VBoxManage internalcommands createrawvmdk \
-filename "nvme0n1.vmdk" \
-rawdisk /dev/nvme0n1
上図のようになっていればOKです。
次のステップに入る前にアンマウントはしておきましょう。
# アンマウントしておく
sudo umount /dev/nvme0n1p1
sudo umount /dev/nvme0n1p2
sudo umount /dev/nvme0n1p3
3. create new VM
3.1. virtual Machine Name
対称のWindowsバージョンと仮想環境名を設定します。
EFIを有効化(重要)
設定 > システム > マザーボード > 「EFIを有効化」
ストレージ > コントローラに、さきほどの nvme0n1.vmdk を追加
3.2. System setting
メインメモリとEFIを有効化にします。
プロセッサも適切に設定します。 8 CPU以上は動かないという件も見つけましたが、今回は問題ありませんでした。
3.3 Storage
Section 2.で作成した.vmdkを選択します。
3.4. Show Windows VM
仮想環境作成後、Show(表示)で起動してみましょう。
無事表示できました。
3DCADなどはCPU割当量とかを調整すれば、問題なく動きそうですね。(もちろんWindowsのみのBootよりは速度が遅くなりますが)
4. Other setting
このついでに設定しておくべき項目も記載します。
4.1. Screen View
スクリーンサイズの自動調整です。
Devices / Incert Guest Additions CD Image
と進み、DualBoot側のWindowsにゲスト用のソフトをダウンロードします。
インストーラーにしたがってDLして再起動します。
Guest Additionsによって画面がVirtualBoxに応じて動的変化するようになります。
4.2. Languages
Tools / Preferences / Languages から日本語を選択します。
4.3. Setting Security
「Win+R」キーを押して、「ファイル名を指定して実行」ボックスに「services.msc」と入力。
BitLocker Drive Encryption Service を見つけ、BitLockerを自動に設定。
Windows セキュリティ > デバイスセキュリティ > 各項目はONにしておく。
Error Handle
Microsoftアカウントでログインを求められる
メールが初期設定の場合かつコードが届かない場合は一度ログインエラーにしてから、画面を一つ前に戻ると、他のログイン方法を試せる。
PINセットアップに進むと、後で設定するを選べるが結局変わらず。
MSアカウントのPWでログインできるように設定しました。
Boot
ブートがデフォルトWindowsになり、Boot画面でUbuntu / Windows選択ができないため要設定(T.B.D)
以上、Likeいただけると大変励みになりますので、よろしくお願いいたします。
Discussion
これライセンス認証が外れてしまった記憶
があるのですが、その辺りはいかがでしょうか
To ひな (@hatchi27) 様
コメントありがとうございます。ライセンス認証は問題ありません。
下記を実施またはMSの公式ページをご確認していただけますと幸いです。
①設定 > システム > ライセンス認証 からライセンスの再認証を実施する。
②cmd管理者権限で起動し"slmgr.vbs /ato"コマンドでライセンス認証する。
③認証エラーコードに応じた対応をする。
④設定 > システム > ライセンス認証 > プロダクトキーを変更する から再設定する。