GNU/Linux >> Belajar Linux >  >> Linux

Cara menyalin banyak file secara bersamaan menggunakan scp

Anda dapat menggunakan tugas latar belakang dengan perintah tunggu. Perintah Tunggu memastikan bahwa semua tugas latar belakang diselesaikan sebelum memproses baris berikutnya. yaitu gema akan dijalankan setelah scp untuk ketiga node selesai.

#!/bin/bash
scp -i anuruddha.pem myfile1.tar [email protected]:/tmp &
scp -i anuruddha.pem myfile2.tar [email protected]:/tmp &
scp -i anuruddha.pem myfile.tar [email protected]:/tmp &

wait
echo "SCP completed"

SSH dapat melakukan apa yang disebut "multiplexing" - lebih banyak koneksi melalui satu (ke satu server). Ini bisa menjadi salah satu cara untuk membeli apa yang Anda inginkan. Cari kata kunci seperti "ControlMaster"

Cara kedua menggunakan lebih banyak koneksi, lalu kirim setiap pekerjaan di latar belakang:

for file in file1 file2 file3 ; do 
     scp $file server:/tmp/ & 
done

Tapi, ini jawaban untuk pertanyaan Anda - "Bagaimana cara menyalin banyak file secara bersamaan". Untuk mempercepat, Anda dapat menggunakan enkripsi yang lebih lemah (rc4 dll) dan juga jangan lupa, bahwa hambatannya adalah hard drive Anda - karena SCP tidak secara implisit membatasi kecepatan transfer.

Hal terakhir adalah menggunakan rsync - dalam beberapa kasus, ini bisa jauh lebih cepat daripada scp...


Saya tidak yakin apakah ini membantu Anda, tetapi saya biasanya mengarsipkan file (kompresi tidak diperlukan. cukup pengarsipan saja) di sumbernya, unduh, ekstrak. Ini akan mempercepat proses secara signifikan. Sebelum pengarsipan, diperlukan> 8 jam untuk mengunduh 1GBSetelah pengarsipan, perlu <8 menit untuk melakukan hal yang sama


Linux
  1. Cara Membuat Zip Banyak File di Linux

  2. Cara Mentransfer File dengan Aman Menggunakan SCP

  3. Cara Mengganti Nama Banyak File Bersama di Linux Menggunakan 3 Metode

  1. Cara menyalin direktori secara rekursif menggunakan rsync sambil mengecualikan file tertentu

  2. Cara menyalin file ke banyak direktori menggunakan perintah gnu cp

  3. Bagaimana saya bisa menyalin banyak file melalui scp dalam satu perintah?

  1. Cara menyalin file dengan aman antara host Linux menggunakan SCP dan SFTP

  2. Cara Mentransfer File Antar Server di Linux menggunakan SCP dan FTP

  3. Bagaimana cara menyalin file tanpa menggunakan scp di dalam sesi ssh?