DEV Community

Cover image for Cara Backup Server Dengan rsync
BelajarDroid
BelajarDroid

Posted on

Cara Backup Server Dengan rsync

Jika tidak membuat cadangan server secara teratur, bisa dibilang hampir tidak memiliki cara untuk memulihkan file yang hilang. Akibatnya, salinan cadangan harus selalu memainkan peran penting dalam perencanaan server.

Tool atau protokol sinkronisasi rsync adalah salah satu dari banyak solusi pencadangan yang tersedia.

Apa itu rsync, dan untuk apa digunakan?

Nama rsync mengacu pada protokol jaringan untuk sinkronisasi file dikembangkan pada tahun 1996 oleh Andrew Tridgell, yang mengepalai proyek SAMBA. Selain protokol, ada tool dengan nama yang sama yang memfasilitasi komunikasi melalui protokol.

Aplikasi berlisensi GPL ini dapat digunakan secara gratis dan mentransfer file dari direktori sumber ke direktori target yang diperlukan baik secara lokal atau melalui jaringan publik. Ukuran file dan waktu pembuatan semua file di folder sumber dan target dibandingkan selama sinkronisasi, sehingga setiap proses sinkronisasi hanya menyalin file yang diubah.

Untuk alasan ini, proses pencadangan rsync disebut sebagai varian cadangan tambahan, yang menawarkan keuntungan bahwa pencadangan cepat dan menggunakan sedikit ruang penyimpanan.

rsync tersedia untuk semua sistem operasi UNIX standar seperti OS/2, Linux atau macOS. Dengan menggunakan API Cygwin, rsync juga dapat digunakan pada Microsoft Windows.

Skenario penggunaan umum untuk rsync termasuk: backup data serta sinkronisasi data di perusahaan dengan berbagai lokasi dan koneksi data yang lemah. Secara khusus, fungsi terakhir hampir secara eksklusif dilakukan oleh teknologi cloud modern saat ini oleh sebab itu koneksi data yang lemah menjadi semakin jarang terjadi.

Ikhtisar opsi rsync yang paling penting

Fitur luar biasa dari cadangan rsync adalah efisiensinya. Pendekatan inkremental meminimalkan pemanfaatan jaringan, yang merupakan keuntungan untuk file besar khususnya – terlepas dari apakah perubahan pada file tersebut besar atau minimal.

Sebagai alat baris perintah, rsync dikendalikan melalui terminal secara default – atau melalui command Prompt, jika menggunakan rsync pada perangkat Windows. Entri memiliki sintaks berikut:

rsync -(-)Options Source path Target path

Sebagai jalur sumber dan target, Anda menentukan masing-masing mulai direktori dan direktori di mana ingin rsync simpan salinan cadangan. Anda dapat menentukan pengaturan individual untuk cadangan rsync menggunakan Pilihan, yang disingkat menjadi huruf atau ditulis.

Tabel di bawah ini kami rangkum dari Laptopbeep merupakan parameter penting yang dapat digabungkan satu sama lain:

pilihan fungsi
-r, --recursive rsync backup memperhitungkan semua sub-direktori
-u, --update Instruksi untuk melewati file yang lebih baru di direktori target daripada di direktori sumber
-c, --checksum Membedakan file sumber dan target berdasarkan checksum
-l, --links Tautan simbolis disalin seperti itu (dan bukan sebagai file)
-p, --perms Izin file dipertahankan
-g, --group Izin file grup dipertahankan
-t, --times Stempel waktu file (perubahan terakhir) dipertahankan
-o, --owner Pemilik file dipertahankan (hanya jika administrator)
-D, --devices Data perangkat disimpan
-z, --compress Kompresi otomatis dari file yang ditransfer
--compress-level=NUM Menentukan tingkat kompresi; nilai ("NUM") antara 0 (tanpa kompresi) dan 9 (kompresi maksimum) dimungkinkan
-v, –verbose Detail yang lebih komprehensif selama proses pencadangan
-q, --quiet Sembunyikan semua detail pada proses pencadangan (kecuali pesan kesalahan)
-a, --archive Mode arsip digunakan sebagai mode standar dan identik dengan kombinasi opsi -rlptgoD
-n, --dry-run Uji coba di mana tidak ada perubahan aktual yang dibuat
-h, --help Menu bantu (hanya dapat digunakan tanpa menunjukkan direktori sumber dan target atau argumen lain)
--bwlimit=KBPS Batasi bandwidth (kilobyte per detik); misalnya –bwlimit=30 (batas 30 kbit/s)
--exclude=SAMPLE Kecualikan pola dari sinkronisasi; misalnya –tidak termasuk folder sampel (folder "Folder sampel" tidak disinkronkan.)
--delete Hapus semua file yang ada di direktori target tetapi tidak di direktori sumber
--progress Tunjukkan durasi pencadangan rsync dan kecepatan transfer
--list-only Daftar file alih-alih cadangan
--stats Laporan komprehensif tentang data yang ditransfer (jumlah, ukuran)
--max-size=SIZE Tentukan ukuran file maksimum; misalnya –max-size=10MB (hanya file dengan ukuran hingga 10 MB yang ditransfer.)
--ignore-errors Cegah pembatalan proses pencadangan jika terjadi kesalahan

