Câu trả lời:
Bạn có thể có điều gì đó sai trong hồ sơ mặc định của mình cho vùng mặc định.
Kiểm tra tệp của bạn tại ~/.aws/config
, bạn có một cái gì đó giống như
[default]
region=us-east-1a
...
Sửa vùng thành region=us-east-1
và sau đó lệnh sẽ hoạt động chính xác
aws s3 ls --region us-east-1
.
Một số dịch vụ AWS chỉ khả dụng ở các khu vực cụ thể không khớp với khu vực thực tế của bạn. Nếu đây là trường hợp, bạn có thể ghi đè cài đặt tiêu chuẩn bằng cách thêm vùng vào lệnh cli thực tế của bạn.
Đây có thể là một giải pháp hữu ích cho những người không muốn thay đổi vùng mặc định của họ trong tệp cấu hình. NẾU tệp cấu hình chung của bạn chưa được đặt: Vui lòng kiểm tra các đề xuất ở trên.
Trong ví dụ này, khu vực buộc phải eu-west-1 (ví dụ: Ireland):
aws s3 ls --region=eu-west-1
Đã thử nghiệm và sử dụng với thư làm việc aws để xóa người dùng:
aws workmail delete-user --region=eu-west-1 --organization-id [org-id] --user-id [user-id]
Tôi lấy ý tưởng từ chủ đề này và nó hoạt động hoàn hảo đối với tôi - vì vậy tôi muốn chia sẻ nó. Hy vọng nó giúp!
Nếu không có giải pháp nào được đưa ra ở trên hoạt động, hãy kiểm tra các quyền và cài đặt tường lửa của bạn. Trong trường hợp của tôi, việc thêm các biến môi trường proxy đã thực hiện công việc.
Đối với Linux hoặc mac
$ export HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
$ export HTTPS_PROXY=http://<YOUR PROXY IP>:<PORT>
Cho cửa sổ
set HTTP_PROXY=http://<YOUR PROXY IP>:<PORT>
Bạn nên chỉ định vùng trong tập lệnh CLI của mình, thay vì dựa vào vùng mặc định được chỉ định bằng cấu hình aws (như khẳng định câu trả lời phổ biến nhất hiện tại). Một câu trả lời khác ám chỉ điều đó, nhưng cú pháp sai nếu bạn đang sử dụng CLI qua Công cụ AWS cho Powershell.
Ví dụ này buộc khu vực đến us-west-2 (Bắc California), cú pháp PowerShell:
aws s3 ls --region us-west-2
Có thể, có điều gì đó sai với vùng mặc định trong khi định cấu hình aws. Trong trường hợp của bạn, URL cho biết " https://s3.us-east-1a.amazonaws.com/ "
Trong dấu nhắc lệnh của bạn,
aws cấu hình, nhập khóa của bạn, Bây giờ sửa chữa khu vực của bạn từ us-đông-1a thành us-đông-1 .
Vui lòng kiểm tra cú pháp theo CLI bạn đang sử dụng. Điều này sẽ hữu ích.
Giả sử rằng hồ sơ của bạn ~/aws/config
đang sử dụng khu vực (thay vì AZ như câu hỏi ban đầu của bạn); nguyên nhân khác là khách hàng của bạn không thể kết nối với s3.us-east-1.amazonaws.com
. Trong trường hợp của tôi, tôi không thể phân giải tên DNS đó do lỗi trong cấu hình mạng của tôi. Khắc phục sự cố DNS đã giải quyết được sự cố của tôi.
Vài điều tôi đã làm để sửa lỗi này:
aws connection aborted error 10013
")Đã thử nslookup aws s3 endpoing: nslookup s3.us-east-2.amazonaws.com
Yêu cầu DNS đã hết thời gian chờ. thời gian chờ là 2 giây. Máy chủ: Địa chỉ không xác định: 192.168.10.1
-> hmmm rất lạ
Đã đến khắc phục sự cố mạng windows và được chọn để kiểm tra quyền truy cập vào trang cụ thể. Nó thông báo rằng tường lửa của Windows đã chặn kết nối. Đã sửa lỗi này
Đã nhận được lỗi mới, sau khi sửa yêu cầu thông qua firewal:
Đã xảy ra lỗi (RequestTimeTooSkewed) khi gọi thao tác ListBuckets: Sự khác biệt giữa thời gian yêu cầu và thời gian hiện tại quá lớn.
Đã cập nhật ngày và giờ của tôi thành tự động -> Đã sửa
Mọi người đều có các giá trị mặc định khác nhau và điều thú vị là nó sẽ thay đổi theo thời gian. Ví dụ: đầu tiên tôi ở trên toàn cầu, và sau đó 15 phút, nó hiển thị Ohio (chính là us-east-2
).
Cách tốt nhất là kiểm tra nó trong quá trình làm việc của bạn - trong bảng điều khiển của khu vực làm việc AWS của bạn, chỉ cần đặt nó ở bên phải phía trên gần tên của bạn trên thanh trên cùng, kiểm tra tên khu vực của bạn và nhấp vào mũi tên xuống để xem khu vực của bạn.
Trong AWS CLI, nhập aws configure
hoặc aws2 configure
, cung cấp quyền truy cập và id bí mật của bạn, sau đó trong khu vực mặc định, hãy ghi khu vực của bạn và nhấn Enter.
Bạn chắc chắn sẽ có quyền truy cập vào tập hợp khu vực cụ thể và nó sẽ hoạt động.
Giải pháp cho vấn đề của tôi là chạy:
sudo aws configure
Nhập thông tin đăng nhập của bạn và sau đó chạy:
sudo aws s3 ls
Một giải pháp khác là đảm bảo rằng vùng trong tệp .aws / config giống với các điểm cuối
us-east-2
, tôi phải sử dụngus-east-1
?