Tìm hiểu cách sử dụng công cụ AWS CLI để tải lên, tải xuống và đồng bộ hóa các tệp và thư mục giữa các vị trí cục bộ và nhóm AWS S3.

Bạn đang xem : tệp tải lên aws s3

Khi làm việc với Amazon S3 (Dịch vụ lưu trữ đơn giản), có thể bạn đang sử dụng Bảng điều khiển web S3 để tải xuống, sao chép hoặc tải tệp lên nhóm S3. Sử dụng bảng điều khiển là hoàn toàn tốt, đó là những gì nó được thiết kế để bắt đầu.

Đặc biệt đối với những quản trị viên đã quen với việc nhấp chuột nhiều hơn lệnh bàn phím, bảng điều khiển web có lẽ là bảng điều khiển dễ dàng nhất. Tuy nhiên, quản trị viên cuối cùng sẽ gặp phải yêu cầu thực hiện các hoạt động tệp hàng loạt với Amazon S3, chẳng hạn như tải tệp lên không cần giám sát. GUI không phải là công cụ tốt nhất cho việc đó.

Đối với các yêu cầu tự động hóa như vậy với Amazon Web Services, bao gồm Amazon S3, công cụ AWS CLI cung cấp cho quản trị viên các tùy chọn dòng lệnh để quản lý nhóm và đối tượng Amazon S3.

Trong bài viết này, bạn sẽ tìm hiểu cách sử dụng công cụ dòng lệnh AWS CLI để tải lên, sao chép, tải xuống và đồng bộ hóa tệp với Amazon S3. Bạn cũng sẽ tìm hiểu những kiến ​​thức cơ bản về cách cung cấp quyền truy cập vào nhóm S3 và định cấu hình cấu hình truy cập đó để hoạt động với công cụ AWS CLI.

Điều kiện tiên quyết

Vì đây là bài viết hướng dẫn nên sẽ có các ví dụ và minh họa trong các phần tiếp theo. Để theo dõi thành công, bạn cần phải đáp ứng một số yêu cầu.

  • Tài khoản AWS. Nếu chưa có gói đăng ký AWS hiện tại, bạn có thể đăng ký Bậc miễn phí AWS .
  • Nhóm AWS S3. Bạn có thể sử dụng một nhóm hiện có nếu muốn. Tuy nhiên, bạn nên tạo một thùng rỗng để thay thế. Vui lòng tham khảo Tạo nhóm .
  • Máy tính Windows 10 có ít nhất Windows PowerShell 5.1. Trong bài viết này, PowerShell 7.0.2 sẽ được sử dụng.
  • Công cụ AWS CLI phiên bản 2 phải được cài đặt trên máy tính của bạn. < / li>
  • Các thư mục và tệp cục bộ mà bạn sẽ tải lên hoặc đồng bộ hóa với Amazon S3

Chuẩn bị Quyền truy cập AWS S3 của bạn

Giả sử rằng bạn đã có sẵn các yêu cầu. Bạn nghĩ rằng bạn đã có thể bắt đầu vận hành AWS CLI với nhóm S3 của mình. Ý tôi là, sẽ không tốt nếu nó đơn giản như vậy sao?

Đối với những người mới bắt đầu làm việc với Amazon S3 hoặc AWS nói chung, phần này nhằm mục đích giúp bạn thiết lập quyền truy cập vào S3 và định cấu hình cấu hình AWS CLI.

Bạn có thể tìm thấy tài liệu đầy đủ để tạo người dùng IAM trong AWS trong liên kết này bên dưới. Tạo người dùng IAM trong tài khoản AWS của bạn

Tạo Người dùng IAM với Quyền truy cập S3

Khi truy cập AWS bằng CLI, bạn sẽ cần tạo một hoặc nhiều người dùng IAM có đủ quyền truy cập vào các tài nguyên mà bạn dự định làm việc. Trong phần này, bạn sẽ tạo một người dùng IAM có quyền truy cập vào Amazon S3.

Để tạo người dùng IAM có quyền truy cập vào Amazon S3, trước tiên bạn cần đăng nhập vào bảng điều khiển AWS IAM của mình. Trong nhóm Quản lý quyền truy cập , nhấp vào Người dùng . Tiếp theo, nhấp vào Thêm người dùng .

