Paramètres AWS CLI $ PATH

111

Je suis le guide de configuration de l' AWS CLI . J'ai réussi à installer l'outil sur mon terminal Mac OS X avec la sortie suivante:

Running cmd: /usr/bin/python virtualenv.py --python /usr/bin/python /Users/fr/.local/lib/aws
Running cmd: /Users/fr/.local/lib/aws/bin/pip install --no-index --find-links file:///Users/fr/Downloads/awscli-bundle/packages awscli-1.5.3.tar.gz
You can now run: /Users/fr/.local/lib/aws/bin/aws --version

Mon problème est que je dois taper le chemin complet /Users/fr/.local/lib/aws/bin/aws pour exécuter n'importe quelle commande aws . Selon la dernière étape du guide, je devrais être en mesure d'exécuter la commande aws directement sans taper le chemin absolu pour qu'elle s'exécute.

Lorsque j'essaie d'utiliser uniquement aws , j'obtiens le résultat suivant:

aws --version                                                                                         ⏎
command not found: aws

J'ai suivi les instructions pour m'assurer que ~ / bin est dans mon environnement PATH et je pouvais voir qu'il n'y avait pas de sortie, par conséquent, j'ai exécuté la commande export PATH = ~ / bin: $ PATH pour ajouter ~ / bin à $ PATH . Mais cela n'a fait aucune différence. La commande aws ne fonctionne pas directement.

Quelqu'un pourrait-il s'il vous plaît dire ce qui pourrait ne pas aller?

fr_muses
la source

Réponses:

249

Voici les trois étapes pour installer AWS cli sur mac OSX (curl ou wget) La troisième étape vous définira correctement le chemin

$ 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

L'autre moyen le plus simple est d'utiliser l'homebrew

brew install awscli

Si vous voulez la version de développement, vous pouvez faire

brew install awscli --HEAD
gourou
la source
63
brew install awscliétait la voie à suivre pour moi
Michael Guild
omg .. à travers comme 1 heure d'essayer de faire fonctionner le cli, a brew install awsclifonctionné comme un charme. Je vous remercie!
jdmdevdotnet
Je vous remercie! Brew a échoué avec un problème d'autorisations Error: An unexpected error occurred during the 'brew link' stepmais curl a fonctionné.
Jim Edelstein
brew install awscli est le plus simple
Jun711
2
Veuillez noter ce que la documentation indique: Package managers such yum, apt-get, or Homebrew for macOS are often behind several versions of the AWS CLIassurez-vous donc de vérifier la version après l'installation.
gatteo
58

Cela a fonctionné pour moi (note: changez 2.7 pour votre version spécifique de Python):

export PATH=~/Library/Python/2.7/bin/:$PATH

Vous voudrez probablement ajouter ceci à la fin de votre .bash_profileutilisation:

sudo nano ~/.bash_profile
volonté
la source
49

lorsque vous exécutez la commande: pip3 install awscli --upgrade --user

surveillez de près où l'outil aws cli est installé, vous pouvez voir le chemin sur le journal du terminal, dans mon cas, j'ai quelque chose comme ceci:

awscli in ./Library/Python/3.6/lib/python/site-packages

Maintenant, vous devez ajouter à votre .bash_profile le même chemin mais sur le dossier bin (en supprimant le chemin de la bibliothèque et en mettant à la place votre chemin bin) comme ceci:

export PATH=/Users/xuser/Library/Python/3.6/bin/:$PATH

Juan Camilo Zapata
la source
4
votre message m'a aidé.
anujprashar
3
Cela a fait ma journée
Teja
1
Sur python 2.7, il a été ajouté à ./Library/Python/2.7/bin
Tech Junkie
4
Meilleure réponse pour moi. Inutile de contourner un problème en utilisant simplement une infusion. C'est tellement mieux de savoir pourquoi il est cassé! Thankyou Juan
Karl Taylor
43

J'ai utilisé Homebrew pour installer AWS CLI et je suis assez satisfait du résultat. Tapez simplement:

$ brew install awscli

après avoir installé l'infusion.

Notez que la page d'installation de l' AWS CLI contient la clause de non-responsabilité suivante:

Le package awscli peut être disponible dans des référentiels pour d'autres gestionnaires de packages tels que APT, yum et Homebrew, mais il n'est pas garanti qu'il s'agisse de la dernière version.

Cela dit, je n'ai pas trouvé que cela soit un problème, le awscli.rb a été mis à jour assez fréquemment pour correspondre aux dernières versions.


Mise à jour: il existe un problème GitHub qui suggère que Homebrew devrait être ajouté comme alternative dans les instructions d'installation de l'AWS CLI. Ce problème a été résolu par la suite en faveur de cette demande de fonctionnalité UserVoice .