Menyiapkan cadangan rsync di server Linux

Untuk menggunakan rsync di sistem operasi Linux, instal protokol dalam paket dengan nama yang sama dan buat cadangan menggunakan perintah Terminal. Atau bisa juga menggunakan aplikasi seperti Back In Time, rsnapshot (untuk pencadangan otomatis reguler) atau Unison untuk mengontrol proses pencadangan melalui antarmuka pengguna grafis.

Dalam contoh di bawah ini menggunakan Ubuntu, kami menunjukkan kepada Anda langkah-langkah terpenting untuk menyiapkan proses pencadangan menggunakan rsync:

rsync diinstal secara default di bawah Ubuntu. Jika ini bukan masalahnya, instal menggunakan perintah berikut.

sudo apt-get install rsync

Saat rsync diinstal, gunakan perintah Terminal yang diperlukan untuk menentukan direktori sumber dan target dan opsi cadangan. Misalnya, Anda dapat menjalankan mode standar (“Arsip”) sebagai berikut:

rsync -a Source directory Target directory

5 skenario pencadangan rsync yang populer

Setelah Anda mengetahui perintah dasar, rsync adalah alat yang luar biasa untuk menyalin file serta membuat cadangan. Anda dapat menguji dan menerapkan pengaturan perintah individu atau penggunaan kombinasi terbukti dari parameter rsync yang tersedia. Misalnya, skenario pencadangan rsync berikut sangat populer:

Pencadangan standar dengan mode pengarsipan

Mode pengarsipan, yang menyalin semua file dari direktori sumber ke direktori target (termasuk semua sub-direktori) dan menyimpan semua otorisasi, stempel waktu, dan data perangkat, adalah solusi ideal dan paling sederhana dalam banyak kasus karena menggabungkan berbagai opsi dalam satu parameter.

Jika Anda menggabungkan mode dengan parameter –v, Anda juga akan menerima informasi status yang komprehensif selama proses pencadangan.

rsync -av Source directory Target directory

Salinan identik dari direktori sumber

rsync tidak hanya dapat mentransfer file dari A ke B, tetapi juga dapat membuat salinan identik folder atau seluruh direktori. Setelah pengarsipan standar, file yang ada di folder target sebelum rsync, tetapi tidak ada di folder sumber, akan dihapus.

rsync -av --delete Source directory Target directory

Cadangan tidak termasuk file dengan format tertentu

Jika ingin menjalankan pencadangan tidak termasuk file dalam format tertentu, Anda dapat menggunakan -Mengecualikan perintah untuk melakukannya. Parameter memungkinkan untuk menentukan pola karakter individu, yang digunakan rsync sebagai indikator untuk mengabaikan file.

Kode contoh berikut tidak termasuk file teks . Txt.

rsync -av --exclude'*.txt' Source directory Target directory

Mencadangkan file dengan ukuran minimum atau maksimum yang ditentukan

Jika tidak menginginkan pola karakter tertentu, tetapi ukuran file pengaruh pengecualian file tertentu dalam pencadangan rsync, Anda dapat menggunakan parameter –max-size dan –min-size.

Jika menggunakan perintah berikut, hanya file minimal 10 MB dan maksimal 100 MB yang disalin:

rsync -av --min-size=10MB --max-size=100MB Source directory Target directory

Cadangan termasuk konversi format karakter

Kita mungkin harus mengonversi file menjadi file lain format karakter di direktori target – misalnya Jika ingin mentransfer data dari Mac ke server Linux. Sebagai standar, perangkat Apple menggunakan UTF8-MAC, yang tidak tersedia di sistem Linux dan akan menyebabkan masalah dengan karakter khusus serta umlautss.

Opsi –iconv memungkinkan kita dengan mudah menyesuaikan pengkodean karakter sebagai bagian dari proses pencadangan rsync (dari UTF8-MAC ke UTF8 dalam contoh):

rsync -av --iconv=UTF8-MAC,UTF8 Source directory Target directory

Top comments (0)