VirtualBoxで共有フォルダーを作成してホストとゲスト間でファイルを共有する

重要: この記事は単一のワークフローに従っており、WindowsゲストとLinuxゲストの双方について図入りで詳述します。代替手段やトラブルシュート、運用チェックリストも付けています。
目的と関連検索ワード
この記事の主目的は「VirtualBoxで共有フォルダーを設定する方法」を分かりやすく示すことです。関連ワード例: VirtualBox 共有フォルダー設定、VirtualBox Guest Additions、VM ファイル共有、vboxsf 権限、Windows VM 共有フォルダー、Linux VM 共有フォルダー。
前提条件
- VirtualBox(ホスト側)と対象のゲストOSがインストール済みであること。
- ゲストにGuest Additionsをインストールできる権限(管理者またはsudo権限)があること。
- ホストとゲストが同じマシン上で動作している、あるいはネットワークで接続されていること。
注意: 共有フォルダーは便利ですが、権限設定を誤るとファイルアクセスが意図せず広がる可能性があります。機密データを扱う場合はアクセス制御を厳格にしてください。
目次
- Windowsゲストでの共有フォルダー設定
- Linuxゲストでの共有フォルダー設定
- 共通のトラブルシュートとチェックリスト
- 代替手段と比較
- 運用チェックリスト(役割別)
- よくある失敗例と回避法
- 1行用語集
- 終わりに(要点まとめ)
Windowsゲストでの共有フォルダー設定
以下はWindows 10 / 11 をゲストにした一般的手順です。ホストはWindowsでもmacOSでもLinuxでも手順の概念は同じですが、ホスト側の共有設定方法はOSごとに異なります。
事前準備(ホスト)
- ホストOS上で共有用フォルダーを作成します。例: C:\Users\yourname\SharedFolder。
- フォルダーを右クリックして「プロパティ」を開き、「共有」タブに移動します。
- 「共有」ボタンをクリックし、ユーザーに「Everyone(すべてのユーザー)」を追加します。追加後、アクセス許可を「読み取り/書き込み」に設定して「共有」をクリックします。
画像説明: ホストのファイルエクスプローラーで作成された共有フォルダーの例。フォルダー名と配置は環境に依存します。
ゲストにGuest Additionsをインストールする(Windowsゲスト)
- Windowsゲストを起動します。
- VirtualBoxのメニューから「デバイス」→「Guest Additions CD イメージの挿入」を選びます。ツールバーが見えない場合は Ctrl + Home を押してメニューを表示します。
- 自動実行のプロンプトが出たら、VirtualBox Windows Additionsのインストーラを実行します。管理者権限が必要です。
- インストールが完了したら再起動します。完了ダイアログで「Finish」を選び再起動してください。
画像説明: VirtualBoxのメニューからGuest Additionsを挿入する様子。
VirtualBoxで共有フォルダーを追加する(Windowsゲスト)
- ゲストが再起動したら、VirtualBoxメニューで「デバイス」→「共有フォルダー」→「共有フォルダー設定」を開きます。
- 右側の「フォルダー追加」アイコンをクリックします。
- Folder Path にホスト側の共有フォルダーを指定します(ブラウズボタンで選択可)。Folder Name に表示名を入れます。
- 「自動マウント」と「常に有効(Make Permanent)」にチェックを入れてOKを押します。
画像説明: VirtualBoxの共有フォルダー設定画面。Folder PathやAuto-mountオプションを設定する部分を示す。
Windowsゲスト側で共有を有効化する
- ゲスト内のエクスプローラーで「ネットワーク」を開きます。
- 「ネットワーク探索がオフになっています」というメッセージが出たら、クリックして「ネットワーク探索とファイル共有を有効にする」を選択します。
- 「はい」を選んで有効化します。
- ネットワークの一覧を更新すると、ホスト側で指定した共有フォルダーが表示され、アクセスできるようになります。
画像説明: Windowsのネットワーク探索を有効にする操作画面。
重要な注意事項:
- ゲストで共有フォルダーが見えないときは、Guest AdditionsのバージョンがVirtualBox本体のバージョンと一致しているか確認してください。
- Windowsのファイアウォールやセキュリティソフトがブロックする場合があります。必要に応じて例外を追加してください。
Linuxゲストでの共有フォルダー設定
Linuxゲストは少しだけ追加の手順が必要です(マウントポイントの作成とvboxsfグループへの追加など)。
手順(ホスト)
- ホスト側で共有したいフォルダーを作成します。例: /home/yourname/SharedFolder。例として、その中に Books フォルダーを作成しました。
画像説明: ホスト上に作成した「Shared Folder」フォルダー内にさらにBooksフォルダーを置いた例。
手順(ゲスト)
- Linuxゲストを起動し、マウントポイントとなるディレクトリを作成します。GUIで作っても良いですし、ターミナルで次のように作成します:
sudo mkdir -p /home/あなたのユーザー名/Shared_Folder
- VirtualBoxメニューから「デバイス」→「Guest Additions CD イメージの挿入」を選びます。
- 表示されたプロンプトでGuest Additionsのインストールを選び、パスワードを入力してインストールします。インストール後は再起動します。
画像説明: Linuxデスクトップにマウントポイント用フォルダーを作成した例。
VirtualBoxの「設定」→「共有フォルダー」でFolder Path(ホスト側の共有するフォルダー)、Folder Name(ゲスト上での表示名)、Mount Point(例: /home/username/Shared_Folder)を指定します。Auto-mount と Make Permanent にチェックを入れます。
ゲストを再起動またはログアウト/ログインすると、指定したマウントポイントに共有フォルダーが現れます。ただし、初期状態ではロックされて開けないことがあります。これは共有フォルダーの所有者が vboxsf グループであるためです。
ユーザーを vboxsf グループに追加します(ユーザー名は実際のユーザー名に置き換えてください):
sudo adduser username vboxsf
- グループ追加後、システムを再起動します:
sudo reboot
再起動後、共有フォルダーに読み書きできるはずです。
画像説明: Linuxゲストのファイルマネージャーにマウントされた共有フォルダーが表示された例。
ヒント: マウントされない場合は /media または /mnt にマウントされていないか確認してください。自動マウントが有効でも、手動でマウントしたいときは次のコマンドを使います(例):
sudo mount -t vboxsf FolderName /home/username/Shared_Folder
共通のトラブルシュート(チェックリスト形式)
- Guest AdditionsのバージョンがVirtualBoxのバージョンと一致しているか確認する。
- ゲストを再起動して、Guest Additionsのモジュールが正しく読み込まれているかを確認する。
- Linuxゲストではユーザーが vboxsf グループに追加されているか確認する。
- Windowsゲストではネットワーク探索とファイル共有が有効になっているか確認する。
- ファイアウォールやアンチウイルスがSMBやVirtualBoxのファイル共有をブロックしていないか確認する。
- 共有フォルダーが「Auto-mount」されていない場合、手動でマウントするか、フォルダー設定を見直してください。
よくあるエラーメッセージと意味:
- 「Access denied」 → 権限不足。Windowsの共有権限、またはLinuxのvboxsfグループを確認。
- 「Folder not found」 → Folder Pathが間違っている。ホスト上のパスを確認。
- 「Guest Additions not found」 → Guest Additionsが未インストールまたはインストール失敗。
代替手段と比較(いつ使うべきか/いつ避けるべきか)
- 共有フォルダー(Guest Additions): 最も簡単でローカル向け。パフォーマンスは中程度。ホスト・ゲストが同一マシン上のとき推奨。
- Samba(SMB): ネットワーク越しに複数のマシンと共有したい場合に有効。詳細なアクセス制御が可能だが設定はやや複雑。
- NFS: Linux間での大容量共有に向く。パフォーマンスが良いがWindowsサポートは限定的。
- SCP/SFTP/rsync: ファイル転送に向く。同期やスクリプト運用向け。双方向のリアルタイム共有には不向き。
- Drag & Drop(VirtualBoxの機能): 小さなファイルなら手軽。ただし大容量やフォルダー単位の移動には向かない。
選び方の目安: もしゲストとホストが同じ物理マシンで、頻繁にファイルの読み書きを行うならGuest Additionsの共有フォルダーが最も簡単です。複数端末や詳細なアクセス制御が必要ならSambaやNFSを検討してください。
運用チェックリスト(役割別)
ホスト管理者:
- 共有フォルダーを作成し、適切なNTFS/ファイルシステム権限を付与する。
- VirtualBox本体を最新の安定版に更新する。
ゲスト管理者(Windows):
- Guest Additionsをインストールして再起動する。
- ネットワーク探索とファイル共有を有効にする。
ゲスト管理者(Linux):
- Guest Additionsをインストールして再起動する。
- 必要なマウントポイントを作成する。
- ユーザーを vboxsf グループに追加する。
セキュリティ担当:
- 機密フォルダーにEveryoneを割り当てないなど、アクセス方針を策定する。
- 監査ログの有無と転送ルールを確認する。
よくある失敗例と回避策
- Guest Additionsのバージョン不一致 → 対処: VirtualBoxとGuest Additionsのバージョンを合わせて再インストール。
- vboxsfに追加し忘れてファイルがロックされる(Linux) → 対処: sudo adduser username vboxsf を実行し、再起動。
- Windowsゲストで共有が見えない → 対処: ネットワーク探索を有効化、ファイアウォール設定を確認。
- ホスト側のフォルダーが移動・削除された → 対処: VirtualBox側のFolder Pathを更新するか再追加。
ミニ手順書(SOP): 「新規VMを共有フォルダー付きで配布する」
- ホストで共有フォルダーを用意し、初期ファイルを配置する。
- VirtualBoxの仮想マシン設定でShared Foldersを追加し、Auto-mountとMake Permanentを有効にする。
- ゲストにGuest Additionsをインストールして再起動する。
- Linuxゲストならvboxsfグループにユーザーを追加する。
- 確認: ファイルの読み書き、所有権、パーミッションを検証する。
- ドキュメントに使用手順と制限事項を記載して配布する。
短い意思決定チャート(Mermaid)
flowchart TD
A[共有したい?] -->|はい| B{同一マシンで動かすか}
B -->|はい| C[Guest Additions 共有フォルダー]
B -->|いいえ| D{複数端末で共有か}
D -->|はい| E[Samba or NFS]
D -->|いいえ| F[SCP/rsync]
C --> G[Auto-mountを有効にする]
E --> H[アクセス制御と認証を設定]
F --> I[転送スクリプトを作る]
1行用語集
- Guest Additions: VirtualBoxが提供するゲスト向け補助ソフト。共有フォルダー、マウス統合、ビデオドライバなどを提供する。
- vboxsf: VirtualBoxの共有フォルダーを扱うためのLinuxグループ名。
- Auto-mount: 仮想マシン起動時に自動的に共有フォルダーをマウントする設定。
終わりに(要点まとめ)
- VirtualBoxの共有フォルダーは、ホストとゲスト間でファイル共有を簡単に実現します。
- 最低限の手順は「共有フォルダー作成→Guest Additionsインストール→共有設定→権限調整」です。
- トラブルが起きたらGuest Additionsのバージョンとゲスト側の権限(vboxsf等)をまず確認してください。
要点チェック:
- Windowsゲスト: ネットワーク探索とファイル共有を有効にする。
- Linuxゲスト: マウントポイントを作成し、ユーザーをvboxsfグループに追加する。