fstabのグループオプションが機能しない

fstabのグループオプションが機能しない

fstabエントリの「グループ」オプションを利用しようとしましたが、成功しませんでした。mountマニュアルページから:

通常、スーパーユーザーだけがファイルシステムをマウントできます。ただし、fstab行にユーザーオプションが含まれている場合は、誰でもそのシステムをマウントできます。 ...どのユーザーでもアンマウントできる必要がある場合は、fstab行でuserの代わりにusersを使用してください。所有者オプションは、ユーザーが特定のファイルの所有者でなければならないという制限があるユーザーオプションと似ています。たとえば、ログインスクリプトがコンソールユーザーをデバイスの所有者にする場合は、/ dev / fdに役立ちます。グループオプションは似ていますが、ユーザーが特別なファイルグループのメンバーになることを制限します。

私は1GBファイル/ blerghとext4ファイルシステムを使ってループバックインストールをテストしています。このファイルはroot:diskの所有であり、664権限を持っています。権限 775 の root:disk が所有する /media/blergh マウント・ポイントがあります。次のfstabエントリがあります。

/blergh /media/blergh ext4 loop,rw,noauto,group 0 2

mount /media/blergh正常に動作していますroot。実行するとmyuserエラーが発生しますmount: only root can mount /blergh on /media/blergh/usr/bin/groupsasの出力は次のようmyuserになるmyuser diskため、グループメンバーシップがあります。オプションからに変更すると、groupファイルシステムをマウントできます。usermyuser

私は何が間違っていましたか?groupこのオプションが機能しないのはなぜですか?

myuser(注:ここではこれについて扱いたくないのでsudo


2013年5月20日に修正:

実際のブロックデバイスを使用した追加テストでは問題がloopないことがわかりましたgroup。権限 664 を使用して root:disk が所有し、/dev/sdg でリンクされた新しい 1 GB EBS ボリュームを作成しました。これに対して、次のfstabエントリを作成しました。

/dev/sdg /media/sdg ext4 rw,noauto,group 0 0

loop以前と同じですが、ここには適用されません。私は権限775を持つroot:diskが所有する/media/blergにこのファイルシステムのマウントポイントを作成しました。以前と同様に、myuserグループのメンバーですdisk。このテスト設定でも同様にうまくmount /media/sdg機能します。myuserumount /media/sdg

ベストアンサー1

私はあなたがここで非常に重要な詳細を見逃していると思います。参照されたマニュアルページから(そして強調する)あなたに走りました:

グループオプションは似ていますが、ユーザーがグループのメンバーになることを制限します。特殊ファイルグループ

私の言葉に注目してください。強調する「特殊ファイル」について。次の説明を参照してください。グループオプション:

グループ 一般(つまり、ルートではない)ユーザーグループの1つが次の場合デバイスグループ。このオプションは、nosuidおよびnodevオプションを意味します(オプションの行グループ、dev、suidなどの後続のオプションでオーバーライドされない限り)。

これは意味するデバイスまたは特殊ファイルインストールする製品もmyuser同じでなければなりません。グループ所有権はユーザーのものですmyuser

例は次のとおりです。

システムにディレクトリ/dev/sda5にマウントされたデバイスがあるとします。/builds

# ls -l /dev/sda5
brw-rw---- 1 root disk 8, 5 Jun 15 21:20 /dev/sda5
# grep sda5 /etc/fstab
/dev/sda5       /builds reiserfs        group,defaults 1 2

fooまた、同じシステムに2人のユーザーがいます。srinidhi

# id foo
uid=1005(foo) gid=100(users) groups=100(users),33(video)
# id srinidhi
uid=1000(srinidhi) gid=100(users) groups=100(users),16(dialout),6(disk),10(wheel)

ユーザーsrinidhi(グループの一部disk)がマウントを試みます/builds

srinidhi@linux:~> mount /builds/
srinidhi@linux:~> echo $?
0

fooそれでは、マウントしようとしたときに何が起こるのかを見てみましょう/builds

srinidhi@linux:~> su - foo
foo@linux:~> mount /builds/
mount: only root can mount /dev/sda5 on /builds
foo@linux:~>

グループの一部でfooはないため失敗します。diskmount

あなたのケースに戻って確認する必要があるグループの所有権は、または/blergh必要です。正しいグループ所有権を設定すると、元のアイテムが機能し始めます。myuserdisk/etc/fstab

# chgrp myuser /blergh

それでは、次のmount /media/blerghように実行してみてくださいmyuser

メモ:マウントポイント(ここ)/media/blerghの所有権は影響を受けませんmount

おすすめ記事