Trình đơn người dùng IAM Trình đơn Người dùng IAM

Nhập tên người dùng IAM mà bạn đang tạo bên trong hộp Tên người dùng * chẳng hạn như s3Admin. Trong lựa chọn Loại quyền truy cập *, hãy chọn Truy cập có lập trình. Sau đó, nhấp vào nút Tiếp theo: Quyền .

Đặt chi tiết người dùng IAM Đặt chi tiết người dùng IAM

Tiếp theo, nhấp vào Đính kèm trực tiếp các chính sách hiện có . Sau đó, tìm kiếm tên chính sách AmazonS3FullAccess và kiểm tra nó. Khi hoàn tất, hãy nhấp vào Tiếp theo: Thẻ .

Gán quyền người dùng IAM Chỉ định quyền người dùng IAM

Việc tạo thẻ là tùy chọn trong trang Thêm thẻ và bạn chỉ có thể bỏ qua bước này và nhấp vào Tiếp theo: Xem lại nút .

Thẻ người dùng IAM Thẻ người dùng IAM

Trong trang Xem lại , bạn sẽ thấy một bản tóm tắt về tài khoản mới đang được tạo. Nhấp vào Tạo người dùng .

Tóm tắt người dùng IAM Tóm tắt người dùng IAM

Cuối cùng, khi người dùng được tạo, bạn phải sao chép ID khóa truy cập Khóa truy cập bí mật > giá trị và lưu chúng cho người dùng sau. Lưu ý rằng đây là lần duy nhất bạn có thể thấy những giá trị này.

Thông tin đăng nhập khóa người dùng IAM Thông tin đăng nhập khóa người dùng IAM

Thiết lập cấu hình AWS trên máy tính của bạn

Giờ bạn đã tạo người dùng IAM có quyền truy cập thích hợp vào Amazon S3, bước tiếp theo là thiết lập cấu hình AWS CLI trên máy tính của bạn.

Phần này giả định rằng bạn đã cài đặt công cụ AWS CLI phiên bản 2 theo yêu cầu. Để tạo hồ sơ, bạn sẽ cần những thông tin sau:

  • ID khóa truy cập của người dùng IAM.
  • Khóa truy cập bí mật được liên kết với người dùng IAM.
  • Tên vùng mặc định tương ứng với vị trí của nhóm AWS S3 của bạn. Bạn có thể xem danh sách các điểm cuối bằng cách sử dụng liên kết này . Trong bài viết này, nhóm AWS S3 nằm ở khu vực Châu Á Thái Bình Dương (Sydney) và điểm cuối tương ứng là ap-Southeast-2.
  • Định dạng đầu ra mặc định. Sử dụng JSON cho việc này.

Để tạo cấu hình, hãy mở PowerShell, nhập lệnh bên dưới và làm theo lời nhắc.

  aws config  

Nhập ID khóa truy cập, Khóa truy cập bí mật, Tên vùng mặc định và tên đầu ra mặc định. Tham khảo phần minh họa bên dưới.

Định cấu hình cấu hình AWS CLI Định cấu hình cấu hình AWS CLI

Kiểm tra AWS CLI Access

Sau khi định cấu hình cấu hình AWS CLI, bạn có thể xác nhận rằng cấu hình đang hoạt động bằng cách chạy lệnh này bên dưới trong PowerShell.

  aws s3 ls  

Lệnh trên sẽ liệt kê các nhóm Amazon S3 mà bạn có trong tài khoản của mình. Phần minh họa dưới đây cho thấy lệnh đang hoạt động. Kết quả cho thấy danh sách các nhóm S3 có sẵn cho biết rằng cấu hình cấu hình đã thành công.

Nhóm danh sách S3 Liệt kê các nhóm S3

Để tìm hiểu về các lệnh AWS CLI dành riêng cho Amazon S3, bạn có thể truy cập AWS CLI Command Reference S3 .

Quản lý các tập tin trong S3

