Rdiff -Backup - Alat cadangan tambahan jarak jauh untuk Linux

Rdiff -Backup - Alat cadangan tambahan jarak jauh untuk Linux

Rdiff-Backup adalah skrip Python yang kuat dan mudah digunakan untuk cadangan tambahan lokal/jarak jauh, yang bekerja pada sistem operasi POSIX apa pun seperti Linux, Mac OS X atau Cygwin. Ini menyatukan fitur luar biasa dari cermin dan cadangan tambahan.

Secara signifikan, ini mempertahankan subdirektori, file dev, tautan keras, dan atribut file kritis seperti izin, kepemilikan UID/GID, waktu modifikasi, atribut yang diperluas, ACL, dan garpu sumber daya. Ini dapat bekerja dalam mode efisien bandwidth di atas pipa, dengan cara yang sama seperti alat cadangan RSYNC yang populer.

Rdiff-Backup Cadangkan satu direktori tunggal ke yang lain melalui jaringan menggunakan SSH, menyiratkan bahwa transfer data dienkripsi sehingga aman. Direktori target (pada sistem jarak jauh) berakhir dengan salinan yang tepat dari direktori sumber, namun perbedaan terbalik ekstra disimpan dalam subdirektori khusus di direktori target, memungkinkan untuk memulihkan file yang hilang beberapa waktu lalu.

Dependensi

Untuk menggunakan RDIFF-Backup di Linux, Anda akan memerlukan paket-paket berikut yang diinstal pada sistem Anda:

  • Python v2.2 atau lebih baru
  • Librync v0.9.7 atau lebih baru
  • Modul pyybacl dan pyxattr python adalah opsional tetapi diperlukan untuk POSIX Access Control List (ACL) dan masing -masing dukungan atribut yang diperluas.
  • rdiff-backup-statistics membutuhkan python v2.4 atau lebih baru.

Cara menginstal rdiff-backup di linux

Penting: Jika Anda beroperasi melalui jaringan, Anda harus menginstal kedua sistem rdiff, lebih disukai kedua instalasi RDIFF-Backup harus menjadi versi yang sama persis.

Script sudah ada di repositori resmi distribusi Linux mainstream, cukup jalankan perintah di bawah ini untuk menginstal rdiff-backup serta ketergantungannya:

Intall Rdiff-Backup di Ubuntu

Untuk memasang Rdiff-Backup pada Fokus ubuntu atau Debian Bullseye atau lebih baru (memiliki 2.0).

$ sudo apt-get update $ sudo apt-get install libssync-dev rdiff-backup 

Untuk memasang Rdiff-Backup Di Ubuntu Backports untuk versi yang lebih lama (membutuhkan 2 yang di -backport.0).

$ sudo add-apap-repository PPA: rdiff-backup/rdiff-back-backports $ sudo apt update $ sudo apt instal rdiff-backu 

Di CentOS/RHEL 8

Untuk menginstal rdiff-backup di CentOS dan RHEL 8 (dari COPR).

$ sudo yum menginstal yum-plugin-copr epel-release $ sudo yum copr mengaktifkan frankcrawford/rdiff-backup $ sudo yum instal rdiff-backup 

Di CentOS/RHEL 7

Untuk menginstal Rdiff-Backup di Centos dan RHEL 7 (dari COPR).

$ sudo yum menginstal yum-plugin-copr epel-release $ sudo yum copr mengaktifkan frankcrawford/rdiff-backup $ sudo yum instal rdiff-backup 

Di CentOS/RHEL 6

$ sudo yum menginstal centos-release-scl $ sudo yum menginstal rh-python36 gcc libacl-devel $ scl mengaktifkan rh-python36 bash $ sudo pip menginstal rdiff-backup pyxattr pylibacl $ echo 'exec scl enable rh-python36-rdiff-backup $ echo' echo scl enable rh-python36-rdiff-backup "[Email Dilindungi]" '| sudo tee/usr/bin/rdiff-backup $ sudo chmod +x/usr/bin/rdiff-backup 

Di Fedora

Untuk menginstal RDIFF-Backup di Fedora 32+.

$ sudo dnf menginstal rdiff-backup 

Cara menggunakan rdiff-backup di linux

Seperti yang saya sebutkan sebelumnya, Rdiff-Backup Menggunakan SSH untuk terhubung ke mesin jarak jauh di jaringan Anda, dan otentikasi default di SSH adalah metode nama pengguna/kata sandi, yang biasanya membutuhkan interaksi manusia.

Namun, untuk mengotomatiskan tugas -tugas seperti cadangan otomatis dengan skrip dan seterusnya, Anda perlu mengonfigurasi login tanpa kata sandi SSH menggunakan tombol SSH, karena tombol SSH meningkatkan kepercayaan antara dua server Linux untuk sinkronisasi file yang mudah atau transfer transfer.

Setelah Anda mengatur login tanpa kata sandi SSH, Anda dapat mulai menggunakan skrip dengan contoh -contoh berikut.

File cadangan ke partisi yang berbeda

Contoh di bawah ini akan membuat cadangan /dll direktori dalam a Cadangan Direktori di partisi lain:

$ sudo rdiff-backup/etc/media/aaronkilik/data/backup/mint_etc.cadangan 
File cadangan ke partisi yang berbeda

Untuk mengecualikan direktori tertentu dan juga subdirektori, Anda dapat menggunakan --mengecualikan Opsi sebagai berikut:

$ sudo rdiff-backup-exclude/etc/cockpit-exclude/etc/bluetooth/media/aaronkilik/data/cadangan/mint_etc.cadangan 

Kami dapat memasukkan semua file perangkat, file FIFO, file soket, dan tautan simbolis dengan --termasuk file khusus Opsi seperti di bawah ini:

