Cài đặt AWS CLI $ PATH


111

Tôi đang làm theo hướng dẫn Thiết lập AWS CLI . Tôi đã quản lý để cài đặt thành công công cụ trên thiết bị đầu cuối Mac OS X của mình với kết quả sau:

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

Vấn đề của tôi là tôi phải gõ đường dẫn đầy đủ /Users/fr/.local/lib/aws/bin/aws để thực hiện bất kỳ AWS lệnh. Theo bước cuối cùng của hướng dẫn, tôi sẽ có thể thực hiện lệnh aws trực tiếp mà không cần nhập đường dẫn tuyệt đối để nó thực thi.

Khi tôi thử sử dụng chỉ aws , tôi nhận được kết quả sau:

aws --version                                                                                         ⏎
command not found: aws

Tôi đã làm theo hướng dẫn để đảm bảo rằng ~ / bin ở trong môi trường PATH của tôi và tôi có thể thấy không có đầu ra nào, do đó, tôi đã thực hiện lệnh xuất PATH = ~ / bin: $ PATH để thêm ~ / bin vào $ PATH . Nhưng điều này không có gì khác biệt. Lệnh aws không hoạt động trực tiếp.

Ai đó có thể vui lòng cho lời khuyên những gì có thể xảy ra sai?

Câu trả lời:


249

Đây là ba bước để cài đặt AWS cli trên mac OSX (curl hoặc wget) Bước thứ ba sẽ thiết lập đường dẫn chính xác cho bạn

$ 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

Cách đơn giản nhất khác là sử dụng homebrew

brew install awscli

Nếu bạn muốn phiên bản phát triển, bạn có thể làm

brew install awscli --HEAD

63
brew install awsclilà con đường để đi cho tôi
Michael Guild

omg .. thông qua 1 giờ cố gắng để cli làm việc, brew install awsclilàm việc như một sự quyến rũ. Cảm ơn bạn!
jdmdevdotnet

Cảm ơn bạn! Brew không thành công với vấn đề về quyền Error: An unexpected error occurred during the 'brew link' stepnhưng curl hoạt động.
Jim Edelstein

brew cài đặt awscli là đơn giản một nhất
Jun711

2
Vui lòng lưu ý tài liệu nào nêu rõ: Package managers such yum, apt-get, or Homebrew for macOS are often behind several versions of the AWS CLIvì vậy hãy nhớ kiểm tra phiên bản sau khi cài đặt.
gatteo

58

Điều này đã làm việc cho tôi (lưu ý: thay đổi 2.7 thành phiên bản Python cụ thể của bạn):

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

Bạn có thể muốn thêm cái này vào cuối quá trình .bash_profilesử dụng của mình :

sudo nano ~/.bash_profile

49

khi bạn chạy lệnh: pip3 install awscli --upgrade --user

theo dõi kỹ nơi công cụ cli của aws được cài đặt, bạn có thể thấy đường dẫn trên nhật ký thiết bị đầu cuối, trong trường hợp của tôi, tôi có một cái gì đó như thế này:

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

Bây giờ bạn nên thêm vào .bash_profile của mình cùng một đường dẫn nhưng trên thư mục bin (xóa khỏi đường dẫn lib và thay vào đó đặt đường dẫn bin của bạn) như sau:

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


4
bài viết của bạn đã giúp tôi.
anujprashar

3
Điều này đã làm nên ngày của tôi
Teja

1
Trên python 2.7, nó đã được bổ sung vào ./Library/Python/2.7/bin
Tech Junkie

4
Câu trả lời tốt nhất cho tôi. Không có vấn đề gì nếu chỉ sử dụng bia. Tốt hơn hết là biết tại sao nó bị hỏng! Thankyou Juan
Karl Taylor

43

Tôi đã sử dụng Homebrew để cài đặt AWS CLI và tôi khá hài lòng với kết quả. Chỉ cần gõ:

$ brew install awscli

sau khi bạn đã cài đặt brew.

Lưu ý, trên trang cài đặt AWS CLI có tuyên bố từ chối trách nhiệm sau:

Gói awscli có thể có sẵn trong kho cho các trình quản lý gói khác như APT, yum và Homebrew, nhưng nó không được đảm bảo là phiên bản mới nhất.

Điều đó nói rằng, tôi không thấy đây là vấn đề, awscli.rb đã được cập nhật khá thường xuyên để phù hợp với các bản phát hành mới nhất.


Cập nhật: có một sự cố GitHub gợi ý rằng nên thêm Homebrew làm giải pháp thay thế trong hướng dẫn cài đặt AWS CLI. Vấn đề này sau đó đã được đóng lại theo yêu cầu tính năng UserVoice này .


10

