VirtualBox 上で USB デバイスを扱うのは、接続の問題に直面することがあり、時にストレスとなります。この問題を解決するには、VirtualBox USB パススルー機能をシステム上で有効にする方法があります。これにより、ホスト OS に接続されている USB デバイスを仮想マシンで簡単に利用することが可能です。
本ガイドでは、この機能を有効にする方法を紹介します。これにより、USB デバイスをまるで VirtualBox 環境に直接接続しているかのように利用できるようになります。また、VirtualBox の設定を扱わずに済むソフトウェアソリューションもご紹介します。以下のボタンをクリックして、今すぐ VirtualBox USB パススルーをお試しください。
VirtualBox で USB デバイスのパススルー機能を利用するには、VirtualBox 拡張パックをインストールする必要があります。この拡張パックはオプションのパッケージで、VirtualBox 環境に追加機能を提供します。拡張パックをインストールすると、USB 2.0/3.0 のサポートが有効になり、VirtualBox 環境内から USB デバイスにアクセスできるようになります。
拡張パックをインストールする前に、最新バージョンの VirtualBox を使用していること、またすべてのドライバが更新されていることを確認してください。互換性の問題を避けるためのインストール手順は以下の通りです。
最新バージョンをインストールして再起動
VirtualBox と拡張パックの両方の最新バージョンをインストールした後、マシンを再起動してください。
vBox カーネルドライブのエラーに対処
Mac の vboxusers グループでカーネルドライブの障害が発生した場合、指定された手順を使用して修正できる場合があります。ただし、これらの手順は Mojave、Catalina、Big Sur など、最新の macOS バージョンに特化しています。
vboxmanage コマンドラインを使用した拡張パックのインストール
Mac ユーザーは、以下の手順で vboxmanage コマンドラインを使用して拡張パックをインストールできます。この操作は手動で、または Homebrew の cask を介して実行可能です。
拡張パックをダウンロードした後、ターミナルを開き、以下のコマンドを実行します:
sudo vboxmanage extpack uninstall ~/Downloads/Oracle_VM_VirtualBox_Extension_Pack-6.1.10.vbox-extpack
VirtualBox の設定ウィンドウ内の USB セクションでは、USB サポートの詳細な設定が可能です。適切な設定を行うことで、Oracle VM VirtualBox はホストに接続された USB デバイスに仮想環境内から直接アクセスできるようになります。この機能は、オペレーティングシステムに提供される仮想 USB コントローラーを介して実現されます。なお、ゲスト VM が USB デバイスを使用し始めると、そのデバイスはホストマシンから利用できなくなります。
注意点:
「USB コントローラーを有効にする」 チェックボックスを選択することで、VirtualBox の仮想マシンで USB パススルーを有効化できます。以下の設定は、使用する USB デバイスに応じて選択してください。
USB コントローラー
デバイスの USB サポートに必要なレベルを提供するコントローラーを選択します。
注意:
EHCI および xHCI コントローラーを有効にするには、VirtualBox 拡張パッケージを取得し、インストールする必要があります。詳細はセクション 1.5「Oracle VM VirtualBox と拡張パッケージのインストール」を参照してください。
VBoxManage list usbhost.
Windows コンピュータで VirtualBox USB パススルーを有効化するには、フィルター作成後にデバイスを一度取り外し、再接続する必要があります。
フィルターを使用すると、どのデバイスを自動的に VirtualBox 仮想マシンで利用可能にするかを制御できます。
• 複数のフィルターで同じデバイスを指定することが可能です。
• フィルターは一時的に無効化できます。フィルター名の横にあるチェックボックスをオフにすることで無効化され、必要に応じて再度チェックを入れることで有効化できます。
Oracle VM VirtualBox は、リモート USB デバイスへの接続を可能にする VirtualBox Remote Desktop Extension (VRDE) を提供しています。
VirtualBox は、VirtualBox Remote Desktop Protocol (VRDP) を介してネットワーク経由でリモートデバイスをサポートします。VRDP を使用することで、VirtualBox のゲスト VM はリモートコンピュータ上の USB デバイスに、あたかもローカルホストに直接接続されているかのようにアクセスできます。これにより、Oracle VM VirtualBox ホストを構築し、RDP ビューアを実行可能なネットワークアダプターを備えた任意のマシンからクライアントが接続できるようになります。リモートの Oracle VM VirtualBox サーバーは、クライアントに接続されているデバイスにアクセスできます。
リモートデバイスのフィルターを設定する際は、設定時に「Remote」または「Any」を指定する必要があります。
リモートUSBデバイスは、使用しているRDPクライアントが拡張機能をサポートしている場合にのみアクセス可能です。VirtualBoxは、LinuxおよびOracle Solarisホスト向けにrdesktop-vrdpというRDPクライアントを提供しています。このRDPクライアントは以下のコマンドで起動できます:
rdesktop-vrdp -r usb -a 16 -N my.host.address
Sun Raytheon クライアントを使用している場合、リモート USB デバイスにアクセスするために uttsc
を使用できる可能性もあります。Oracle は、将来的に他のプラットフォーム向けの RDP クライアントも提供する予定です。
リモートホストでホストドライバーの自動読み込みを無効化することをお勧めします。この手順を無効化しない場合、RDPクライアントによるデバイスのアクセスに影響を及ぼす可能性があります。
VirtualBox の USB デバイスパススルーが正しく設定されている場合、VM の VBox.log
ファイルに接続および切断イベントが記録されます。
USB Network Gateは、真のクロスプラットフォームソリューションを提供します。これにより、以下のような環境で利用可能です:
• Linux(Ubuntu)
• Mac
• Windows(XP以外のすべてのバージョン)
特に、Windows 10のVirtualBox USB対応をサポートしています。iPhoneのリダイレクトも可能で、クライアント側にドライバをインストールしなくても利用できます。さらに、トラフィック暗号化を有効にすることで、未保護のESXi接続が悪用され、VMDKファイルに不正アクセスされるのを防ぐことができます。
注意事項: VirtualBoxインストール環境での問題
VirtualBoxがインストールされているマシンでは、USBデバイスをコンピュータのUSBポートに接続したり、USB Network Gateでデバイスを共有/解除したりすると、VBoxUSBMon.sys ドライバーがクラッシュし、ブルースクリーン(BSOD)エラーが発生する場合があります。
対処法:
1. VBoxUSBMon.sys ドライバーを停止する
2. VirtualBox以外の仮想マシンを使用する
Linuxユーザーへの注意
Linuxでは、lsusb という便利なユーティリティを使用して、ローカルマシンのUSBバスや接続デバイスの情報を確認できます。このユーティリティを活用するには、Linuxカーネルがdev bus USBインターフェースをサポートしている必要があります。また、これらの操作を行うには、vboxusers グループに所属している必要があります。