VirtualBox共有フォルダーを再帰的にchown
しようとしていますが、機能させることができません。
$ ls -lah
total 16K
drwxr-xr-x 4 root root 4.0K Aug 1 2012 .
drwxr-xr-x 23 root root 4.0K Jul 21 2012 ..
drwxrwx--- 1 root vboxsf 4.0K May 4 17:02 sf_dev
drwxrwx--- 1 root vboxsf 4.0K Sep 2 10:21 sf_dropbox
$ Sudo chown -R pknight:pknight sf_dropbox && ls -lah
total 16K
drwxr-xr-x 4 root root 4.0K Aug 1 2012 .
drwxr-xr-x 23 root root 4.0K Jul 21 2012 ..
drwxrwx--- 1 root vboxsf 4.0K May 4 17:02 sf_dev
drwxrwx--- 1 root vboxsf 4.0K Sep 2 10:21 sf_dropbox
ユーザーをvboxsfグループに追加するだけでよいことは承知しています(完全なアクセス許可があるため)。ただし、すべての共有フォルダーにすべてのユーザー/デーモンに完全なアクセス許可を与えたくありません。
私はVirtualBox 4.2.xを実行しています。Windows7をホストとして、XubuntuとDebianの両方をゲストとして使用しています。
VirtualBox共有ディレクトリの所有者/グループを変更する方法はありますか?
VirtualBox共有ファイルシステム(vboxsf)はPOSIX権限をサポートしていませんそれ自体;むしろ、それらはマウント時に「設定」されます。
$ mount
...
dropbox on /media/sf_dropbox type vboxsf (gid=1001,rw)
gid
ビットは、ディレクトリを所有するグループを指定します。私のシステムでは、これはたまたまvboxsfグループに対応しています。
再マウントすることで、ユーザーやグループの所有権を変更できます(root
として実行する必要があります):
# mount -t vboxsf -o remount,gid=1000,uid=1000,rw dropbox /media/sf_dropbox
1000
を目的のユーザー/グループIDに置き換え、dropbox
を共有の名前(sf_
の後の部分)に置き換えます。
これは、/etc/fstab
を編集しない限り、再起動するたびに実行する必要があります。
これらは、私の共有フォルダーが期待どおりに動作するようにするために私が従った手順です。
ゲストを再起動します。
VBoxManage setextradata <guest vm> VBoxInternal2/SharedFoldersEnableSymlinksCreate/<shared folder> 1
デバイス->ゲストエディションのCDイメージを挿入
Sudo usermod -a -G vboxsf <username>
Sudo chown -R <username>:<user group> /media/
システムを再起動します。
Sudo mount -t vboxsf -o gid=<username>,uid=<user group>,rw <share folder name> /media/sf_<share folder name>
/etc/fstab
の対応する行です。data /media/sf_data vboxsf rw,nodev,relatime,iocharset=utf8,uid=982,gid=982 0 0
注:共有フォルダの所有者をランダムユーザーに変更することはできません