Với AWS CLI, các hoạt động quản lý tệp điển hình có thể được thực hiện như tải tệp lên S3, tải tệp xuống từ S3, xóa các đối tượng trong S3 và sao chép các đối tượng S3 sang một vị trí S3 khác. Tất cả chỉ là vấn đề biết lệnh, cú pháp, tham số và tùy chọn phù hợp.

Trong các phần sau, môi trường được sử dụng bao gồm những điều sau đây.

  • Hai nhóm S3, cụ thể là atasync1 và atasync2. Ảnh chụp màn hình bên dưới hiển thị các nhóm S3 hiện có trong bảng điều khiển Amazon S3 .

Danh sách các tên nhóm S3 có sẵn trong bảng điều khiển Amazon S3 Danh sách tên nhóm S3 có sẵn trong bảng điều khiển Amazon S3

  • Thư mục cục bộ và các tệp nằm trong c: \ sync.

>Thư mục cục bộ Thư mục cục bộ

Tải lên các tệp riêng lẻ tới S3

Khi bạn tải tệp lên S3, bạn có thể tải lên từng tệp một hoặc bằng cách tải lên nhiều tệp và thư mục một cách đệ quy. Tùy thuộc vào yêu cầu của bạn, bạn có thể chọn một cái khác mà bạn cho là phù hợp.

Để tải tệp lên S3, bạn cần cung cấp hai đối số (nguồn và đích) cho lệnh aws s3 cp .

Ví dụ: để tải tệp c: \ sync \ logs \ log1.xml lên thư mục gốc của nhóm atasync1, bạn có thể sử dụng lệnh bên dưới.

  aws s3 cp c: \ sync \ logs \ log1.xml s3: // atasync1 /  

Lưu ý: Tên nhóm S3 luôn có tiền tố là S3: // khi được sử dụng với AWS CLI

Chạy lệnh trên trong PowerShell, nhưng trước tiên hãy thay đổi nguồn và đích phù hợp với môi trường của bạn. Đầu ra sẽ tương tự như minh họa bên dưới.

Tải tệp lên S3 Tải tệp lên S3

Bản trình diễn ở trên cho thấy tệp có tên c: \ sync \ logs \ log1.xml đã được tải lên mà không có lỗi đến đích S3: s3: // atasync1 /.

Sử dụng lệnh bên dưới để liệt kê các đối tượng ở gốc của nhóm S3.

  aws s3 ls s3: // atasync1 /  

Chạy lệnh trên trong PowerShell sẽ dẫn đến kết quả tương tự, như được hiển thị trong bản trình diễn bên dưới. Như bạn có thể thấy trong đầu ra bên dưới, tệp log1.xml có trong thư mục gốc của vị trí S3.

Liệt kê tệp đã tải lên trong S3 Liệt kê tệp đã tải lên trong S3

Tải nhiều tệp và thư mục lên S3 Đệ quy

Phần trước đã hướng dẫn bạn cách sao chép một tệp vào vị trí S3. Điều gì sẽ xảy ra nếu bạn cần tải lên nhiều tệp từ một thư mục và các thư mục con? Chắc chắn bạn sẽ không muốn chạy cùng một lệnh nhiều lần cho các tên tệp khác nhau, phải không?

Lệnh aws s3 cp có một tùy chọn để xử lý các tệp và thư mục một cách đệ quy và đây là tùy chọn --recursive .

Ví dụ: thư mục c: \ sync chứa 166 đối tượng (tệp và thư mục con).

Thư mục chứa nhiều tệp và thư mục con Thư mục chứa nhiều tệp và thư mục con

Sử dụng tùy chọn --recursive , tất cả nội dung của thư mục c: \ sync sẽ được tải lên S3 trong khi vẫn giữ nguyên cấu trúc thư mục. Để kiểm tra, hãy sử dụng mã ví dụ bên dưới, nhưng hãy đảm bảo thay đổi nguồn và đích phù hợp với môi trường của bạn.

