Monday, December 21, 2020

rsync otomatis backup linux

 http://lpseacehselatankab.blogspot.com/2017/01/backup-data-server-utama-secara-otomatis.html

Setelah tutorial sebelumnya membahas tentang cara install dan konfigurasi SPSE di centos sebagai server backup, kini saya tuliskan lagi cara backup file hasil upload dan backup database dari server utama ke server backup secara otomatis menggunakan crontab dan rsync. Berikut step – stepnya
Asumsi ip server utama 192.168.0.2 dan ip server backup 192.168.0.3 dengan password root yang sama antara server utama dengan server backup
Langkah pertama kita lakukan backup file hasil upload dengan menggunakan ssh dan rsync

Login ke server utama menggunakan putty lalu generate key untuk ssh

# ssh-keygen   ==> ( ketika ada pertanyaan, cukup di enter saja tanpa mengisikan apapun)

Copykan public key hasil dari ssh-keygen ke server backup

# ssh-copy-id -i .ssh/id_rsa.pub  192.168.0.3

Lakukan sinkronisasi file antara server utama dengan server backup, semisal file tersebut berada di folder /home/file_upload di kedua server.

# rsync -avz -e ssh /home/file_upload/*  root@192.168.0.3:/home/file_upload/
Masukkan perintah rsync tersebut ke dalam crontab agar bisa di eksekusi sesuai yang kita jadwalkan misalnya setiap 10 menit sinkronisasi dijalankan.

# crontab -e

*/10 * * * *  rsync -avz -e ssh /home/file_upload/*  root@192.168.0.3:/home/file_upload/

Langkah kedua, backup database postgresql dengan membuat sebuah file bantuan agar secara otomatis membackup database dan menyimpan hasil backup di folder yang diinginkan dan juga secara otomatis menghapus file hasil backup yang sudah kadaluarsa. semisal kita batasi file backup sampai dengan 7 hari sehingga hanya terdapat 7 file saja. Berikut contoh filenya dengan diberi nama backupdata.sh

# nano /usr/local/bin/backupdata.sh

backupdata
# chmod 755 /usr/local/bin/backupdata.sh

Masukkan perintah menjalankan backupdata kedalam crontab setiap 10 menit dan lakukan sinkronisasi setiap 15 menit

# crontab -e

*/10 * * * *   /usr/local/bin/backupdata.sh
*/15 * * * *  rsync -avz -e ssh /home/backup/*  root@192.168.0.3:/home/backup/

Lalu restart crontab nya

# /etc/init.d/cron restart     ==> versi debian dan turunannya
# /etc/init.d/crond restart  ==> versi redhat dan turunannya


EmoticonEmoticon