Điều này cũng xảy ra với tôi và tôi không muốn cài đặt brew nữa, vì mọi thứ đã chạy tốt rồi. Tôi cũng đã làm theo 'hướng dẫn' trên trang AWS và gặp sự cố ở bước đường dẫn xuất.

Về cơ bản, nó đã thêm một thư mục python khác làm thư mục, nơi awscli được tải xuống. Vì vậy, thay vì export PATH=~/.local/bin:$PATH những gì họ đề xuất, tôi đã sử dụng một đường dẫn đầy đủ từ đĩa: export PATH=/Users/abc/Library/Python/3.6/bin/:$PATH


8

Thử:

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

(đặt nó trong tệp .profile)

Cũng cố gắng cài đặt aws cli bằng homebrew. Nó sẽ tự động thêm nó vào đường dẫn của bạn.


7

đôi khi trong khi classpath bị rối trên mac - bạn luôn có thể chạy để sửa lỗi cli cục bộ

$ brew install awscli

sẽ sử dụng lại và cập nhật gói hiện có và thiết lập classpath phù hợp


Làm việc cho tôi Cảm ơn :)
Salman Shahid

5

Tôi vừa gặp phải lỗi tương tự và tôi có thể giải quyết nó bằng cách thêm dòng sau vào .bash_profiletệp của mình :

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

Vui lòng kiểm tra phiên bản Python vì nó có thể hơi khác trên hệ thống của bạn. Điều này tránh thêm thư mục tên người dùng của bạn vào .bash_profiletệp.


2

Nếu bạn có phiên bản python Anaconda trên hệ thống của mình, vui lòng sử dụng conda để cài đặt awscli:

conda install -c conda-forge awscli

Điều này làm việc cho tôi, nhưng tôi không chắc tại sao. Môi trường conda của tôi đã bị vô hiệu hóa và tôi đã sử dụng pip3 làm lệnh cài đặt, vì vậy tôi mong rằng conda sẽ không có trong hình. Bạn có thể giải thích thêm một chút về lý do tại sao điều này hoạt động?
DaveRGP

2

Đảm bảo rằng python được cài đặt trên toàn cầu, Các bước như sau:

Về phía AWS:

Đi tới trung tâm AWS của amazon -> Dịch vụ -> Quản lý danh tính và truy cập (IAM) -> Người dùng -> tìm Người dùng của bạn và nhấp vào nó -> chọn tab Thông tin đăng nhập bảo mật -> tạo Khóa truy cập

Cài đặt: Trên dòng lệnh / bash

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

Tùy chọn : nếu chưa tìm thấy phiên bản aws, hãy thiết lập đường dẫn aws trên hồ sơ bash của bạn.

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

Cấu hình: (Bước cuối cùng) Định cấu hình thông tin đăng nhập của bạn như sau

aws configure

Điền vào các thuộc tính bạn nhận được từ trang web aws và kết nối tài khoản của bạn. đính kèm một ví dụ cho bước này.

ID khóa truy cập AWS [Không có]: abcd

Khóa truy cập bí mật AWS [Không có]: zyx123! @ #

Khu vực mặc định> tên [Không có]: us-East-1

Định dạng đầu ra mặc định [Không có]: json

Chúc may mắn!


1

Cá nhân tôi đã gặp vấn đề tương tự với aws CodeBuild - Tôi không thể sử dụng cli aws. Tôi đã giải quyết nó bằng cách cài đặt aws trên toàn cầu trên hình ảnh docker của mình (thay vì cài đặt nó cục bộ cho người dùng).

RUN pip install awscli --upgrade 

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

Nó đã làm việc cho tôi, nếu điều đó có thể giúp bất cứ ai!


0

Tôi đã làm giống như Piotr và thật tốt khi hiểu cách cập nhật đường dẫn của bạn mà không cần phần mềm của bên thứ ba. Tuy nhiên, phần mềm của bên thứ 3 thì Homebrew khá tuyệt vời và bạn nên sử dụng nó để giữ cho các liên kết tượng trưng phụ thuộc của bạn được kiểm soát ở một nơi. de facto pkg mgr trên mac.



0

Hãy xem ghi chú trên https://docs.aws.amazon.com/cli/latest/userguide/install-bundle.html

Theo mặc định, tập lệnh cài đặt chạy dưới phiên bản Python mặc định của hệ thống. Nếu bạn đã cài đặt một phiên bản Python thay thế và muốn sử dụng phiên bản đó để cài đặt AWS CLI, hãy chạy tập lệnh cài đặt với phiên bản đó theo đường dẫn tuyệt đối đến tệp thực thi Python.

Đối với bước mà bạn chạy tệp thực thi cài đặt

thay vì chỉ làm:

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

Tìm xem nơi python của bạn được cài đặt chẳng hạn

$ which python

và sau đó sử dụng đường dẫn để cài đặt tệp thực thi như

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

Ở trên sẽ khắc phục sự cố.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.