どのユーザーでもマウント可能な VirtualBox 共有フォルダーを設定しようとしているので、次の行を入力します/etc/fstab
:
# mint shared folder
mint /media/sf_mint vboxsf defaults,user,uid=1000,gid=999 0 0
ただし、次のエラー メッセージが表示されます:
juanlu@minted ~ $ mount mint
Only root can mount shared folders from the host.
juanlu@minted ~ $ sudo !!
sudo mount mint
unknown mount option `user'
valid options:
rw mount read write (default)
ro mount read only
uid =<arg> default file owner user id
gid =<arg> default file owner group id
ttl =<arg> time to live for dentry
iocharset =<arg> i/o charset (default utf8)
convertcp =<arg> convert share name from given charset to utf8
dmode =<arg> mode of all directories
fmode =<arg> mode of all regular files
umask =<arg> umask of directories and regular files
dmask =<arg> umask of directories
fmask =<arg> umask of regular files
オプションを削除するとuser
、使用を強制されますsudo
が、少なくともマウント ポイントの所有者は適切に割り当てられます。ここで何が間違っているのでしょうか?
これは重複する可能性があることに注意してくださいユーザーとしてVBox共有フォルダをマウントするしかし、実際に機能するはずのオプションを試してみました。
答え1
としてVirtualBoxユーザーサポートフォーラムで親切に回答、vbox共有フォルダは実際にはデバイス(もしそうなら、彼らは の下にあるでしょう/dev/
)そしてしたがって、「ユーザー」オプションその他該当しないしたがって、管理者以外のユーザーが共有フォルダーを手動でマウントできるようにすることはできません。
ただし、vboxsfを自動的にマウントし、マウントオプションをカスタマイズすることも可能です/etc/rc.local
。これは自動マウントに似ていますが、フォルダに適切なマスクと権限を設定できます。ここで説明されているようにただし、このページは不完全なこれは、mount
利用可能なオプションの一覧を記載するマニュアル ページを指していますが、実際のところ、上記のように、一部のオプションは適用されません。
答え2
これはプログラムファイルのバグのようですマウント.vboxsf.cは、Linux 用の VirtualBox Guest Additions の一部であり、何も間違ったことをしていないと思います。
ルート アカウントで実行されているかどうかのチェックは、プログラムの開始時に main() ですぐに行われ、パラメータが処理される前、つまりパラメータがuser
検出または処理される前に行われます。
チェックは、プロセス (またはそのフォーク) の有効なユーザー ID が指定されたユーザー アカウントに変更された後、ずっと後に実行される必要がありました。
このバグをVirtualBox開発者に知らせてください。
適切なフォーラムは次のようです。Linux ホスト上の VirtualBox(ログインが必要です)。
答え3
一般ユーザーがファイルシステムをマウントできるようにするために、必ずしもuser
オプションは必要ありません。/etc/fstab
sudo
もう 1 つのオプションは、実行ユーザーのパスワードを要求するかどうかにかかわらず、このアクションを許可するように構成することです。
からman sudoers
:
認証とログ
sudoers セキュリティ ポリシーでは、ほとんどのユーザーが sudo を使用する前に認証を受ける必要があります。呼び出し元のユーザーが root の場合、ターゲット ユーザーが呼び出し元のユーザーと同じ場合、またはポリシーによってユーザーまたはコマンドの認証が無効になっている場合は、パスワードは必要ありません。
タグ仕様
[...]
NOPASSWD と PASSWD
デフォルトでは、sudo はコマンドを実行する前にユーザーが自分自身を認証することを要求します。この動作は NOPASSWD タグで変更できます。Runas_Spec と同様に、NOPASSWD タグは Cmnd_Spec_List でそれに続くコマンドのデフォルトを設定します。逆に、PASSWD タグは設定を逆にするために使用できます。例:
レイ・ラッシュモア = NOPASSWD: /bin/kill、/bin/ls、/usr/bin/lprm
こうすると、ユーザー ray は認証なしでマシンrushmore上でrootとして/bin/kill、/bin/ls、および/usr/bin/lprmを実行できるようになります。
したがって、次のような行により、/etc/sudoers
すべてのユーザーがパスワードを入力せずに指定されたファイルシステムをマウントできるようになります。
ALL ALL = NOPASSWD: /bin/mount mint
その後、sudo mount mint
通常のユーザーとして動作するはずです。