matsev
la source
10

Cela m'est également arrivé et je ne voulais plus installer Brew, car tout fonctionnait déjà bien. J'ai également suivi le `` tutoriel '' sur le site AWS et j'ai rencontré un problème lors de l'étape du chemin d'exportation.

Fondamentalement, il a ajouté un dossier python différent de celui dans lequel awscli a été téléchargé. Donc, au lieu de export PATH=~/.local/bin:$PATH ce qu'ils ont suggéré, j'ai utilisé un chemin complet à partir du disque: export PATH=/Users/abc/Library/Python/3.6/bin/:$PATH

Jaruss
la source
8

Essayer:

PATH=/Users/fr/.local/lib/aws/bin:$PATH 

(placez-le dans un fichier .profile)

Essayez également d'installer aws cli avec homebrew. Il l'ajoutera automatiquement à votre chemin.

Nami
la source
7

parfois, alors que les chemins de classe sont foirés sur mac - vous pouvez toujours exécuter pour réparer aws cli localement

$ brew install awscli

qui réutiliserait et mettrait à jour le package existant et définirait le bon chemin de classe

Pravin
la source
A travaillé pour moi Merci :)
Salman Shahid
5

J'ai juste eu la même erreur et j'ai pu la résoudre en ajoutant la ligne suivante à mon .bash_profilefichier:

export PATH=~/Library/Python/2.7/bin/:$PATH

Veuillez vérifier la version de Python car elle peut être légèrement différente sur votre système. Cela évite d'ajouter votre dossier de nom d'utilisateur au .bash_profilefichier.

Piotr Berebecki
la source
2

Si vous avez la version Anaconda de python sur votre système, veuillez utiliser conda pour installer awscli:

conda install -c conda-forge awscli
Elfe
la source
Cela a fonctionné pour moi, mais je ne sais pas pourquoi. Mon environnement conda a été désactivé et j'ai utilisé pip3 comme commande d'installation, donc je m'attendais à ce que conda ne soit pas du tout dans l'image. Pourriez-vous expliquer un peu plus pourquoi cela fonctionne?
DaveRGP
2

Assurez-vous que python est installé globalement, les étapes sont comme ceci:

Du côté AWS:

Accédez au centre AWS amazon -> Services -> Gestion des identités et des accès (IAM) -> Utilisateurs -> recherchez votre utilisateur et cliquez dessus -> sélectionnez l'onglet Informations d'identification de sécurité -> créez une clé d'accès

Installation: en ligne de commande / bash

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Facultatif : si la version aws n'est pas encore trouvée, configurez le chemin aws sur votre profil bash.

vim ~/.bash_profile
#paste this line
PATH=$PATH:/usr/local/bin/aws

Configuration: (Étape finale) Configurez vos informations d'identification comme suit

aws configure

Remplissez les propriétés que vous avez obtenues sur le site Web d'aws et connectez votre compte. joindre un exemple pour cette étape.

ID de clé d'accès AWS [Aucun]: abcd

Clé d'accès secrète AWS [Aucune]: zyx123! @ #

Région par défaut> nom [Aucun]: us-east-1

Format de sortie par défaut [Aucun]: json

Bonne chance!

avivamg
la source
1

J'ai personnellement eu le même problème avec aws CodeBuild - je ne pouvais pas utiliser le aws cli. Je l'ai résolu en installant aws globalement sur mon image docker (au lieu de l'installer localement chez un utilisateur).

RUN pip install awscli --upgrade 

(instead of RUN pip install awscli --upgrade --user)

Cela a fonctionné pour moi, si cela peut aider n'importe qui!

Tibo
la source
0

J'ai fini par faire la même chose que Piotr et il est bon de comprendre comment mettre à jour votre chemin sans logiciel tiers. Cependant, en tant que logiciel tiers, Homebrew est assez génial et c'est une bonne chose de l'utiliser pour garder vos liens symboliques de dépendance contrôlés au même endroit. de facto pkg mgr sur mac.

Puckey
la source
0

Jetez un œil à la note sur https://docs.aws.amazon.com/cli/latest/userguide/install-bundle.html

Par défaut, le script d'installation s'exécute sous la version système par défaut de Python. Si vous avez installé une version alternative de Python et que vous souhaitez l'utiliser pour installer l'AWS CLI, exécutez le script d'installation avec cette version par chemin absolu vers l'exécutable Python.

Pour l'étape où vous exécutez l'exécutable d'installation

au lieu de faire simplement:

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

Découvrez où votre python est installé par exemple

$ which python

puis utilisez le chemin pour installer l'exécutable comme

$ sudo <path from executing which python> awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

Ce qui précède devrait résoudre le problème.

vredrav
la source