この記事を読むのに必要な時間は約 12 分です。
VirtualBox にて、USB メモリにインストールした OS を VM として起動させるには、コマンド実行など専用の手順が必要です。備忘のためにメモしておきたいと思います。
なお、VirtualBox でも USB メモリから VM を起動する場合、毎回 (多分) VirtualBox を管理者権限で起動しなければならず、常用には向いてないかと思います。常用するようであれば、HDD インストールすることをオススメ致します。
今回ご紹介する手順は Windows 用のものですが、Mac OS X や Linux 等の他 OS でもパスの指定方法などを変えれば同様かと思います。
VirtualBox で USB ブートを行うための手順概要
以下の手順が必要となります。
- コマンドプロンプト (管理者権限にて起動) より、USB メモリを仮想ディスクとして読み込むための vmdk ファイルを作成します。
- VirtualBox (管理者権限にて起動) より、対象の VM の設定にて、作成した vmdk ファイルをハードディスクとして追加します。
- 対象の VM を起動します。
[1] USB メモリ用の仮想ディスク vmdk ファイル作成
[1-1] コマンドプロンプトを管理者権限で起動
Windows の管理者権限で、コマンドプロンプトを起動する必要があります。
管理者権限でコマンドプロンプトを起動する方法を 3 つご紹介します。いずれの方法でも構いません。実施後、ユーザーアカウント制御の確認画面が表示されるので、OK を押して次へ進みます。
(1) スタートメニューからコマンドプロンプトを管理者権限で起動する方法
Windows 10 であれば、スタートメニュー の 「Windows システムツール」辺りにあるかと思いますので、右クリックして、「管理者として実行」を選びます。
(2) ファイル名を指定して実行から Ctrl + Shift + Enter により、コマンドプロンプトを管理者権限で起動する方法
初めに、当方法では出来ない可能性があります。私の環境 (Windows 10 にリモートデスクトップでログイン) では、当方法を実行しても、管理者権限ではなく、通常のユーザー権限で起動してしまいます…。昔は出来た気がするのですが…。
Windows キー + r キーを同時押しして、「ファイル名を指定して実行」ダイアログを開きます。
それから、「cmd」を入力して、Ctrl + Shift + Enter キーで実行することで、管理者権限で起動することができるかも知れません。
(3) タスクバーから管理者権限でコマンドプロンプトを起動する方法
タスクバーから実行することができます。一度普通にコマンドプロンプトを起動します。
先ずは、Windows キー + r キー を同時押して、「ファイル名を指定して実行」から、「cmd」を入力して、コマンドプロンプトを起動します。(非管理者権限)
続いて、タスクバーのコマンドプロンプトアイコンを右クリックします (図中の1)
さらに、「コマンドプロンプト」を右クリック (図中の2) して、「管理者として実行」をクリックします (図中の3)。
[1-2] 対象となる USB メモリの物理ディスク番号を調べる
コマンドプロンプトを管理者権限で起動したら、以下のコマンドを実行し、対象となる USB メモリの物理ディスク番号を調べます。
wmic diskdrive list brief
結果は、5 つのフィールドが並んでいます。モデル名から、該当の USB メモリを推測します。そして、対応する DeviceID をメモします。
以下の例では、「SMI USB DISK USB Device」というものが USB メモリで、対応する DeviceID は ¥¥.¥PHYSICALDRIVE8 であることが分かります。
c:\VirtualBox>wmic diskdrive list brief Caption DeviceID Model Partitions Size ST3500320AS \\.\PHYSICALDRIVE1 ST3500320AS 1 500105249280 INTEL SSDSC2CT240A3 \\.\PHYSICALDRIVE0 INTEL SSDSC2CT240A3 3 240054796800 SMI USB DISK USB Device \\.\PHYSICALDRIVE8 SMI USB DISK USB Device 2 8052549120
[1-3] 仮想ディスクを作成する
いよいよ、仮想 ディスクを作成します。
VirtualBox がインストールされたフォルダ (*) に cd コマンドで移動します。ここでは、例として、C:¥VirtualBox にインストールされているものとします。
(*) VirtualBox がインストールされたフォルダが不明な場合の確認方法は、後述します。
C:\> cd /d c:\VirtualBox C:\VirtualBox\>
続いて、以下のコマンドを実行します。(1 行で実行します)
C:\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename "C:\usb.vmdk" -rawdisk \\.\PhysicalDrive8
filename オプションの後ろは、好きなパスを指定して下さい。指定した位置に vmdk ファイルが作成されます。
“%USERPROFILE%\usb.vmdk” と指定すれば、C ドライブ > ユーザー > ユーザー名 のフォルダに作成されます。
rawdisk オプションの後ろは、先ほどの手順 [1-2] で調べた物理ディスク番号を指定します。
Linux 等の場合は、/dev/da1 等といったデバイスを指定すれば OK です。
作成された vmdk ファイルは、任意の場所に移動しても大丈夫です。
VirtualBox がインストールされたフォルダを確認する方法
以下の手順で確認できます。
VirtualBox を起動し、タスクバーのアイコンを右クリック (図中の1) → VirtualBox を右クリック (図中の2) → プロパティ をクリック (図中の3) します。
VirtualBox のショートカットのプロパティが開きますので、「リンク先」欄を見ると、VirtualBox がインストールされたフォルダへのパスが表示されています。da
2. 作成した vmdk ファイルを仮想ハードディスクとして追加する
2-1. VitualBox を管理者権限で起動する
VirtualBox を管理者権限で起動するには、スタートメニューやタスクバーから、コマンドプロンプトの際と同様に、右クリックして「管理者として実行」を選べば OK です。
2-2. VM 設定のストレージにて、仮想 HDD として追加する
VM の設定を開き、ストレージに移動します (図中の1)。
下の方にある、フロッピーディスクアイコン? をクリックします (図中の2)。
ハードディスクを追加をクリックします (図中の3)。
以下のポップアップが表示されるので、「既存のディスクを選択」をクリックします。
ファイルの選択画面になりますので、手順 [1-3] で作成した vmdk ファイルを選択します。
もし、仮想マシンの起動順序の設定で HDD を ON にしていない場合は、ON にしておきましょう。
以上で、仮想マシンの設定は完了です。
3. VM を起動する
起動は、通常通り起動すれば OK です。
エラーが発生した場合
よく見かけそうなエラーについて、原因と対処方法をご紹介します。
エラー 1. vmdk ファイル作成時 (手順 [1-3]) にエラーが発生した場合
vmdk ファイル作成時 (手順 [1-3]) に、エラーメッセージが表示された場合、以下の原因が考えられます。
- コマンドプロンプトを管理者権限で起動していない
- エラーメッセージ :
VBoxManage.exe: error: Cannot open the raw disk ‘\\.\PhysicalDrive●’: VERR_ACCESS_DENIED - → 手順 [1-1] を参考に、管理者権限でコマンドプロンプトを起動して下さい。
- エラーメッセージ :
- 物理ディスク番号が正しくない
- エラーメッセージ :
VBoxManage.exe: error: Cannot open the raw disk ‘\\.\PhysicalDrive●’: VERR_FILE_NOT_FOUND - → 手順 [1-2] を参考に、物理ディスク番号を確認して、再度実行して下さい。
- エラーメッセージ :
エラー 2. 「ディスクイメージファイル C:\●●\●●.vmdk を開けません」
仮想ディスクを追加時 (手順 [2-2]) 、上記エラーメッセージが表示された場合、以下の原因が考えられます。
- VirtualBox を管理者権限で起動していない
- エラーメッセージ (「詳細」欄 )
Permission problem accessing the file for medium ‘(vmdk ファイルパス)’ (VERR_ACCESS_DENIED). - → 手順 [2-1] を参考に、VirtualBox を管理者権限で起動して、再度設定しましょう。
- エラーメッセージ (「詳細」欄 )
- USB メモリが取り外されている、あるいは物理ディスク番号の変更等により、vmdk 作成時の物理ディスク番号に該当するデバイスがない
- エラーメッセージ (「詳細」欄 )
Could not find file for the medium ‘(vmdk ファイルのパス)’ (VERR_FILE_NOT_FOUND). - → USB メモリがささっていることや、手順 [1-2] を参考に、Windows 上で認識されていることを確認しましょう。
- エラーメッセージ (「詳細」欄 )
その他のエラーについては、エラーメッセージとご紹介した手順をよく確認し、エラーメッセージ等で調べると良いかと思います。
今回は以上です。