Come aggiornare AWS CLI all'ultima versione?


138

Di recente ho notato che sto eseguendo una vecchia versione della CLI AWS che manca di alcune funzionalità di cui ho bisogno:

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

Come posso eseguire l'aggiornamento all'ultima versione della CLI AWS (1.10.24)?

Modificare:

L'esecuzione del comando seguente non riesce ad aggiornare l'interfaccia della riga di comando di AWS:

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

Verifica della versione:

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

1
Ho avuto la stessa situazione ed è stato causato dall'installazione di aws cli tramite apt-get install awscli. La soluzione era rimuoverlo prima ( apt-get remove awscli) e seguire le pip installrisposte di seguito.
Darren Reid,

L'ho fatto (apt-get remove awscli) ma dopo aver seguito i comandi (pip install ...) non riesco a trovare l'eseguibile di awscli. L'output di (pip install ...) dice che è stato installato con successo.
NKM,

Se non uso l'opzione "--user" nell'installazione pip allora potrei trovare il file eseguibile awscli in / usr / local / bin (sono su Debian Jessie). Ma con l'opzione --user exec non è disponibile in ~ / .local o in nessuna delle cartelle del pacchetto di installazione di python (dist-package o site-package).
NKM,

Risposte:


109

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

Per aggiornare un'installazione della CLI AWS esistente, utilizza l'opzione --upgrade:

pip install --upgrade awscli

Ottengo il seguente messaggio: Requirement already up-to-date: awscli in /usr/local/lib/python2.7/dist-packages. Anche se quando corro aws --version, ottengo aws-cli/1.2.9 Python/3.4.3 Linux/3.13.0-85-generic.
Borealis

23
Prova pip3 install --upgrade awscli
RaviTezu

12
In esecuzione sudo pip3 install --upgrade awsclie un riavvio ha fatto il trucco. Grazie per l'aiuto.
Borealis,

19
È richiesto solo un riavvio dopo l'installazione di aws cli.
Joe Tidee,

3
Non riesco a credere che sia necessario un riavvio , ma in questo caso è stato più rapido riavviare la mia VM piuttosto che trovare un'alternativa [che 'riavvia voodoo' è per Windows].
toddkaufmann,

49

Su Linux e MacOS X, ecco i tre comandi che corrispondono a ciascun passaggio:

$ 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
l'aggiornamento tramite pipnon ha funzionato per me - eliminarlo awse reinstallarlo in questo modo ha funzionato.
BM

1
Mi hai salvato la giornata. AWS sta diventando scadente nella sua documentazione.
Kannaiyan,

questa opzione ha funzionato per me in quanto avevo bisogno di aggiornare /usr/local/aws(non /home/ubuntu/.local/bin/aws) per essere utilizzata dall'utente jenkins
hit3k

La documentazione di AWS si sta effettivamente deteriorando rapidamente. Questa è la risposta corretta, non riesco a capire perché l'interrogante abbia accettato una risposta che avevano chiaramente affermato nella loro modifica non funzionava: i pacchetti di pip sono spesso dietro l'ultimo recente, il che è un problema quando si usano nuove cose come EKS . Nota: ho dovuto uscire dalla shell e accedere nuovamente per il comando aws per prelevare la nuova versione. Non ho idea del perché.
Dick Chesterwood,

24

Questo non funziona:

pip install - aggiorna awscli

Questo ha funzionato bene su Ubuntu 14.04 (non è necessario riavviare anche .. Dovresti prima installare pip3):

pip3 install - aggiorna awscli


4
Ciò potrebbe richiedere: apt-get install python3-pip entrambi i comandi funzionano ugualmente bene su Ubuntu 14.04.
dannyman,

13

Per Ubuntu 16.04 ho usato parti delle altre risposte e commenti e ho appena ricaricato bash invece di riavviare.

Ho installato aws-cli usando apt, quindi ho rimosso prima quello:

sudo apt-get remove awscli

Quindi ho potuto installare pip (ho scelto di usare sudo per installare globalmente con pip2):

sudo pip install -U awscli

Dato che lo stavo facendo su un server non volevo riavviarlo, ma ricaricare bash ha funzionato:

source ~/.bashrc

A questo punto potrei usare la nuova versione di aws cli

aws --version

1
Grazie per il source ~/.bashrcpassaggio :):
Pratik Patel,

8

Prova sudo pip install --upgrade awsclie apri una nuova shell. Questo ha funzionato bene per me (non è necessario riavviare).


Su Mac OS, ho dovuto correre sudo pip install --upgrade awscliper il mio computer per poter disinstallare la versione precedente di awscli (dopo che l'aggiornamento iniziale è stato eseguito correttamente)
Lynn Langit,

4

Uso semplice sudo pip install awscli --force-reinstall --upgrade

Ciò aggiornerà tutti i moduli richiesti.


sulla mia macchina jenkins non volevo disinstallare esplicitamente il cli, quindi ho usato questo metodo e ho lavorato come un incantesimo!
URB,

4

In caso di problemi con l'installazione dell'interfaccia della riga di comando di AWS, pipè possibile utilizzare il "programma di installazione in bundle" come documentato qui .

I passaggi discussi sono i seguenti:

$ 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

Controlla successivamente la tua versione dell'interfaccia della riga di comando di AWS come controllo di integrità che tutto sia eseguito correttamente:

$ aws --version

Se l'interfaccia della riga di comando di AWS non si aggiorna all'ultima versione come previsto, forse i binari della CLI di AWS si trovano altrove, come ipotizzano i comandi precedentemente indicati.

Determinare da dove viene eseguita l'interfaccia della riga di comando di AWS da:

$ which aws

Nel mio caso, la CLI di AWS veniva eseguita da /bin/aws, quindi ho dovuto installare il "programma di installazione in bundle" usando quella posizione come segue:

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

l'uso dell'installer in bundle rende in qualche modo l'immagine della finestra mobile risultante PIÙ GRANDE rispetto all'utilizzo di pip ... strabiliante
Chad Grant il

Potrebbe essere necessario aprire una nuova shell dopo l'installazione - per qualche motivo "aws" non punta alla nuova installazione fino all'uscita e al riavvio.
Dick Chesterwood,

4

Su Mac puoi usare l'homebrew:

installare: brew install awscli

aggiornare: brew upgrade awscli

Assicurati di non avere più installazioni: where aws


2
pip install awscli --upgrade --user

L' --upgradeopzione indica a pip di aggiornare tutti i requisiti già installati. L' --useropzione dice a pip di installare il programma in una sottodirectory della directory dell'utente per evitare di modificare le librerie utilizzate dal sistema operativo.


0

Possiamo seguire i seguenti comandi per installare l'interfaccia della riga di comando di AWS su UBUNTU:

sudo apt install curl

arricciare " https://s3.amazonaws.com/aws-cli/awscli-bundle.zip " -o "awscli-bundle.zip"

decomprimere awscli-bundle.zip

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

rm -rf awscli-bundle.zip awscli-bundle

Per testare: aws - versione

Per maggiori informazioni :

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


0

Durante l'utilizzo sudo pip install --upgrade awscliho ricevuto il seguente errore:

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

Usando sudo con l'opzione -H, ho potuto risolvere il problema.

sudo -H pip install --upgrade awscli

0

Attualmente, utilizzando pip ti porterà la vecchia versione di awscli, 1.18.103.

L'ultima versione di aws-cli 2.0.33è sul v2 ramo . Puoi scaricare il programma di installazione per Linux, Windows e macOS da qui .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.