Установка AWS CLI v1 на Ubuntu

Что такое AWS CLI
AWS CLI — это инструмент командной строки для управления сервисами Amazon Web Services. Он позволяет запускать команды для работы с EC2, S3, IAM и другими серверами AWS прямо из терминала. Коротко: CLI упрощает автоматизацию и интеграцию в скрипты и CI/CD.
Ключевые требования
- Python версии 3.6 или выше установлен на машине.
- Права для установки пакетов (sudo) — не обязательны, если вы используете локальную установку через –user, но требуются при установке в системные директории.
- Утилиты unzip, curl/wget и базовые dev-пакеты для сборки Python при установке из исходников.
Необходимые пакеты (Ubuntu/Debian)
Выполните эти команды, чтобы установить зависимости перед сборкой Python:
sudo apt update
sudo apt install build-essential checkinstall
sudo apt install libreadline-gplv2-dev libncursesw5-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev unzip curl wgetУстановка Python на Ubuntu (если нужно)
Если на системе нет подходящей версии Python, можно собрать её из исходников.
- Скачайте архив Python (пример для 3.6.0):
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz- Распакуйте архив и перейдите в папку:
tar xvf Python-3.6.0.tar.xz
cd Python-3.6.0/- Подготовьте конфигурацию и соберите интерпретатор. Если обычная конфигурация выдаёт ошибки, используйте оптимизации:
./configure
# если ошибка:
./configure --enable-optimizations
sudo make altinstallПримечание: make altinstall создаёт исполняемый файл без перезаписи системного python, например python3.6, и безопаснее при наличии системных зависимостей.
Установка AWS CLI через bundled installer (оффлайн‑дружественный способ)
Bundled installer содержит всё необходимое внутри архива, поэтому подходит для машин без постоянного доступа в интернет.
- Скачайте bundle (через curl):
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"(Альтернатива: загрузить архив вручную с официального сайта AWS.)
- Распакуйте архив:
unzip awscli-bundle.zip- Запустите установку, указав путь установки и путь для symlink:
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws- -i /usr/local/aws — директория установки
- -b /usr/local/bin/aws — путь для исполняемого файла (symlink)
- Проверьте установку:
aws --versionПри успешной установке вы увидите строку вида:
aws-cli/1.15.58 Python/3.5.2 Linux/5.11.0-25-generic botocore/1.10.57(Версии будут отличаться в зависимости от сборки и Python.)
Как удалить AWS CLI v1
Чтобы полностью удалить AWS CLI, удалите директорию установки и созданный symlink:
sudo rm -rf /usr/local/aws
sudo rm /usr/local/bin/awsПосле удаления убедитесь, что команда aws больше не доступна:
which aws || echo "aws не найден"Критерии приёмки
- Команда aws –version возвращает строку с версией aws-cli.
- aws help открывает справочную информацию.
- aws configure успешно сохраняет профиль в ~/.aws/credentials (проверьте права 600).
Альтернативные подходы к установке
- Установка через pip (быстро, удобно для локального пользователя):
pip3 install --upgrade --user awscliДобавьте ~/.local/bin в PATH, если pip установил исполняемый файл туда.
- Установка через менеджеры пакетов (apt/snap):
- apt install awscli — может устанавливать устаревшую версию пакета в дистрибутивах.
- snap install aws-cli –classic — вариант с контейнированной установкой.
- Установка AWS CLI v2 — рекомендуется, если вам нужны новые функции и поддержка: у AWS CLI v2 иной пакет и установщик; у него есть отдельная документация.
Когда использовать каждый метод:
- Bundled installer — оффлайн и изолированная инсталляция.
- pip — быстрый пользовательский вариант.
- v2 — если нужны новые возможности и официальная поддержка.
Примеры команд и быстрый чек‑лист
- Проверка версии:
aws --version- Настройка профиля (ключи временного/непостоянного доступа используйте осторожно):
aws configure- Просмотр бакетов S3:
aws s3 ls- Удаление (повтор):
sudo rm -rf /usr/local/aws
sudo rm /usr/local/bin/awsУстранение распространённых проблем
- “command not found” после установки
- Проверьте, что /usr/local/bin в PATH: echo $PATH
- Убедитесь в отсутствии конфликтующих версий: which -a aws
- Ошибки прав доступа при установке
- Запустите инсталлятор с sudo, если прописана системная директория.
- unzip/curl отсутствуют
- Установите: sudo apt install unzip curl
- Несовместимость Python
- Используйте make altinstall при сборке Python, избегайте перезаписи системного python.
Рекомендации по безопасности
- Никогда не храните AWS credentials в публичных репозиториях.
- Предпочитайте IAM‑роли и временные токены при работе на EC2/контейнерах.
- Поставьте права 600 на ~/.aws/credentials:
chmod 600 ~/.aws/credentials- Используйте MFA и периодическую ротацию ключей.
Сравнение методов (кратко)
- Bundled installer: оффлайн, самодостаточный, больше шагов.
- Pip: просто и быстро, легко обновлять, требует сетевого доступа.
- Package manager: удобно централизованно, но может быть устаревшим.
Ролевые чек‑листы
Администратор:
- Установить зависимости и Python (если нужно).
- Выполнить системную установку bundled‑installer или pip в /usr/local.
- Проверить доступ пользователей и права на файлы.
Разработчик:
- Установить awscli через pip –user.
- Добавить ~/.local/bin в PATH.
- Настроить профиль aws configure.
CI/CD инженер:
- Упаковать aws-cli в образ контейнера или использовать официальный образ с AWS CLI v2.
- Поставить IAM роль для выполнения задач вместо статичных ключей.
Мини‑методология установки (шаги)
- Оцените требования (offline/online; системная/пользовательская установка).
- Установите зависимости.
- Выберите метод (bundled/pip/v2).
- Установите и проверьте aws –version.
- Настройте доступы и проверьте права файлов.
- Документируйте процесс в репозитории конфигураций.
Частые вопросы
- Можно ли обновить awscli, установленный через bundled installer? Да — скачайте свежий архив и повторите установку или используйте pip для управления версиями.
- Почему рекомендован AWS CLI v2? Она содержит новые команды, улучшенную аутентификацию и официальный инсталлятор.
Вывод
Bundled installer AWS CLI v1 остаётся рабочим решением для оффлайн и контролируемых установок, но для большинства пользователей удобнее и безопаснее использовать pip (локально) или переходить на AWS CLI v2. Всегда проверяйте права доступа к файлам с ключами и отдавайте предпочтение IAM‑ролям.
Важно: перед массовой установкой на продакшн‑серверы протестируйте выбранный метод в изолированной среде.
Похожие материалы
Как включить TPM 2.0 в BIOS — ASUS, Dell, HP, Lenovo
Папка профиля Firefox: где найти и как восстановить
Исправить: USB-устройство не распознано — контроллер Xbox One
Сборка Ender 3 V2 — пошаговая инструкция
Добавить Google Alerts в RSS-ленту