2015-03-08 19 views
6

Tôi mới dùng AWS và tôi đang cố gắng tải xuống một loạt tệp từ thùng S3 của tôi sang máy cục bộ của mình bằng cách sử dụng aws s3 sync như được mô tả trong http://docs.aws.amazon.com/cli/latest/reference/s3/sync.html. tôi đã sử dụng lệnh sau:Amazon S3 đồng bộ hóa với máy cục bộ không thành công

aws s3 sync s3://outputbucket/files/ . 

Tôi đã nhận lỗi sau: Một lỗi khách hàng (AccessDenied) xảy ra khi gọi ListObjects hoạt động: Access Denied Hoàn thành 1 phần (s) với ... file (s) còn lại

Mặc dù tôi đã cấu hình truy cập chính ID & khóa truy cập bí mật của tôi như được mô tả trong http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-set-up.html

đâu có thể vấn đề là gì?

+0

Người dùng IAM bạn đang sử dụng không có quyền ListObjcets trên Nhóm. Bạn có thể đăng các quyền IAM không? – Max

Trả lời

6

Giả sử bạn là Quản trị viên và/hoặc bạn đã đặt thông tin đăng nhập của mình đúng cách, có thể bạn đang sử dụng một CLI AWS cũ.

Tôi gặp phải điều này trong khi sử dụng AWS CLI đóng gói với Ubuntu 14.04.

Các giải pháp mà làm việc đối với tôi là để loại bỏ các AWS CLI được đóng gói sẵn với Ubuntu, và tải nó từ python-pip thay vì:

sudo apt-get remove awscli 
sudo apt-get install python-pip 
sudo pip install awscli 

Nhiều nhờ vào liên kết này: https://forums.aws.amazon.com/thread.jspa?threadID=173124

+0

Cảm ơn nhiều, đã giải quyết được vấn đề của tôi. – cboettig

+0

Tôi ước tôi có nhiều hơn một ưu đãi. – madebydavid

1

Để thực hiện đồng bộ hóa tập tin, hai bộ điều khoản được yêu cầu:

  • ListObjects để có được một danh sách các tập tin cần sao chép
  • GetObjects để truy cập các đối tượng

Nếu bạn đang sử dụng người dùng "root" đi kèm với tài khoản AWS của bạn, bạn sẽ tự động có các quyền này.

Nếu bạn đang sử dụng người dùng được tạo trong Quản lý danh tính và truy cập (IAM), bạn sẽ cần gán các quyền này cho Người dùng. Cách dễ nhất là chỉ định chính sách AmazonS3FullAccess, cho phép truy cập tất cả các chức năng của S3.

1

Trong tôi trường hợp thông tin đăng nhập được lưu trữ trong ~/.aws/config đang bị ghi đè bởi hồ sơ cạnh tranh có nguồn gốc trong số ~/.zshrc. Chạy env | grep AWS để kiểm tra.

Các vấn đề liên quan