$ sudo rdiff-backup --include-special-files-exclude/etc/cockpit/media/aaronkilik/data/backup/mint_etc.cadangan 

Ada dua bendera penting lainnya yang dapat kami tetapkan untuk pemilihan file; --Ukuran Max-File ukuran yang tidak termasuk file yang lebih besar dari ukuran yang diberikan dalam byte dan --ukuran mil min Ukuran yang tidak termasuk file yang lebih kecil dari ukuran yang diberikan dalam byte:

$ sudo rdiff-backup--max-fily-ukuran 5m-termasuk spesies-spesies-exclude/etc/cockpit/media/aaronkilik/data/backup/mint_etc.cadangan 

Cadangan file jarak jauh di server linux lokal

Untuk tujuan bagian ini, kami akan menggunakan:

Server jarak jauh (tecmint): 192.168.56.102 Server Cadangan Lokal (Cadangan): 192.168.56.10 

Seperti yang kami nyatakan sebelumnya, Anda harus menginstal versi yang sama Rdiff-Backup Di kedua mesin, sekarang cobalah untuk memeriksa versi pada kedua mesin sebagai berikut:

$ rdiff -backup -v 
Periksa versi rdiff di server

Di server cadangan, buat direktori yang akan menyimpan file cadangan seperti:

# mkdir -p /cadangan 

Sekarang dari server cadangan, jalankan perintah berikut untuk membuat cadangan direktori /var/log/ Dan /akar dari server Linux jarak jauh 192.168.56.102 di dalam /cadangan:

# rdiff-backup [email dilindungi] ::/var/log//cadangan/192.168.56.102_logs.Cadangan # rdiff-backup [email dilindungi] ::/root//cadangan/192.168.56.102_rootfiles.cadangan 

Tangkapan layar di bawah ini menunjukkan file root di server jarak jauh 192.168.56.102 dan file yang dicadok di server belakang 192.168.56.10:

Direktori Remote Cadangan di Server Lokal

Perhatikan Rdiff-Backup-Data Direktori dibuat di cadangan Direktori seperti yang terlihat di tangkapan layar, ini berisi data vital mengenai proses cadangan dan file tambahan.

Rdiff -Backup - File Proses Cadangan

Sekarang, di server 192.168.56.102, File tambahan telah ditambahkan ke direktori root seperti yang ditunjukkan di bawah ini:

Verifikasi direktori cadangan

Mari kita jalankan perintah cadangan sekali lagi untuk mendapatkan data yang diubah, kita bisa menggunakan -V [0-9] (Di mana angka menentukan level verbositas, default adalah 3 yang diam) untuk mengatur fitur verbositas:

# rdiff -backup -v4 [email dilindungi] ::/root//cadangan/192.168.56.102_rootfiles.cadangan 
Cadangan tambahan dengan ringkasan

Dan untuk mencantumkan nomor dan tanggal cadangan tambahan parsial yang terkandung dalam /cadangan/192.168.56.102_rootfiles.cadangan Direktori, kita dapat menjalankan:

# rdiff -backup -l /cadangan /192.168.56.102_rootfiles.cadangan/ 

Mengotomatiskan cadangan rdiff-back menggunakan cron

Kita dapat mencetak statistik ringkasan setelah cadangan yang berhasil dengan --statistik cetak. Namun, jika kami tidak mengatur opsi ini, info masih akan tersedia dari file statistik sesi. Baca lebih lanjut tentang opsi ini di bagian Statistik Halaman Manusia.

Dan -Remote-Schema Bendera memungkinkan kami untuk menentukan metode alternatif untuk menghubungkan ke komputer jarak jauh.

Sekarang, mari kita mulai dengan membuat a cadangan.SH skrip di server cadangan 192.168.56.10 sebagai berikut:

# CD ~/bin # VI Backup.SH 

Tambahkan baris berikut ke file skrip.

#!/bin/bash #Ini adalah skrip cadangan utilitas rdiff-backup #Backup perintah rdiff-backup --print-statistics--remote-schema 'ssh -c %s "sudo/usr/bin/rdiff-backup --sver-server- -Restrict-read-only/"'[email dilindungi] ::/var/log/cadangan/192.168.56.102_logs.Back #Checking rdiff-backup perintah keberhasilan/kesalahan status = $? Jika [$ Status != 0]; lalu #Prespend kesalahan pesan di ~/cadangan.file log echo "rdiff -backup kode keluar: $ status - perintah tidak berhasil" >> ~/cadangan.catatan; keluar 1; file cadangan tambahan #remove lebih tua dari satu bulan rdiff-backup--force --semove lebih tua-dari 1m /cadangan /192.168.56.102_logs.kembali 

Simpan file dan keluar, lalu jalankan perintah berikut untuk menambahkan skrip ke crontab di server cadangan 192.168.56.10:

# crontab -e 

Tambahkan baris ini untuk menjalankan skrip cadangan Anda setiap hari di tengah malam:

0 0 * * */root/bin/cadangan.sh> /dev /null 2> & 1 

Simpan crontab dan tutup, sekarang kami telah berhasil mengotomatiskan proses cadangan. Pastikan itu berfungsi seperti yang diharapkan.

Baca halaman RDIFF-Backup Man untuk info tambahan, opsi penggunaan yang lengkap dan contoh:

# Man Rdiff-Backup 

beranda rdiff-backup: http: // www.nongnu.org/rdiff-backup/

Itu saja untuk saat ini! Dalam tutorial ini, kami menunjukkan kepada Anda cara menginstal dan pada dasarnya menggunakan RDIFF-Backup, skrip Python yang mudah digunakan untuk cadangan tambahan lokal/jarak jauh di Linux. Bagikan pemikiran Anda dengan kami melalui bagian umpan balik di bawah ini.