Bạn sẽ nhận thấy từ mã bên dưới, nguồn là c: \ sync và đích là s3: // atasync1 / sync. Phím / sync theo sau tên nhóm S3 cho biết AWS CLI để tải lên các tệp trong thư mục / sync trong S3. Nếu thư mục / sync không tồn tại trong S3, nó sẽ được tạo tự động.

  aws s3 cp c: \ sync s3: // atasync1 / sync --recursive  

Đoạn mã trên sẽ dẫn đến đầu ra, như được hiển thị trong phần minh họa bên dưới.

Tải nhiều tệp và thư mục lên S3 Tải nhiều tệp và thư mục lên S3

Tải nhiều tệp và thư mục lên S3 một cách chọn lọc

Trong một số trường hợp, tải lên TẤT CẢ các loại tệp không phải là tùy chọn tốt nhất. Giống như khi bạn chỉ cần tải lên các tệp có phần mở rộng tệp cụ thể (ví dụ: * .ps1). Hai tùy chọn khác có sẵn cho lệnh cp --include --exclude .

Trong khi sử dụng lệnh trong phần trước bao gồm tất cả các tệp trong tải lên đệ quy, lệnh bên dưới sẽ chỉ bao gồm các tệp phù hợp với phần mở rộng tệp * .ps1 và loại trừ mọi tệp khác khỏi tải lên.

 aws s3 cp c: \ sync s3: // atasync1 / sync --recursive --exclude * --include * .ps1  

Phần minh họa bên dưới cho thấy đoạn mã trên hoạt động như thế nào khi được thực thi.

Tải lên các tệp phù hợp với phần mở rộng tệp cụ thể Tải lên các tệp phù hợp với một phần mở rộng tệp cụ thể

Một ví dụ khác là nếu bạn muốn bao gồm nhiều phần mở rộng tệp khác nhau, bạn sẽ cần chỉ định - -bao gồm tùy chọn nhiều lần.

Lệnh ví dụ bên dưới sẽ chỉ bao gồm các tệp * .csv và * .png vào lệnh sao chép.

  aws s3 cp c: \ sync s3: // atasync1 / sync --recursive --exclude * - bao gồm * .csv --include * .png  

Chạy mã ở trên trong PowerShell sẽ cho bạn kết quả tương tự, như được hiển thị bên dưới.

Tải lên tệp có nhiều tùy chọn bao gồm Tải lên tệp với nhiều tùy chọn bao gồm

Tải xuống Đối tượng từ S3

Dựa trên các ví dụ bạn đã học trong phần này, bạn cũng có thể thực hiện ngược lại các thao tác sao chép. Có nghĩa là, bạn có thể tải các đối tượng từ vị trí thùng S3 xuống máy cục bộ.

Việc sao chép từ S3 sang cục bộ sẽ yêu cầu bạn chuyển đổi vị trí của nguồn và đích. Nguồn là vị trí S3 và đích là đường dẫn cục bộ, như hình bên dưới.

  aws s3 cp s3: // atasync1 / sync c: \ sync  

Lưu ý rằng các tùy chọn tương tự được sử dụng khi tải tệp lên S3 cũng có thể áp dụng khi tải các đối tượng từ S3 xuống cục bộ. Ví dụ: tải xuống tất cả các đối tượng bằng lệnh bên dưới với tùy chọn --recursive .

  aws s3 cp s3: // atasync1 / sync c: \ sync --recursive  

Sao chép các đối tượng giữa các vị trí S3

Ngoài việc tải lên và tải xuống các tệp và thư mục, sử dụng AWS CLI, bạn cũng có thể sao chép hoặc di chuyển tệp giữa hai vị trí nhóm S3.

Bạn sẽ thấy lệnh bên dưới sử dụng một vị trí S3 làm nguồn và một vị trí S3 khác làm đích.

  aws s3 cp s3: //atasync1/Log1.xml s3: // atasync2 /  < / pre>

Hình minh họa bên dưới cho bạn thấy tệp nguồn đang được sao chép sang một vị trí S3 khác bằng lệnh trên.

Sao chép các đối tượng từ một vị trí S3 sang một vị trí S3 khác Sao chép các đối tượng từ một vị trí S3 sang một vị trí S3 khác

Đồng bộ hóa các tệp và thư mục với S3

