Làm cách nào tôi có thể sao chép các tệp từ Máy chủ điện toán đám mây của Google sang máy cục bộ của mình


11

Tôi đang cố tải xuống tất cả các tệp máy chủ từ Google Cloud Compute (chạy Linux Debian). Tôi cực kỳ lạ lẫm với SSH và Google Cloud Compute nói chung. Tôi muốn sao chép tất cả các tệp (tương tự như yêu cầu git pull) hoặc tạo zip và tải xuống. Nói tóm lại, tôi cần sao chép tất cả các tệp trên máy chủ Google Cloud để xóa máy cục bộ của mình.

Cảm ơn bạn trước.


có lẽ điều này có thể cung cấp cho bạn một tùy chọn stackoverflow.com/a/27792823/2406499
user145422

Câu trả lời:


12

Hãy thử sử dụng gcloud compute scp:

gcloud compute scp 
  [[USER@]INSTANCE:]SRC [[[USER@]INSTANCE:]SRC …]
  [[USER@]INSTANCE:]DEST
  [--compress] [--dry-run] [--force-key-file-overwrite]
  [--plain] [--port=PORT] [--recurse] [--scp-flag=SCP_FLAG]
  [--ssh-key-file=SSH_KEY_FILE]
  [--strict-host-key-checking=STRICT_HOST_KEY_CHECKING]
  [--zone=ZONE]
  [GCLOUD_WIDE_FLAG …]
  [-h]

ví dụ,

$ gcloud compute scp \
    my-instance-1:~/file-1 \
    my-instance-2:~/file-2 \
    ~/my-destination \
    --zone us-central2-a

Để thay thế, bạn cũng có thể sử dụng (không gcloud) sftphoặc scp; xem câu trả lời SO này để biết chi tiết về các đối số dòng lệnh bạn cần chỉ định, mà tôi sẽ trích dẫn ở đây để đơn giản:

sftp -o IdentityFile ~/.ssh/google_compute_engine user@host

Để sử dụng bất kỳ công cụ SFTP nào khác, tương tự cung cấp cho nó đường dẫn đến khóa riêng SSH và nó sẽ có thể kết nối với thể hiện. Tuy nhiên, trong trường hợp gcloud, nó có thể tự giải quyết tên máy chủ cho IP công cộng; đối với tất cả các công cụ khác, bạn sẽ cần tìm IP theo cách thủ công và chỉ định địa chỉ IP trực tiếp.


Tuyệt vời. Có cách nào để xóa các tập tin và sau đó xóa chúng khi chúng được sao chép?
chàng trai

@MCllorf - Tôi không chắc chắn tôi làm theo những gì bạn đang hỏi, bạn có thể vui lòng mở một câu hỏi khác với nhiều chi tiết hơn và trường hợp sử dụng hoặc mục tiêu bạn đang cố gắng đạt được không?
Misha Brukman

1
Xin lỗi tôi chắc chắn có thể phrased tốt hơn. Mục đích của tôi là sao chép tập tin sang một nơi khác và sau đó xóa bản gốc để nó không chiếm dung lượng không cần thiết. Tôi đã tìm ra nó mặc dù :) cảm ơn!
chàng trai

5

( gcloud compute copy-fileshiện không được chấp nhận, do đó gcloud compute scpđược khuyến nghị)

Sử dụng gcloud compute scpnhư sau:

gcloud compute scp [[USER@]INSTANCE:]SRC [[[USER@]INSTANCE:]SRC …]
[[USER@]INSTANCE:]DEST [--compress] [--dry-run] [--force-key-file-overwrite]
[--plain] [--port=PORT] [--recurse] [--scp-flag=SCP_FLAG] 
[--ssh-key-file=SSH_KEY_FILE] [--strict-host-key-checking=STRICT_HOST_KEY_CHECKING]
[--zone=ZONE] [GCLOUD_WIDE_FLAG …]

Ví dụ:

$ gcloud compute scp example-instance:~/REMOTE-DIR ~/LOCAL-DIR \
      --zone us-central1-a

Nếu vùng đã được đặt (sử dụng gcloud config set compute/zone ZONEhoặc thông qua biến môi trường, thì bạn không cần chỉ định vùng ở trên)

Ngoài ra, gcloud compute scpkhông sao chép đệ quy theo mặc định. Chúng ta cần sử dụng --recursecờ cho nó.

Xem tài liệu chi tiết tại đây .


2

Có lẽ bạn có thể sử dụng SFTP (google đã sử dụng Filezilla trong tài liệu của họ). Tôi không quá tốt với CLI và do đó thích các tùy chọn GUI Filezilla và các cung cấp khác.

Dưới đây là các bước ở mức cao:

  1. Cài đặt và chạy SDK gcloud ( $ gcloud init)
  2. Tạo khóa SSH ( $ gcloud compute ssh)
  3. Thiết lập máy khách FTP (cài đặt và thêm tệp chính)
  4. Kết nối với VM bằng ứng dụng khách SFTP

Và đây là tài liệu từ Google.

Ngoài ra, tôi đã ghi lại điều này, nó có thể hữu ích:

https://www.youtube.com/watch?v=9ssfE6ODpak


0

Điều này làm việc cho tôi

Cú pháp:

gcloud compute scp <UserName>@<ServerName/InstanceName>:~/<FilePathFromInstance> <LocalSystemFilePath>

0

Nếu bạn kết nối với phiên bản qua thiết bị đầu cuối dựa trên web mà Google Cloud Console cung cấp, bạn có thể nhấp vào cog ở góc trên bên phải và chọn "Tải xuống tệp", sau đó nhập đường dẫn đầy đủ đến tệp và nó sẽ được tải xuống qua trình duyệt . Điều tương tự cũng xảy ra với việc tải lên.

nhập mô tả hình ảnh ở đây

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.