Pada artikel sebelumnya kami mengulas cara mencadangkan host unix lokal menggunakan utilitas rsnapshot.
Dalam artikel ini, mari kita tinjau cara mencadangkan host Linux jarak jauh menggunakan utilitas ini.
1. Siapkan Otentikasi Berbasis Kunci
Seperti yang telah kami jelaskan sebelumnya, atur otentikasi berbasis kunci seperti yang dijelaskan di artikel ssh-keygen dan ssh-copy-id atau artikel openSSH.
[root@local-host]# ssh-keygen [root@local-host]# ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host
2. Verifikasi kata sandi, kurangi login antar server
Login ke remote-host dari local-host tanpa memasukkan password.
[root@local-host]# ssh remote-host Last login: Sun Mar 15 16:45:40 2009 from local-host [root@remote-host]#
3. Konfigurasikan rsnapshot dan tentukan Direktori Cadangan Host Jarak Jauh
Tentukan direktori cadangan tujuan remote-host Anda di /etc/rsnapshot.conf seperti yang ditunjukkan di bawah ini. Dalam contoh ini,
- root@remote-host:/etc – Direktori sumber pada host jarak jauh yang harus dicadangkan. yaitu direktori tujuan pencadangan jarak jauh.
- pencadangan host jarak jauh/ – direktori tujuan tempat cadangan host jarak jauh akan disimpan. Harap perhatikan bahwa direktori ini akan dibuat di bawah direktori local-host /.snapshots/{internal.n}/ seperti yang ditunjukkan pada langkah terakhir.
# vi /etc/rsnapshot.conf backup root@remote-host:/etc/ remote-host-backup/ exclude=mtab,exclude=core
4. Uji Konfigurasi rsnapshot
Lakukan uji konfigurasi untuk memastikan rsnapshot diatur dengan benar dan siap untuk melakukan pencadangan rsync Linux.
# rsnapshot configtest Syntax OK
5. Tambahkan Entri Crontab untuk rsnapshot
Setelah Anda memverifikasi bahwa konfigurasi cadangan rsync per jam dan harian telah diatur dengan benar di utilitas rsnapshot cwrsync, sekarang saatnya untuk mengatur anak anjing ini di crontab seperti yang ditunjukkan di bawah ini.
# crontab -e 0 */4 * * * /usr/local/bin/rsnapshot hourly 30 23 * * * /usr/local/bin/rsnapshot daily
Lihat artikel contoh crontab Linux untuk memahami cara menyiapkan dan mengonfigurasi crontab.
6. Uji pencadangan host jarak jauh secara manual sekali
[root@local-host]# /usr/local/bin/rsnapshot hourly [root@local-host]# ls -l /.snapshots/hourly.0/ total 8 drwxr-xr-x 3 root root 4096 Jul 22 04:19 remote-host-backup drwxr-xr-x 3 root root 4096 Jul 13 05:07 localhost [root@local-host]# ls -l /.snapshots/hourly.0/remote-host-backup/ total 4 drwxr-xr-x 93 root root 4096 Jul 22 03:36 etc
Kiat Pemecahan Masalah
Masalah :rsnapshot gagal dengan ERROR:/usr/bin/rsync dikembalikan 20 seperti yang ditunjukkan di bawah ini.
[root@local-host]# /usr/local/bin/rsnapshot hourly rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at rsync.c(260) [receiver=2.6.8] ---------------------------------------------------------------------------- rsnapshot encountered an error! The program was invoked with these options: /usr/local/bin/rsnapshot hourly ---------------------------------------------------------------------------- ERROR: /usr/bin/rsync returned 20 while processing [email protected]:/etc/
Solusi: Ini biasanya terjadi ketika pengguna yang melakukan rsnapshot (rsync) tidak memiliki akses ke direktori jarak jauh yang Anda coba buat cadangannya. Pastikan direktori cadangan host jarak jauh memiliki izin yang sesuai untuk pengguna yang mencoba menjalankan rsnapshot.