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/groups
asの出力は次のようmyuser
になるmyuser disk
ため、グループメンバーシップがあります。オプションからに変更すると、group
ファイルシステムをマウントできます。user
myuser
私は何が間違っていましたか?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
機能します。myuser
umount /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
はないため失敗します。disk
mount
あなたのケースに戻って確認する必要があるグループの所有権は、または/blergh
必要です。正しいグループ所有権を設定すると、元のアイテムが機能し始めます。myuser
disk
/etc/fstab
# chgrp myuser /blergh
それでは、次のmount /media/blergh
ように実行してみてくださいmyuser
。
メモ:マウントポイント(ここ)/media/blergh
の所有権は影響を受けませんmount
。
答え2
私のオプションと同様の問題がありますuser
。まだ解決されていません。私の解決策は、さまざまな状況を作成してそれが機能していることを確認し、何かを表面化することです。
問題はそのファイルにのみ関連していますか/blergh
?別のファイルに再現できますか?または、ファイルが別の場所にある、権限が異なる、または所有権が異なります。 (もちろん、テストはシステムをどのように制御できるかによって異なります。)
そのオプションを使用して問題をテストしてowner
動作するかどうかを確認できます...他のファイルで再現できると仮定したり、一時所有権を変更したりできますか?オプションはどうですかuser
?
インストールとアンインストールの両方に問題がありますか、それともどちらかが問題ですか?インストールがうまくいかない場合は、インストールしてからroot
削除してみてくださいmyuser
。 (私の問題に関する限り、マウントは機能しますが、マウント解除は機能しません)
注:Linuxの世界では、このマウントを「ループ」といい、「ループバック」はネットワークデバイスに関連していると思います。(引用する。http://en.wikipedia.org/wiki/Loop_device)
最初のコメントと質問の編集後に追加されました
それでも動作しない場合。より確認しやすいowner
ので、すべての所有権メカニズムが影響を受けるという意味です。この状況は実際のブロックデバイスに適用されますか?owner
group
owner
group
ループオプションでループデバイスを明示的に指定し、未使用のデバイスを選択してみましたか...,loop=/dev/loop7,...
?ループデバイスの所有権やグループを変更してみることもできます(たとえそれがどれほど合理的であるか、または役に立つかはわかりません)。ls /dev/loop*
利用可能なリサイクル機器を一覧表示します。
もう1つの可能性は、loop
アイテムからオプションを完全に削除することです/etc/fstab
。多くのシステムでは不要になり、マウントを介して暗黙的に実行されます。ところで、どのシステムを使用していますか?