s3fs "не может определить, как установить учетные данные безопасности"
Я пытаюсь использовать s3fs для монтирования корзины S3 на стандартный AWS Amazon Linux AMI (со всеми установленными зависимостями). Однако при выполнении этого урока при запуске: s3fs mybucketname -o allow_other myfolder
или их варианты, я получаю ответ:
s3fs: не удалось определить, как установить учетные данные безопасности
Я пробовал:
- создание passwd-s3fs в папке etc, в формате: accessID:secretAccessKey
- создание.passwd-s3fs в домашней папке
- установка переменных среды AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY
- Насколько это возможно, необходимо открыть права доступа к passwd-s3fs (это стало более безопасным, поскольку этот вопрос)
- Предоставление пользователю IAM, связанному с этим ключом доступа, доступа администратора
- Успешное подключение через локального клиента с одинаковыми данными ключа доступа и секретного доступа
- Как правило, дважды проверять все на наличие опечаток и т. Д.
У меня такое чувство, что я делаю что-то глупое в AWS (я совершенно новичок в AWS), есть ли что-то конкретное, что мне нужно применить к разрешениям S3, политике и т. Д.? Это сводит меня с ума, помощь очень ценится!
3 ответа
Я нашел, что лучший способ решить эту проблему - использовать
-o iam_role
возможность передать имя роли экземпляра, плюс, если вы не находитесь в регионе us-east-1, вам также может потребоваться указать
url
и
endpoint
параметры.
Например
s3fs mybucketname -o allow_other myfolder -o iam_role=$iam_role_name -o endpoint=${aws_region} -o url=https://s3-${aws_region}
(Это команда, которую я использовал для подключения корзины S3 к экземпляру узла контейнера ECS, поэтому экземпляр EC2 развернут как часть кластера)
Возможно, эта тема старая, но я столкнулся с той же проблемой. Ответ Аслана и многих других страниц «правильный», но мне все равно не помог. Сначала я удалил, обновил и обновил, как предложил Аслан, но мне пришлось позаботиться о том, чтобы НЕ использовать какие-либо команды sudo. Я строго использовал:
nano ~/.passwd-s3fs
Как сказал Аслан, вошел только
AccesskeyID:SecretAccessKey
т.е.
kjewndkdui8374:emkwlmduiwj7/knsdknjnsjwkid
Затем
chmod 0400 ~/.passwd-s3fs
s3fs bucket-name target-name
Мне потребовалось около 2 часов, чтобы разобраться в этом....надеюсь, я смогу помочь кому-нибудь сократить это время.
Хотя этот вопрос старый, у меня тоже была проблема, поэтому я решил опубликовать решение, которое сработало для меня, если у другого человека возникнет та же проблема.
sudo apt purge s3fs -y
sudo apt update -y && sudo apt upgrade -y
sudo apt install s3fs -y
В домашнем каталоге текущего пользователя создайте txt-файл с именем.passwd-fs с учетными данными IAM как таковыми:
Ключ: тайна
т.е.
kjewndkjsn8387:emkwlmskld8/knsdknjnsjnsdk
# 1. use a text editor to add your key:secret & save the file
vim ~/.passwd-s3fs
# set permissions of .passwd-fs to 0400
sudo chmod 0400 ~/.passwd-s3fs
# mount drive s3fs bucket/path /local_path
# i.e
s3fs my_bucket:remote_path /mnt/lakes