Как обновить AWS CLI до последней версии?


138

Недавно я заметил, что у меня установлена ​​старая версия интерфейса командной строки AWS, в которой отсутствуют некоторые необходимые мне функции:

$aws --version
aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-85-generic

Как я могу обновиться до последней версии CLI AWS (1.10.24)?

Редактировать:

При выполнении следующей команды не удается обновить интерфейс командной строки AWS:

$ pip install --upgrade awscli
Requirement already up-to-date: awscli in /usr/local/lib/python2.7/dist-packages
Cleaning up...

Проверка версии:

$ aws --version
aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-85-generic

1
У меня была такая же ситуация, и она была вызвана установкой aws cli через apt-get install awscli. Решением было сначала удалить его ( apt-get remove awscli) и следовать pip installответам ниже.
Даррен Рейд

Я сделал (apt-get remove awscli), но после следующих команд (pip install ...) я не могу найти исполняемый файл awscli. Вывод (pip install ...) говорит об успешной установке.
НКЙ

Если я не использую опцию «--user» в установке pip, тогда я могу найти исполняемый файл awscli в / usr / local / bin (я нахожусь на Debian Jessie). Но с параметром --user exec недоступен в ~ / .local или в любой из папок установочного пакета python (dist-package или site-package).
НКЙ

Ответы:


109

От http://docs.aws.amazon.com/cli/latest/userguide/install.html#install-with-pip

Чтобы обновить существующую установку CLI AWS, используйте параметр --upgrade:

pip install --upgrade awscli

Я получаю следующее сообщение: Requirement already up-to-date: awscli in /usr/local/lib/python2.7/dist-packages. Хотя, когда я бегу aws --version, я получаю aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-85-generic.
Borealis

23
Попробуйте установить pip3 --upgrade awscli
RaviTezu

12
Запуск sudo pip3 install --upgrade awscliи перезагрузка сделали свое дело. Спасибо за помощь.
Бореалис

19
После установки aws cli требуется перезагрузка.
JoeTidee

3
Я не могу поверить , что это перезагрузка требуется , но в данном случае это было быстрее перезагрузить виртуальную машину , чем найти альтернативу [что «перезагрузка вуду» для окон].
toddkaufmann

49

В Linux и MacOS X вот три команды, которые соответствуют каждому шагу:

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
$ unzip awscli-bundle.zip
$ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

3
обновление через pipменя не сработало - удаление awsи переустановка таким образом сработало.
BM

1
Ты спас мой день. AWS плохо работает с документацией.
Каннаян

этот вариант работал для меня , как мне нужно обновить /usr/local/aws(не /home/ubuntu/.local/bin/aws) , которые будут использоваться Дженкинс пользователя
hit3k

Документация AWS действительно быстро ухудшается. Это правильный ответ, я не могу понять, почему спрашивающий принял ответ, который он четко указал в своем редактировании, не работал - пакеты пипов часто отстают от текущей последней, что является проблемой при использовании новых вещей, таких как EKS , Примечание: мне пришлось выйти из оболочки и снова войти в систему, чтобы команда aws подобрала новую версию. Понятия не имею почему.
Дик Честервуд

24

Это не работает:

pip install --upgrade awscli

На Ubuntu 14.04 это работало нормально (перезагрузка тоже не нужна. Сначала нужно установить pip3):

pip3 установить --upgrade awscli


4
Это может потребовать: apt-get install python3-pip Любая команда работает одинаково хорошо для меня на Ubuntu 14.04.
Денниман

13

Для Ubuntu 16.04 я использовал части других ответов и комментариев и просто перезагрузил bash вместо перезагрузки.

Я установил aws-cli с помощью apt, поэтому сначала удалил:

sudo apt-get remove awscli

Затем я мог установить pip (я решил использовать sudo для глобальной установки с pip2):

sudo pip install -U awscli

Так как я делал это на сервере, я не хотел его перезагружать, но перезагрузка bash сделала свое дело:

source ~/.bashrc

На данный момент я могу использовать новую версию AWS Cli

aws --version

1
Спасибо за source ~/.bashrcшаг. :)
Пратик Патель

8

Попробуйте sudo pip install --upgrade awscliи откройте новую оболочку. Это работало хорошо для меня (не нужно перезагружаться).


В Mac OS мне пришлось запустить sudo pip install --upgrade awscliкомпьютер, чтобы иметь возможность удалить предыдущую версию awscli (после успешного первоначального обновления)
Линн

4

Простое использование sudo pip install awscli --force-reinstall --upgrade

Это обновит все необходимые модули.


на моей машине jenkins я не хотел явно удалять cli, поэтому я использовал этот метод и работал как шарм!
URB

4

Если у вас возникли проблемы с установкой интерфейса командной строки AWS с pipпомощью программы «Bundled Installer», как описано здесь .

Обсуждаются следующие шаги:

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
$ unzip awscli-bundle.zip
$ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

Затем проверьте свою версию CLI AWS как проверку работоспособности:

$ aws --version

Если интерфейс командной строки AWS не обновился до последней версии, как ожидалось, возможно, двоичные файлы интерфейса командной строки AWS находятся где-то еще, как предполагают ранее заданные команды.

Определите, откуда выполняется CLI AWS:

$ which aws

В моем случае AWS CLI выполнялся из /bin/aws, поэтому мне пришлось установить «Bundled Installer», используя это расположение следующим образом:

$ sudo ./awscli-bundle/install -i /user/local/aws -b /bin/aws

использование встроенного установщика каким-то образом делает полученный образ докера БОЛЬШЕ, чем использование pip ... сногсшибательно
Чад Грант

После установки может потребоваться открыть новую оболочку - по какой-то причине «aws» не указывает на новую установку до выхода и перезапуска.
Дик Честервуд

4

На Mac вы можете использовать homebrew:

установить: brew install awscli

усовершенствовать: brew upgrade awscli

Убедитесь, что у вас нет нескольких установок: where aws


2
pip install awscli --upgrade --user

--upgradeОпция указывает пип обновить какие - либо требования, которые уже установлены. --userОпция говорит пип , чтобы установить программу в подкаталог каталога пользователя , чтобы избежать изменения библиотек , используемых в операционной системе.


0

Мы можем следовать приведенным ниже командам для установки AWS CLI на UBUNTU:

sudo apt установить curl

curl « https://s3.amazonaws.com/aws-cli/awscli-bundle.zip » -o «awscli-bundle.zip»

распаковать awscli-bundle.zip

sudo ./awscli-bundle/install -i / usr / local / aws -b / usr / local / bin / aws

rm -rf awscli-bundle.zip awscli-bundle

Для тестирования: aws - версия

Для получения дополнительной информации :

https://gurudathbn.wordpress.com/2018/03/31/installing-aws-cli-on-ubuntu/


0

При использовании sudo pip install --upgrade awscliя получил следующую ошибку:

ERROR: Could not install packages due to an EnvironmentError: [Errno 30] Read-only file system: '/lib'

Используя sudo с опцией -H, я мог решить проблему.

sudo -H pip install --upgrade awscli

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.