Comment mettre à niveau l'AWS CLI vers la dernière version?


138

J'ai récemment remarqué que j'exécutais une ancienne version de l'AWS CLI qui ne dispose pas de certaines fonctionnalités dont j'ai besoin:

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

Comment puis-je mettre à niveau vers la dernière version de l'AWS CLI (1.10.24)?

Éditer:

L'exécution de la commande suivante ne parvient pas à mettre à jour l'AWS CLI:

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

Vérification de la version:

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

1
J'ai eu cette même situation et a été causée par le cli aws installé à l'origine via apt-get install awscli. La solution était de le supprimer d'abord ( apt-get remove awscli) et de suivre les pip installréponses ci-dessous.
— Darren Reid

Je l'ai fait (apt-get remove awscli) mais après avoir suivi les commandes (pip install ...), je ne trouve pas l'exécutable awscli. La sortie de (pip install ...) indique que l'installation a réussi.
— NKM

Si je n'utilise pas l'option "--user" dans l'installation de pip, je pourrais trouver l'exécutable awscli sous / usr / local / bin (je suis sur Debian Jessie). Mais avec l'option --user, exec n'est pas disponible dans ~ / .local ou dans aucun des dossiers du package d'installation de python (dist-package ou site-package).
— NKM

Réponses:


109

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

Pour mettre à niveau une installation AWS CLI existante, utilisez l'option --upgrade:

pip install --upgrade awscli

Je reçois le message suivant: Requirement already up-to-date: awscli in /usr/local/lib/python2.7/dist-packages. Bien que quand je cours aws --version, je reçois aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-85-generic.
— Borealis

23
Essayez pip3 install --upgrade awscli
— RaviTezu

12
L'exécution sudo pip3 install --upgrade awscliet un redémarrage ont fait l'affaire. Merci pour l'aide.
— Borealis

19
Un simple redémarrage est nécessaire après l'installation de aws cli.
— JoeTidee

3
Je ne peux pas croire qu'un redémarrage soit nécessaire , mais dans ce cas, il était plus rapide de redémarrer ma vm que de trouver une alternative [que «reboot voodoo» est pour Windows].
— toddkaufmann

49

Sous Linux et MacOS X, voici les trois commandes qui correspondent à chaque étape:

$ 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
la mise à jour via pipn'a pas fonctionné pour moi - la suppression awset la réinstallation de cette façon ont fonctionné.
— BM

1
Tu as sauvé ma journée. AWS perd sa documentation.
— Kannaiyan

cette option a fonctionné pour moi que je avais besoin de mettre à niveau /usr/local/aws(non /home/ubuntu/.local/bin/aws) à utiliser par jenkins utilisateur
— hit3k

La documentation d'AWS se détériore en effet rapidement. C'est la bonne réponse, je ne peux pas comprendre pourquoi le questionneur a accepté une réponse qu'il avait clairement indiquée dans sa modification n'a pas fonctionné - les packages pip sont souvent derrière la dernière version actuelle, ce qui est un problème lors de l'utilisation de nouveaux éléments comme EKS . Remarque: j'ai dû quitter le shell et me reconnecter pour que la commande aws récupère la nouvelle version. Je ne sais pas pourquoi.
— Dick Chesterwood le

24

Cela ne fonctionne pas:

pip install --upgrade awscli

Cela a bien fonctionné sur Ubuntu 14.04 (pas besoin de redémarrer également. Vous devrez d'abord installer pip3):

pip3 install --upgrade awscli


4
Cela peut nécessiter: l'une apt-get install python3-pip ou l'autre des commandes fonctionne également bien pour moi sur Ubuntu 14.04.
— dannyman

13

Pour Ubuntu 16.04, j'ai utilisé des parties des autres réponses et commentaires et j'ai simplement rechargé bash au lieu de redémarrer.

J'ai installé aws-cli en utilisant apt, donc j'ai d'abord supprimé:

sudo apt-get remove awscli

Ensuite, je pourrais pip installer (j'ai choisi d'utiliser sudo pour installer globalement avec pip2):

sudo pip install -U awscli

Puisque je faisais cela sur un serveur, je ne voulais pas le redémarrer, mais le rechargement de bash a fait l'affaire:

source ~/.bashrc

À ce stade, je pourrais utiliser la nouvelle version de aws cli

aws --version

1
Merci pour l' source ~/.bashrcétape. :)
— Pratik Patel

8

Essayez sudo pip install --upgrade awscliet ouvrez un nouveau shell. Cela a bien fonctionné pour moi (pas besoin de redémarrer).


Sous Mac OS, je devais exécuter sudo pip install --upgrade awsclipour que ma machine puisse désinstaller la version précédente de awscli (après la mise à niveau initiale réussie)
— Lynn Langit

4

Utilisation simple sudo pip install awscli --force-reinstall --upgrade

Cela mettra à niveau tous les modules requis.


sur ma machine jenkins, je ne voulais pas désinstaller explicitement le cli, alors j'ai utilisé cette méthode et j'ai travaillé comme un charme!
— URB

4

Si vous rencontrez des difficultés pour installer l'AWS CLI à l'aide de, pipvous pouvez utiliser le «programme d'installation fourni» comme indiqué ici .

Les étapes décrites ici sont les suivantes:

$ 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

Vérifiez ensuite la version de votre AWS CLI pour vérifier que tout s'est exécuté correctement:

$ aws --version

Si l'AWS CLI n'a pas mis à jour vers la dernière version comme prévu, peut-être que les binaires AWS CLI sont situés ailleurs, comme le supposent les commandes précédemment données.

Déterminez d'où l'AWS CLI est exécutée à partir de:

$ which aws

Dans mon cas, AWS CLI était en cours d'exécution à partir de /bin/aws, j'ai donc dû installer le «programme d'installation fourni» en utilisant cet emplacement comme suit:

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

l'utilisation du programme d'installation fourni rend l'image de docker résultante PLUS GRANDE que l'utilisation de pip ... hallucinant
— Chad Grant

Il peut être nécessaire d'ouvrir un nouveau shell après l'installation - pour une raison quelconque, "aws" ne pointe pas vers la nouvelle installation avant de quitter et de redémarrer.
— Dick Chesterwood le

4

Sur Mac, vous pouvez utiliser homebrew:

à installer: brew install awscli

mettre à niveau: brew upgrade awscli

Assurez-vous de ne pas avoir plusieurs installations: where aws


2
pip install awscli --upgrade --user

L' --upgradeoption indique à pip de mettre à niveau toutes les exigences déjà installées. L' --useroption indique à pip d'installer le programme dans un sous-répertoire de votre répertoire utilisateur pour éviter de modifier les bibliothèques utilisées par votre système d'exploitation.



0

Lors de l'utilisation, sudo pip install --upgrade awsclij'ai l'erreur suivante:

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

En utilisant sudo avec l'option -H, je pourrais résoudre le problème.

sudo -H pip install --upgrade awscli

0

À l' heure actuelle, en utilisant pip vous obtiendrez la version ancienne de awscli, 1.18.103.

La dernière version d'aws-cli, 2.0.33est sur la v2 branche . Vous pouvez télécharger le programme d'installation pour Linux, Windows et macOS à partir d' ici .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.