私はS3を1トン使用しています。クライアント間で40個以上のバケットが浮かんでいます。私はそれらを/ etc/fstabにリストでき、それらがちょうど機能するという事実が好きです。参照用のバケットの1つです。
coteyrnet/mnt/S3/coteyrnet Fuse.s3fs _netdev、use_cache =/tmp、use_rrs = 1、allow_other、noauto、users 0 0
うまくマウントされますが、アンマウントするのに一時間かかります。
最初の問題は:
umount: /mnt/S3/coteyrnet mount disagrees with the fstab
Mtabの関連部分は次のとおりです。
s3fs /mnt/S3/coteyrnet Fuse.s3fs rw,noexec,nosuid,nodev,allow_other,user=coteyr 0 0
引数なしでマウントを実行すると、次のようにマウントが報告されます。
s3fs on /mnt/S3/coteyrnet type Fuse.s3fs (rw,noexec,nosuid,nodev,allow_other,user=coteyr)
それに加えて、私がSudo umount /mnt/S3/coteyrnet
なら
umount: /mnt/S3/coteyrnet: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
lsof | grep coteyrnet
は、価値のあるものを何も返さず、フューザも返しません。
私の目標は、ユーザーのアンマウントを機能させることです。
Sudoを介してマウントできないことが解決されました。 「use_cache」設定を使用すると、ファイルは実際には開いていましたが、マウントポイントの下ではありませんでした。これはそのオプションの警告です。マウントポイントファイルは閉じていますが、ファイルはまだS3に転送されていません。 「しばらく」待ってから再試行すると、Sudoはアンマウントできます。
Dpbを使用した結果、問題はバグであり、知識や構成の不足ではないと判断しました(修正はできません)
Issue 309 がs3fsメンテナーに提出されました。
/ etc/fstabにはオプションuser
が必要だと思います。今、あなたはあなたが持っていると言った:
s3fs /mnt/S3/coteyrnet Fuse.s3fs rw,noexec,nosuid,nodev,allow_other,user=coteyr 0 0
user=coteyr
をuser
に変更してみてください。それは私のために働く。 =
でユーザーを指定しようとしたとき、本質的に無視されました。
例については、次の出力を参照してください。
dpb@helo:crash$ mount /mnt/foo
dpb@helo:crash$ umount /mnt/foo
dpb@helo:crash$ grep /mnt/foo /etc/fstab
/dev/vgdata/lvol0 /mnt/foo ext4 defaults,user 0 2
dpb@helo:crash$
これが失敗した場合、または別のアプローチが必要な場合。特定のマウントに対してパスワードなしでマウントおよびアンマウントを許可するSudoルールを設定できます。これはより安全なアプローチであると主張する人もいますが、私はセキュリティの第一人者ではありません。
Umountが非スーパーユーザーとして成功するように見えるため、mountコマンドで表示される内容と一致する必要があります。
この場合、fstabは次のように見える必要があります。
s3fs /mnt/S3/coteyrnet Fuse.s3fs <options> 0 0
ただし、一意のバケットを指定する方法がまだ必要だと思います。おそらく試してみてください:
s3fs#coteyrnet /mnt/S3/coteyrnet Fuse.s3fs <options> 0 0
それはマウントをだますのに十分かもしれません(私は以前いくつかの場所でそれを見てきました、そして今、私は理由を理解し始めています)