sudo なしで vbox 共有フォルダをマウントできません:「不明なマウント オプション `user'」

sudo なしで vbox 共有フォルダをマウントできません:「不明なマウント オプション `user'」

どのユーザーでもマウント可能な 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通常のユーザーとして動作するはずです。

関連情報