Cho đến nay, bạn đã học cách tải lên, tải xuống và sao chép tệp trong S3 bằng lệnh AWS CLI. Trong phần này, bạn sẽ tìm hiểu về một lệnh vận hành tệp khác có sẵn trong AWS CLI cho S3, đó là lệnh sync . Lệnh sync chỉ xử lý các tệp đã cập nhật, mới và đã xóa.

Có một số trường hợp bạn cần cập nhật và đồng bộ hóa nội dung của nhóm S3 với thư mục cục bộ trên máy chủ. Ví dụ: bạn có thể có yêu cầu giữ nhật ký giao dịch trên máy chủ được đồng bộ hóa với S3 trong một khoảng thời gian.

Sử dụng lệnh bên dưới, các tệp nhật ký * .XML nằm trong thư mục c: \ sync trên máy chủ cục bộ sẽ được đồng bộ hóa với vị trí S3 tại s3: // atasync1.

  aws s3 sync C: \ sync \ s3: // atasync1 / --exclude * --include *. xml  

Trình diễn bên dưới cho thấy rằng sau khi chạy lệnh trên trong PowerShell, tất cả các tệp * .XML đã được tải lên S3 đích s3: // atasync1 /.

Đồng bộ hóa tệp cục bộ với S3 Đồng bộ hóa các tệp cục bộ với S3

Trong ví dụ tiếp theo này, giả định rằng nội dung của tệp nhật ký Log1.xml đã được sửa đổi. Lệnh sync sẽ nhận sửa đổi đó và tải các thay đổi được thực hiện trên tệp cục bộ lên S3, như được hiển thị trong bản trình diễn bên dưới.

Lệnh sử dụng vẫn giống như ví dụ trước.

Đồng bộ hóa các thay đổi đối với S3 Đồng bộ hóa các thay đổi đối với S3

Như bạn có thể thấy từ kết quả đầu ra ở trên, vì chỉ tệp Log1.xml được thay đổi cục bộ nên đây cũng là tệp duy nhất được đồng bộ hóa với S3.

Đồng bộ hóa Xóa với S3

Theo mặc định, lệnh sync không xử lý việc xóa. Bất kỳ tệp nào bị xóa khỏi vị trí nguồn sẽ không bị xóa ở đích. Chà, không trừ khi bạn sử dụng tùy chọn --delete .

Trong ví dụ tiếp theo này, tệp có tên Log5.xml đã bị xóa khỏi nguồn. Lệnh đồng bộ hóa các tệp sẽ được thêm vào với tùy chọn --delete , như được hiển thị trong đoạn mã bên dưới.

  aws s3 sync C: \ sync \ s3: // atasync1 / --exclude * --include *. xml --delete  

Khi bạn chạy lệnh trên trong PowerShell, tệp đã xóa có tên Log5.xml cũng sẽ bị xóa tại vị trí S3 đích. Kết quả mẫu được hiển thị bên dưới.

Đồng bộ hóa xóa tệp với S3 Đồng bộ hóa việc xóa tệp với S3

Tóm tắt

Amazon S3 là một tài nguyên tuyệt vời để lưu trữ các tệp trên đám mây. Với việc sử dụng công cụ AWS CLI, cách bạn sử dụng Amazon S3 được mở rộng hơn nữa và mở ra cơ hội tự động hóa các quy trình của bạn.

Trong bài viết này, bạn đã học cách sử dụng công cụ AWS CLI để tải lên, tải xuống và đồng bộ hóa các tệp và thư mục giữa các vị trí cục bộ và nhóm S3. Bạn cũng đã biết rằng nội dung của nhóm S3 cũng có thể được sao chép hoặc di chuyển đến các vị trí S3 khác.

Có thể có nhiều tình huống sử dụng khác khi sử dụng công cụ AWS CLI để tự động hóa việc quản lý tệp với Amazon S3. Bạn thậm chí có thể thử kết hợp nó với tập lệnh PowerShell và xây dựng các công cụ của riêng bạn hoặc mô-đun có thể sử dụng lại. Việc tìm kiếm những cơ hội đó và thể hiện kỹ năng của bạn là tùy thuộc vào bạn.

