web-dev-qa-db-ja.com

s3fsとFuseを使用したAmazon S3、トランスポートエンドポイントが接続されていません

RedhatとFuse 2.4.8
S3FSバージョン1.59

AWSオンライン管理コンソールから、S3バケットのファイルを参照できます。
/s3フォルダーにログイン(ssh)すると、アクセスできません。
コマンド: "/ usr/bin/s3fs -o allow_other bucket/s3"
戻り値:s3fs:MOUNTPOINTにアクセスできません/ s3:トランスポートエンドポイントが接続されていません

その理由は何でしょうか?どうすれば修正できますか?このフォルダをアンマウントしてから再度マウントする必要がありますか?

ありがとう!

20
ilansch

さて、解決策は簡単でした。ディレクトリをアンマウントしてマウントすることです。エラー transport endpoint is not connectedは、s3フォルダーをアンマウントしてから再度マウントすることで解決しました。

アンマウントするコマンド

fusermount -u /s3

マウントするコマンド

/usr/bin/s3fs -o allow_other bucketname /s3

同期に3分かかります。

37
ilansch

quick and dirtyFuseドライバを使用してs3にアクセスすることはお勧めしません。 S3は実際にはファイルシステムとして機能するようには設計されていません。 ニースの概要については、このSOFの回答をご覧ください

ファイルを保持しているという理由だけで、LinuxミラーWebサイトをマウントすることはおそらくないでしょう。これは同等です

プロセスにファイルをローカルfsに書き込み、s3バケットをcronやs3cmdなどのツールと同期させます

S3fsの使用を主張する場合..

Sudo echo "yourawskey:yourawssecret" > /etc/passwd-s3fs
Sudo chmod 640 /etc/passwd-s3fs

Sudo /usr/bin/s3fs yours3bucket /yourmountpoint -ouse_cache=/tmp

mountで確認

ソース: http://code.google.com/p/s3fs/wiki/FuseOverAmazon

8
Michel Feldheim

以前は古いセキュリティ資格情報を使用していました。セキュリティ資格情報(AccessId、AccessKey)の再生成により、問題が解決しました。

2
Vibhuti

これは私にとってバケットのパーミッションの問題でした。 AWS UIで「全員」に「リスト」と「表示権限」を追加すると、バケットアクセスが許可されました。

全員にアクセスを許可したくない場合は、S3Fuseのバケットにアクセスできるユーザーに関連付けられているAWS認証情報を使用していることを確認してください

1
storm_m2138

ディレクトリを自動的にマウントする/ etc/fstabで既に変更を行っている場合は、ディレクトリをアンマウントしてサーバーを再起動するだけです。

Sudo umount /dirをアンマウントするには

/ etc/fstabにこれらの行が存在するはずです。その後、再起動後に自動的にマウントされます

s3fs#bucketname /s3 Fuse allow_other,nonempty,use_cache=/tmp/cache,multireq_max=500,uid=505,gid=503 0 0
0
GNK

私はこの問題を抱えていましたが、バケットには小文字しか使用できないことがわかりました。 https://BUCKET1.s3.amazonaws.com または https://bucket1.s3.amazonaws.com を介して「BUCKET1」という名前のバケットにアクセスしようとすると、失敗しますが、バケットが「bucket1」と呼ばれる場合、 https://bucket1.s3.amazonaws.com は成功します。

したがって、s3fsコマンドラインの名前を小文字にするだけでは不十分です。また、バケットを小文字で作成する必要があります。

0
higuita