LinuxゲストOS用のVirtualBox共有フォルダの構成

VirtualBox共有フォルダの設定手順

目次

LinuxゲストOSでVirtualBox共有フォルダの設定を構成するには、以下の手順に従ってください:

VirtualBox共有フォルダ設定ウィンドウ

1. VirtualBoxゲストアドディションのインストール

共有フォルダのサポートを有効にするには、ゲストOSにVirtualBoxゲストアドディションをインストールする必要があります:

  • ゲストを起動します。
  • VirtualBoxメニューから選択します:
Devices > Insert Guest Additions CD Image

ゲストアドディションCDイメージ挿入スクリーンショット

  • ゲストのターミナルを開き、必要に応じてCDをマウントし、インストーラーを実行します:
sudo sh /media/$USER/VBox_GAs_*/VBoxLinuxAdditions.run
  • インストール後、ゲストを再起動します。

  • ゲストでvboxsfグループにユーザーを追加します(アクセス権限のために非常に重要です):

sudo usermod -aG vboxsf $(whoami)

` グループ変更が反映されるには、再起動またはログアウト/ログインが必要です。

2. ホストのVirtualBoxマネージャーで共有フォルダを設定

  • VMを右クリックし、以下に移動します:
Settings > Shared Folders
  • 共有フォルダを追加ボタンをクリックします。
  • 以下を設定します:
    • フォルダパス: Linuxホスト上の共有するフォルダ。
    • フォルダ名: ゲスト内で参照する名前(例: share)。
    • オートマウントをチェックして、起動時に自動マウントするようにする(オプション)。
    • 永続的共有をチェックして、永続的な共有にする(オプション)。

3. Linuxゲストで共有フォルダをマウント

オートマウントが有効になっている場合、VirtualBoxは起動時に共有フォルダを自動的にマウントします。通常は/media/sf_(例: /media/sf_share)にマウントされ、vboxsfグループにアクセス権限が付与されます。

手動でマウントしたい場合、またはカスタムの場所にマウントしたい場合:

  • マウントポイントを作成します:
mkdir ~/host_share
  • 以下を使用してマウントします:
sudo mount -t vboxsf  ~/host_share

ブート時に共有フォルダを自動マウント

Linuxゲストでは、共有フォルダをゲストの/etc/fstabにエントリを追加することをお勧めします。これにより、システムが起動するたびにフォルダがマウントされます。

ゲストの/etc/fstabをルートとしてテキストエディタで開きます:

sudo nano /etc/fstab

以下のように行を追加します。sharename/home/youruser/host_shareを希望するパス(例: /mnt/shared)に置き換えてください:

sharename   /home/youruser/host_share   vboxsf  defaults  0   0

sharenameはVirtualBox共有フォルダ設定で定義された名前です。

マウントポイントを作成(存在しない場合):

mkdir -p /home/youruser/host_share

すべてのファイルシステムをマウントまたは再起動してテスト:

sudo mount -a

共有フォルダが今アクセス可能になっていることを確認してください。

アクセス、権限、トラブルシューティング

  • 共有フォルダはゲスト内でroot:vboxsfに所有されます。
  • ゲストユーザーがvboxsfグループに所属していることを確認してください(id $USERで確認)。
  • 権限の問題が発生した場合は、vboxsfグループに所属していることを確認し、グループに追加した後、ログアウト/ログイン(または再起動)を行ってください。
  • より複雑なニーズや動的/条件付きマウントが必要な場合は、systemd自動マウントユニットも利用できますが、Linux上のVirtualBox共有フォルダに対しては/etc/fstabが最も簡単で信頼性が高い方法です。

この方法により、VirtualBox共有フォルダがシステムの起動時に常に自動的にマウントされるようになります。

VirtualBoxはVMXルートモードでは動作できません

以下のエラーが発生し、KVMカーネルモジュールが原因であると指摘される場合があります:

VBoxManage: error:
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)

VBoxManage: error:
Details:
code NS_ERROR_FAILURE (0x80004005),
component ConsoleWrap, interface IConsole

ご自身の責任において以下の手順を試してください。 Ubuntu 24.04では、このエラーを一時的に克服するために、KVMが使用されていないことを確認した上で、以下を試してみてください:

lsmod | grep kvm
lsof | grep kvm
sudo modprobe -r kvm_intel 

ご希望があれば、無効化して再コンパイルすることもできます。VirtualBoxを頻繁に使用している場合に適しています。

KVMがロードされているかを確認します(VirtualBoxエラーが発生している場合、通常はロードされているはずです):

lsmod | grep kvm

KVMが現在使用されているかを確認します:

lsof | grep kvm

出力がない場合、KVMは使用されておらず、カーネルモジュールを安全にアンロードできます:

sudo rmmod kvm_intel # AMD CPUを使用している場合はkvm_amd
sudo rmmod kvm

これは現在のセッションでのみカーネルモジュールをアンロードします。起動時にKVMを無効にするには、ブラックリストに追加し、initramfsを更新する必要があります。/etc/modprobe.d/blacklist-kvm.confに以下を追加してください:

blacklist kvm
blacklist kvm_intel   # AMD CPUを使用している場合はkvm_amd

initramfsを更新し、再起動します:

sudo update-initramfs -u
sudo reboot

有用なリンク