Đọc thêm

< / p>


Xem thêm những thông tin liên quan đến chủ đề tập tin tải lên aws s3

Upload Images Directly to S3 from Front End

alt

  • Tác giả: Sam Meech-Ward
  • Ngày đăng: 2021-04-08
  • Đánh giá: 4 ⭐ ( 4960 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Learn how to store your web app's image files in an s3 bucket by uploading them directly to the bucket.

    🔗Code:
    https://github.com/Sam-Meech-Ward/s3-direct-upload

    🔗Other tutorials:
    Upload Images to S3 from Node Back End: https://youtu.be/NZElg91l_ms
    S3 bucket for a static website: https://youtu.be/RoY3ekCCxKc
    Image upload without s3: https://sammeechward.com/uploading-images-express-and-react/

    🔗Moar Links
    My Website: https://www.sammeechward.com
    Instagram: https://www.instagram.com/meech_ward
    Github: https://github.com/orgs/Sam-Meech-Ward

Tải tệp tin trực tiếp lên Amazon S3 với ứng dụng Nodejs

  • Tác giả: viblo.asia
  • Đánh giá: 4 ⭐ ( 9341 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Các ứng dụng web thường được thiết kế với khả năng cho phép người dùng tải lên các tập tin như hình ảnh hoặc tài liệu lưu trữ. Amazone S3 là một tuỳ chọn phổ biến và đáng tin cậy.

Cách để viết tập lệnh bản sao lưu tệp vào Amazon S3 – AWS

  • Tác giả: aws.amazon.com
  • Đánh giá: 4 ⭐ ( 4639 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Bạn muốn biết cách để viết tập lệnh truy cập vào Amazon S3? Hướng dẫn đơn giản này sẽ trình bày với bạn quy trình qua từng bước.

Amazon S3: tăng kích thước tập tin lưu trữ trực tuyến lên 5TB

  • Tác giả: diendan.amtech.vn
  • Đánh giá: 3 ⭐ ( 8560 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hãng Amazon hôm 9/12/2010 cho biết, dịch vụ Amazon Web Services (AWS) vừa tăng kích thước tối đa tập tin lưu trên dịch vụ lưu trữ trực tuyến S3 (Simple Storage Service) của họ lên đến 5TB.

    [IMG]
    Theo Amazon, việc thay đổi này giúp người dùng dịch vụ S3 có thể lưu các tập tin video độ phân giải cao, dữ liệu khoa học hay y khoa.Trước đây, người dùng dịch vụ S3 có nhu cầu lưu các nội dung lớn phải tách riêng từng tập tin với dung lượng lên đến 5GB. Khi muốn chia sẻ các tập tin này, họ phải dùng nhiều mã URI (uniform resource identifiers) trên Amazon S3, và nối các tập tin lại với nhau bằng cách dùng một ứng dụng chuyên dùng hay một máy chủ trung gian.
    Để đơn giản và tăng tốc độ khi tải các tập tin dung lượng lớn lên mạng đám mây, Amazon đã đưa ra tính năng tải lên nhiều phần. Tính năng này được giới thiệu vào tháng 11/2010, cho phép người dùng chia nhỏ các tập tin và sau đó tải chúng lên lần lượt hay cùng lúc.
    Amazon cũng đã nâng cấp các tính năng xử lý tập tin kích thước lớn của họ như AWS SDK (Software Development Kit), S3 Management Console, và AWS Import/Export.
    (pcworld)

Cách sao lưu các tập tin lên S3 và xóa chúng bằng Bash

  • Tác giả: vncodeblog.com
  • Đánh giá: 4 ⭐ ( 1283 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Tải máy ảo lên AWS :: AWS Import

  • Tác giả: 000014.awsstudygroup.com
  • Đánh giá: 5 ⭐ ( 3554 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Amazon S3 là gì và tại sao bạn nên dùng nó * Gsviec

  • Tác giả: gsviec.com
  • Đánh giá: 3 ⭐ ( 4731 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Xem thêm các bài viết khác thuộc chuyên mục: WordPress

See also  Phông chữ Patua One Free by Latinotype - patua một phông chữ thông thường