Налаштування AWS CLI $ PATH


111

Я дотримуюся посібника з налаштування AWS CLI . Мені вдалося успішно встановити інструмент на моєму терміналі Mac OS X із наступним виходом:

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

Моя проблема полягає в тому , що я повинен ввести повний шлях /Users/fr/.local/lib/aws/bin/aws виконати будь-яке AWS команди. Відповідно до останнього кроку керівництва, я повинен мати можливість виконувати команду aws безпосередньо, не вводячи абсолютний шлях для її виконання.

Коли я намагаюся використовувати лише aws , я отримую такий результат:

aws --version                                                                                         ⏎
command not found: aws

Я дотримувався інструкцій, щоб переконатися, що ~ / bin знаходиться в моєму середовищі PATH, і я міг бачити, що немає виводу, отже, я виконав команду експорту PATH = ~ / bin: $ PATH, щоб додати ~ / bin до $ PATH . Але це не мало значення. Команда aws не працює безпосередньо.

Невже хтось може порадити, що може піти не так?

Відповіді:


249

Ось три етапи встановлення AWS cli на mac OSX (curl або wget) Третій крок дозволить правильно встановити шлях

$ 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

Інший найпростіший спосіб - це зробити домашнє пиво

brew install awscli

Якщо ви хочете версію розробки, ви можете це зробити

brew install awscli --HEAD

63
brew install awscliбув шлях для мене
Гільдія Майкла

omg .. через те, як 1 годину спроб змусити кліп працювати, brew install awscliпрацював як шарм. Дякую!
jdmdevdotnet

Дякую! Не вдалося заварити проблему з дозволом, Error: An unexpected error occurred during the 'brew link' stepале згортання спрацювало.
Джим Едельштайн

brew install awscli - найпростіший
Jun711,

2
Зверніть увагу, що зазначено в документації: Package managers such yum, apt-get, or Homebrew for macOS are often behind several versions of the AWS CLIтому обов'язково перевірте версію після встановлення.
gatteo

58

Це працювало для мене (зверніть увагу: змініть 2.7 до вашої конкретної версії Python):

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

Ви, ймовірно, захочете додати це в кінці свого .bash_profileвикористання:

sudo nano ~/.bash_profile

49

при запуску команди: pip3 install awscli --upgrade --user

уважно стежте за тим, як встановлюється інструмент aws cli, ви можете побачити шлях до журналу терміналів, у моєму випадку я отримав щось подібне:

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

Тепер ви повинні додати до свого .bash_profile той самий шлях, але у папці bin (вилучивши з контуру lib і замість цього поставивши свій шлях для сміття) таким чином:

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


4
ваша посада допомогла мені.
anujprashar

3
Це зробило мій день
Тея

1
На python 2.7 додано до ./Library/Python/2.7/bin
Tech Junkie

4
Найкраща відповідь для мене. Немає сенсу обходити проблему просто за допомогою пива. Так набагато краще знати, чому вона зламана! Дякую Хуану
Карлу Тейлору

43

Я використовував Homebrew для встановлення AWS CLI, і я дуже задоволений результатом. Просто введіть:

$ brew install awscli

після встановлення варіння.

Зауважте, на сторінці встановлення AWS CLI є така відмова від відповідальності:

Пакет awscli може бути доступний у сховищах для інших менеджерів пакунків, таких як APT, yum та Homebrew, але це не остання версія.

Однак, я не вважав це проблемою, awscli.rb оновлювався досить часто, щоб відповідати останнім випускам.


Оновлення: існує проблема GitHub, яка передбачає, що Homebrew слід додати як альтернативу в інструкції з установки AWS CLI. Пізніше цю проблему було закрито на користь цього запиту на функцію UserVoice .


10

Це сталося і зі мною, і більше не хотілося встановлювати заварку, бо все вже працювало нормально. Я також дотримувався «підручника» на веб-сайті AWS і у мене виникли проблеми на етапі шляху експорту.

В основному, він додав іншу папку python як таку, куди було завантажено awscli. Тож замість того, export PATH=~/.local/bin:$PATH що вони запропонували, я використовував повний шлях від диска: export PATH=/Users/abc/Library/Python/3.6/bin/:$PATH


8

Спробуйте:

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

(помістіть його у .profile файл)

Спробуйте також встановити Aws cli з домашньою мовою. Це додасть його до вашого шляху автоматично.


7

іноді в той час, коли classpath переплутані на mac - ви завжди можете бігти, щоб виправити aws cli локально

$ brew install awscli

який би повторно використовував та оновлював існуючий пакет і налаштовував правильний класний шлях


Працював для мене Спасибі :)
Сальман Шахід

5

У мене щойно трапилася така ж помилка, і я зміг її вирішити, додавши до мого .bash_profileфайлу наступний рядок :

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

Перевірте версію Python, оскільки вона може дещо відрізнятися у вашій системі. Це дозволяє уникнути додавання папки вашого імені користувача у .bash_profileфайл.


2

Якщо у вашій системі є версія Anaconda python, будь ласка, використовуйте conda для встановлення awscli:

conda install -c conda-forge awscli

Це працювало для мене, але я не знаю, чому. Моє середовище conda було вимкнено, і я використовував pip3 як команду встановлення, тому я очікував, що конда взагалі не буде на зображенні. Не могли б ви пояснити трохи більше, чому це працює?
DaveRGP

2

Переконайтесь, що python встановлений у всьому світі, кроки такі:

З боку AWS:

Перейдіть до центру AWS Amazon -> Послуги -> Управління ідентифікацією та доступом (IAM) -> Користувачі -> знайдіть свого користувача та натисніть на нього -> виберіть вкладку "Акредитиви безпеки" -> створіть ключ доступу

Установка: у командному рядку / bash

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

Необов’язково : якщо версії Aws ще не знайдено, встановіть шлях aws на своєму баш-профілі.

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

Конфігурація: (Заключний крок) Налаштуйте свої облікові дані наступним чином

aws configure

Заповніть властивості, отримані на веб-сайті aws, і підключіть свій рахунок. додаючи приклад для цього кроку.

Ідентифікаційний ключ доступу AWS [None]: abcd

AWS секретний ключ доступу [None]: zyx123! @ #

Регіон за замовчуванням> ім'я [Немає]: us-east-1

Формат виводу за замовчуванням [None]: json

Щасти!


1

У мене особисто була та сама проблема з aws CodeBuild - я не міг використати aws cli. Я вирішив це, встановивши aws глобально на своєму docker-зображенні (замість того, щоб локально встановлювати його користувачеві).

RUN pip install awscli --upgrade 

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

Це працювало на мене, якщо це може комусь допомогти!


0

У кінцевому підсумку я робив те саме, що і Piotr, і добре розуміти, як оновити шлях без стороннього програмного забезпечення. Однак, оскільки програмне забезпечення сторонніх розробників Homebrew є досить приголомшливим, і його корисно використовувати для збереження ваших символьних посилань в одному місці. фактично pkg mgr на mac.



0

Погляньте на замітку на https://docs.aws.amazon.com/cli/latest/userguide/install-bundle.html

За замовчуванням сценарій встановлення працює під системною версією Python за замовчуванням. Якщо ви встановили альтернативну версію Python і хочете використовувати її для встановлення AWS CLI, запустіть сценарій установки з цією версією за абсолютним шляхом до виконуваного файлу Python.

Для кроку, де ви запускаєте виконуваний файл встановлення

замість того, щоб робити просто:

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

Дізнайтеся, де, наприклад, встановлено ваш python

$ which python

а потім скористайтеся контуром для встановлення виконуваного файлу

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

Сказане повинно вирішити проблему.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.