Saya perlu mentransfer file dari satu server CentOS ke yang lain. Akan mentransfer file 5MB setiap 10 menit. Tidak perlu enkripsi.
Apa yang mudah adalah untuk transfer file yang cepat?
Apakah ada sesuatu yang lebih sederhana daripada ftp?
Terima kasih!
linux
file-transfer
Alex L
sumber
sumber
Jawaban:
rsync
Saya akan menggunakan rsync sebelum saya menggunakan ftp atau tftp.
Lebih banyak opsi dan (menurut pengalaman saya) transfer yang lebih andal.
sumber
tar over ssh tidak apa-apa, tetapi tar over TCP via netcat adalah tentang biaya rendah yang Anda bisa dapatkan! Jika ini hanya satu kali, coba ini:
Di penerima:
Di pengirim:
Jika ini adalah sesuatu yang akan Anda lakukan secara teratur, saya mungkin akan menggunakan rsync.
sumber
Dua orang telah menyebutkan tar lebih dari ssh, tetapi tidak mengatakan bagaimana melakukannya. Sebagai catatan, prosedur dasar adalah menjalankan:
Atau, jika Anda ingin memulai transfer dari sisi penerima:
Keuntungan melakukannya dengan cara ini daripada solusi netcat Evan adalah bahwa semuanya dapat dimulai dari satu komputer; Anda tidak perlu mengoordinasikan dua pemanggilan netcat. Jika Anda ingin ini berjalan secara otomatis, Anda dapat mengatur kunci ssh yang memungkinkan Anda membuat koneksi tanpa frasa sandi, dan menggunakan kunci itu untuk koneksi ini.
ssh memiliki opsi -C untuk mengompresi aliran datanya, atau Anda dapat menggunakan kemampuan kompresi bawaan GNU tar:
Rsync adalah pilihan lain, tetapi setelan kuatnya adalah memperbarui file yang sudah ada pada sisi penerima. Saya menemukan ini lebih lambat daripada scp atau tar / ssh ketika menggunakannya untuk mentransfer file yang belum ada di ujung lainnya.
sumber
Saya akan menggunakan
scp
atautar
lebihssh
, jujur. Enkripsi memang memperlambat segalanya, tetapi kemudahan pengaturan dan penggunaan, keandalan, dan (secara subjektif, tentu saja) keakraban membuat saya bersedia menerima pukulan, kecuali saya benar - benar membutuhkan kecepatan itu.Anda dapat mempercepat transfer ssh dengan mengatakannya untuk menggunakan cipher yang lebih cepat dari standarnya. Standarnya biasanya
3des
dan biasanya bisa Anda lakukan-c des
, sehingga jelas akan lebih cepat, dan-c blowfish
direpresentasikan secepat juga, meskipun saya belum mengujinya dengan tepat.(Kembali pada zaman SSHv1, Anda bisa sering melakukannya
-c none
, tapi saya kira seseorang memutuskan itu adalah juju yang buruk.)sumber
Jika Anda harus melalui scp / ssh, percobaan saya menunjukkan bahwa cipher tercepat yang diaktifkan secara default hari ini adalah RC4. Anda menentukan cipher melalui ' -c arcfour ' di perintah ssh / scp Anda:
untuk salinan awal:
scp -c arcfour -r foo/ desthost:/destdir
untuk pembaruan:
rsync -e 'ssh -c arcfour' -r foo/ desthost:/destdir
sumber
Rsync adalah cara yang baik untuk dilakukan karena jika Anda menemukan diri Anda mentransfer file yang sama lebih dari satu kali, itu akan mempercepat penyalinan, seperti yang ditunjukkan dengan kutipan ini dari halaman manual.
sumber
FTP cukup sederhana, tetapi cara yang bahkan lebih sederhana adalah dengan membuat share NFS di satu mesin dan memasangnya di yang lain. Kemudian menyalin file akan terdiri dari melakukan cp dari satu direktori ke direktori lain.
sumber
Jika Anda ingin kecepatan, Anda bisa menggunakan netcat dan tar. Ini akan lebih cepat daripada ssh, rsync, atau scp di jaringan lokal di mana enkripsi tidak menjadi masalah. Google "netcat tar".
DestinationServer
SourceServer
Ini jelas mengharuskan netcat untuk diinstal. Google "netcat tar" untuk info lebih lanjut.
sumber
Saya percaya bahwa Anda sudah menyelesaikan masalah Anda tetapi jika ssh Anda bekerja pada port lain (bukan pada port standar 22) Anda dapat menggunakan ini
Catatan: - ganti XXXXX dengan nomor port Anda - ganti 192.16.1.2 dengan IP server jarak jauh yang benar
sumber
https://www.npmjs.org/package/gist-cli
https://github.com/settings/applications#personal-access-tokens
atau yang ini:
https://github.com/defunkt/gist
Gunakan perintah inti untuk mengunggah dan mengunduh
sumber