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.