
目次
はじめに
VirtualBox のホストとゲスト間でファイルをやり取りする際に共有フォルダを作成しておくと便利です。この記事では、任意のホスト OS と Linux Mint19 ゲスト (おそらく Ubuntu でも同じ) 間でのファイル共有設定を行います。
共有フォルダの準備
ホスト上にフォルダを準備
まず、ホスト OS 上に共有フォルダを準備します。(ここでは、~/localshare というフォルダを使うものとしますので、以降、ご自身の設定フォルダに置き換えてお読みください。)
VirtualBoxに共有フォルダを設定
VirtualBox を起動して、該当する仮想マシンの設定 > 共有フォルダーを開き、右上の+ボタンをクリックして「設定の編集」を開きます。フォルダーのパスを設定すると自動的にフォルダ名も入ります。「自動マウント」と「永続化する」にチェックを入れます。
ゲストOSの設定
マウント状況の確認
ゲストOS (Linux) を起動します。sf_localshare という共有フォルダが追加されているのを確認できます。
デフォルトでは /media/sf_共有フォルダ名 にマウントされます。
$ ls -l /media 合計 8 drwxr-x---+ 3 root root 4096 8月 12 10:15 jade drwxrwx--- 1 root vboxsf 4096 8月 12 10:24 sf_localshare
ユーザを vboxsf グループに所属させる
ただし、このままではアクセスできません。ここ大事グループ vboxsf に所属する必要があります。usermod コマンドを使います。 (下記で jade はユーザ名です。自身の Linux ユーザ名に置き換えてください。)
$ sudo usermod -aG vboxsf jade
vboxsf グループが追加されているかどう確認してみます。
$ id jade uid=1000(jade) gid=1000(jade) groups=1000(jade), ... ,999(vboxsf)
上記例の場合、999 (vboxsf) が追加されているのが確認できます。
ゲストOSの再起動
この段階でゲスト OS を再起動すれば、デスクトップの sf_localshare から共有フォルダにアクセスできます。
任意のフォルダにマウントする
デフォルトでは /media/sf_共有フォルダ名 にマウントされますが、任意のフォルダにマウントすることもできます。特にその必要のない方は以下を読む必要はありません。
自動マウントを解除
一旦仮想マシンを終了して、設定 > 共有フォルダーで「自動マウント」のチェックを外して再起動します。 (先ほど「永続化する」を実行しているため、今回は「永続化する」のメニューは消えていると思います。)
マウント先フォルダを作成
Linux が起動したらマウント先となるフォルダを作成しておきます。(ここでは、~/share としました。)
/etc/fstab の編集
次に /etc/fstab を管理者権限で開いて下記を追加します。
localshare /home/jade/share vboxsf defaults,uid=1000,gid=1000 0 0
最初の項目の localshare は上記「設定の編集」の「フォルダ名」です。また、uid, gid はそれぞれフォルダの所有者/所有グループの ID
(id コマンドで取得したものです。) で、これを指定しないとマウント後のフォルダ所有者が root になってしまい、読み取りしかできなくなります。
マウント
ファイルを保存したらマウントの設定を有効にします。下記コマンドを実行すれば、再起動しなくても確認できます。
sudo mount -a
これで、~/share から共有フォルダにアクセスできるようになりました。再起動後も ~/share が使えることを確認しておきましょう。