久しぶりに VirtualBox を使ったらファイル共有の設定でちょっと時間を食ってしまったのでメモ。
TL;DR
- 共有フォルダとして使いたいフォルダをホスト側に作成する
- VirtualBox の仮想マシンの設定からゲスト側の共有フォルダ設定をする
- VirtualBox Guest Additions をインストールする
- 共有フォルダを使いたいユーザーをグループ
vboxsf
に足す - 仮想マシンを再起動する
詳細
環境
- VirtualBox
- 6.0.12 r133076 (Qt5.6.3)
- ホストOS (確認方法
sw_vers
)- ProductName: Mac OS X
- ProductVersion: 10.14.6
- BuildVersion: 18G4032
- ゲストOS (確認方法
cat /etc/lsb-release
)- DISTRIB_ID=Ubuntu
- DISTRIB_RELEASE=16.04
- DISTRIB_CODENAME=xenial
- DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS"
上記以外の環境でも恐らく基本的な作業は変わらないはず。。。
手順
Ubuntu のインストールが済んだ VirtualBox の仮想マシンは用意できているとします。
共有フォルダとして使いたいフォルダをホスト側に作成する
Mac の好きなところに共有用のフォルダを作成する。
今回は /path/to/shared_folder
に作成したとする。
Mac 上の共有設定をする必要はない。
VirtualBox の仮想マシンの設定からゲスト側の共有フォルダ設定をする
- 仮想マシンの「共有フォルダー」の設定項目をクリックする。
- 仮想マシンの「共有フォルダー」のダイアログが開くので、プラスマークのついたフォルダのアイコンをクリックする。
- 設定ダイアログが開く。
- 「フォルダーのパス」に Mac に作成した共有用のフォルダのパス
- 「フォルダー名」はパスを入力すると自動で入力される。
- 「自動マウント」にチェックを入れておくと仮想マシン起動時に自動的に共有フォルダがマウントされるようになる。
- 「マウントポイント」には
/media/
1 に続けて Ubuntu 上で共有フォルダとして使いたい任意のフォルダ名を設定する。今回はany_name_of_folder
。
2
VirtualBox Guest Additions をインストールする
Guest Additions をインストールすることで、ホスト OS とゲスト OS でデータのやり取りができるようになり、共有フォルダ経由のファイルのやりとりの他に、
- クリップボードの共有
- ドラッグ&ドロップ
も可能になる。3
インストールするには画面上部のメニューバーから
Devices
→ Insert Guest Additions CD image ...
を選択し、表示されるダイアログで「実行する」を選択する。
共有フォルダを使いたいユーザーをグループ vboxsf に足す
通常のユーザーには media
フォルダ以下へのアクセス権限がないため、毎回
sudo ls /media/any_name_of_folder
のように sudo
を付けてスーパーユーザー権限(root 権限とも言う)でコマンドを実行しないといけない。
vboxsf
グループに属するユーザーなら共有フォルダを利用できるため、このグループに共有フォルダを利用可能にしたいユーザーを追加する。
- デスクトップで右クリックをして「端末を開く」を選択する。
-
sudo gpasswd -a name_of_user vboxsf
上記のコマンドのname_of_user
をユーザー名4に変更してコマンドを実行する。
仮想マシンを再起動する
設定を有効にするために reboot
コマンドを実行するなり何なりして仮想マシンを再起動する。