GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mentransfer File dengan Rsync melalui SSH

Pendahuluan

Rsync adalah singkatan dari "Sinkronisasi Jarak Jauh." rsync perintah memungkinkan Anda mentransfer dan menyinkronkan data antara mesin dan direktori yang berbeda. Dengan menggunakan protokol Secure Shell (SSH), Anda dapat menyalin file Anda dengan aman ke lokasi lain.

Alat rsync memiliki banyak manfaat jika dibandingkan dengan metode lain untuk menyalin file. Ini menggunakan kompresi dan dekompresi saat mengirim dan menerima file. Alat ini hanya mentransfer file baru atau yang diperbarui yang menghemat bandwidth dan memberikan waktu transfer yang lebih cepat.

Ikuti panduan ini untuk mempelajari cara menggunakan rsync melalui SSH untuk mentransfer atau menyalin file.

Prasyarat

  • Pengguna dengan sudo atau root hak istimewa
  • Akses SSH ke server melalui baris perintah/jendela terminal
  • Rsync diinstal pada mesin lokal dan tujuan

Verifikasi Instalasi Rsync

Distribusi Linux terbaru memiliki rsync secara default. Untuk memverifikasi sistem Anda telah menginstal rsync, jalankan perintah instalasi.

Untuk Debian dan Ubuntu mesin, gunakan apt-get :

sudo apt-get install rsync

Jika rsync sudah terinstal, output menunjukkan versi alat saat ini.

Pada berbasis RPM mesin, seperti CentOS, gunakan:

sudo yum install rsync

Transfer File dengan Rsync melalui SSH

Sebelum Anda dapat mulai mentransfer file dan direktori dengan rsync melalui SSH, pastikan Anda dapat menggunakan SSH untuk terhubung ke server jauh. Setelah diverifikasi, Anda dapat mulai mencadangkan data Anda. Pastikan sistem tujuan Anda memiliki ruang penyimpanan yang cukup.

Sintaks untuk menyalin file ke server jauh melalui SSH dengan rsync perintahnya adalah:

rsync OPTION SourceDirectory_or_filePath [email protected]_or_name:Target

Contoh Perintah rsync

Ikuti panduan selanjutnya untuk melihat contoh kasus penggunaan rsync yang paling umum .

Mentransfer File Tertentu dengan Rsync

Untuk mentransfer satu file ke mesin jarak jauh, masukkan jalur lengkap file sumber. Misalnya:

rsync ~/Dir1/source.pdf [email protected]:~/Desktop/test

Pastikan Anda menggunakan tanda kutip untuk file yang berisi spasi pada namanya. Misalnya:

rsync ~/Desktop/Dir1/"source pdf sample.pdf" [email protected]:~/Desktop/test

Mentransfer Isi Direktori dengan Rsync

Ada beberapa opsi saat menyinkronkan konten direktori dengan rsync melalui SSH.
Untuk mentransfer semua file dari direktori sumber ke target pada host jarak jauh, masukkan:

rsync ~/SourceDirectory/* [email protected]:~/Destination

Tanda bintang (*) menginstruksikan alat untuk memasukkan semua file dalam direktori sumber. Subdirektori bukan ditransfer .

Misalnya:

Outputnya menunjukkan direktori yang dilewati rsync selama transfer.

Untuk memasukkan semua subdirektori dari direktori sumber, gunakan -r (rekursif) atau -a (arsip) pilihan. -a bendera adalah apa yang kami sarankan. Opsi ini menyinkronkan secara rekursif dan menyimpan semua izin dan pengaturan file. Kali ini jangan gunakan tanda bintang di jalur sumber.

rsync -a ~/Desktop/Dir1/ [email protected]:~/Desktop/test

Saat Anda menjalankan perintah dalam format ini, rsync mentransfer semua file dan subdirektori dari direktori sumber ke lokasi target. Dari contoh kami di atas, pengujian folder akan memiliki konten Dir1 sumber saat transfer selesai.

Untuk menghilangkan file agar tidak disalin, lihat panduan kami tentang cara mengecualikan file dan direktori dalam transfer data menggunakan perintah rsync.

Periksa Kemajuan Transfer File Rsync

Untuk memeriksa status transfer rsync, gunakan -P pilihan. Opsi ini menampilkan waktu transfer, serta nama file dan direktori yang disinkronkan.

Jika ada masalah dengan koneksi Anda dan sinkronisasi terputus, -P melanjutkan transfer Anda.

Jalankan perintah dalam format ini untuk menyinkronkan secara rekursif dan memeriksa status transfer:

rsync -aP ~/SourceDirectory/ [email protected]:~/Destination

Misalnya:

Jika Anda menjalankan kembali perintah yang sama saat tidak ada perubahan di direktori sumber, transfer tidak akan terjadi. Alasannya adalah rsync hanya mentransfer modifikasi pada file dan file baru. Dalam hal ini, output hanya menampilkan baris berikut:

Ketika ada perubahan bahkan dalam satu file sumber, rsync mendeteksinya dan menyinkronkannya dengan target.

Kami membuat perubahan dalam satu file dan menjalankan kembali perintah yang sama:

Keluaran menunjukkan sampel sumber2 file telah ditransfer sejak rsync mendeteksi bahwa kami memodifikasi file.


Ubuntu
  1. Cara Mengunduh dan Mengunggah File melalui SSH

  2. Bagaimana Cara Selektif Membungkam Rsync?

  3. Bagaimana Menghubungkan Nexus 7 Untuk Mentransfer File??

  1. Cadangkan file Anda dengan rsync

  2. Cara Mentransfer File di Linux dengan SCP dan Rsync

  3. Cara membedakan direktori melalui ssh

  1. Cara Setup Rsync dengan SSH di UNIX/Linux (rsync tanpa password)

  2. Gunakan perangkat melalui SSH?

  3. Bagaimana cara Setup Rsync tanpa kata sandi dengan SSH di UNIX / Linux?