RedhatとFuse 2.4.8
S3FSバージョン1.59
AWSオンライン管理コンソールから、S3バケットのファイルを参照できます。
/s3フォルダーにログイン(ssh)すると、アクセスできません。
コマンド: "/ usr/bin/s3fs -o allow_other bucket/s3"
戻り値:s3fs:MOUNTPOINTにアクセスできません/ s3:トランスポートエンドポイントが接続されていません
その理由は何でしょうか?どうすれば修正できますか?このフォルダをアンマウントしてから再度マウントする必要がありますか?
ありがとう!
さて、解決策は簡単でした。ディレクトリをアンマウントしてマウントすることです。エラー transport endpoint is not connected
は、s3フォルダーをアンマウントしてから再度マウントすることで解決しました。
アンマウントするコマンド
fusermount -u /s3
マウントするコマンド
/usr/bin/s3fs -o allow_other bucketname /s3
同期に3分かかります。
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
で確認
以前は古いセキュリティ資格情報を使用していました。セキュリティ資格情報(AccessId、AccessKey)の再生成により、問題が解決しました。
これは私にとってバケットのパーミッションの問題でした。 AWS UIで「全員」に「リスト」と「表示権限」を追加すると、バケットアクセスが許可されました。
全員にアクセスを許可したくない場合は、S3Fuseのバケットにアクセスできるユーザーに関連付けられているAWS認証情報を使用していることを確認してください
ディレクトリを自動的にマウントする/ 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
私はこの問題を抱えていましたが、バケットには小文字しか使用できないことがわかりました。 https://BUCKET1.s3.amazonaws.com または https://bucket1.s3.amazonaws.com を介して「BUCKET1」という名前のバケットにアクセスしようとすると、失敗しますが、バケットが「bucket1」と呼ばれる場合、 https://bucket1.s3.amazonaws.com は成功します。
したがって、s3fsコマンドラインの名前を小文字にするだけでは不十分です。また、バケットを小文字で作成する必要があります。