Backup Otomatis File dan Database Server ke Dropbox

Minggu, 28 Mei 2017

Setelah melakukan setup server dan melakukang tweaking seurity, hal selanjutnya yang harus dilakukan adalah melakukan backup secara rutin. Hal ini tentu ditujukan untuk antisipasi hal yang tidak diinginkan misalnya seorang hacker berhasil meretas server kita, atau kesalahan konfigurasi yang menyebabkan database error.

Nah, mungkin kalian sedang bepergian jauh dan tidak "menyentuh" server untuk waktu yang lama, backup otomatis bisa menjadi solusi.
Disini saya melakukan backup otomatis menggunakan cronjob, dan dilanjut dengan auto upload ke Dropbox.
Pertama, kita lakukan backup otomatis dengan cronjob.
Kita buat dulu folder untuk tempat file backupnya.
mkdir backupdb
Lalu lanjut ke pengaturan cronjob
crontab -e
lalu masukkan perintah cronjob nya di bagian bawah 
0 0 */3 * * /usr/bin/mysqldump --opt -Q -u user --password=passdb namadb | gzip > /root/backupdb/db-`date +\%Y-\%m-\%d`.sql.gz
39 3 * * 1 /usr/bin/zip -r /root/backupdb/serverfile-`date +\%Y-\%m-\%d`.zip /var/www/html/*
Oke saya jelaskan sedikit.
0 0 */3 * * - Saya melakukan backup database tiga hari sekali tiap tengah malam. Untuk perintah mysqldup sepertinya tidak perlu saya jelaskan. Itu perintah untuk melakukan dump database yang nantinya disimpan dalam folder backupdb.
30 3 * * 1 -  Saya melakukan backup file server yang berlokasi di /var/www/html setiap hari minggu (hari 1), pada pukul 3.30 . Hasil backup berupa file .zip disimpan di folder backupdb.

Setelah selesai, simpan cronjob.
Sampai disini kita sudah berhasil membuat backup rutin. Atau jika kalian ingin mengubah waktu backup, silahkan ubah ubah sendiri bagian cronjobnya.

Selanjutnya adalah menghubungkan server kita ke Dropbox. Pastikan sebelumnya kalian telah memiliki akun Dropbox ya.
Menginstall Dropbox sangat mudah.
32-bit:
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -

64-bit:
cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86_64" | tar xzf -

Lalu jalankan dropbox untuk inisialisasi.
~/.dropbox-dist/dropboxd
Akan muncul warning 
This computer isn't linked to any Dropbox account...
Please visit https://www.dropbox.com/cli_link_nonce?nonce=randomnumber to link this device.
Login ke akun dropbox mu dan buka link tersebut.
Akan muncul halaman konfirmasi.
Sekarang server kalian sudah terhubung ke akun dropbox.
Setelah melihat notice
This computer is now linked to Dropbox. Welcome Jack
di terminal, jangan ditunggu. Langsung tekan Ctrl+C .
Di folder root kalian sekarang pasti ada filder Dropbox. Folder itulah yang digunakan sebagai tempat sinkronisasi ke akun Dropbox. Jadi kalau ada file baru disana akan langsung diupload ke dropbox secara otomatis.
Kita symlink kan saya folder backup tadi ke folder Dropbox.
ln -s /root/backupdb ~/Dropbox/
Selanjutnya kita download juga sript Dropbox CLI. Ini untuk memudahkan kalian mengecek status, start, dan stop dropbox.
wget -O ~/.dropbox-dist/dropbox.py "https://www.dropbox.com/download?dl=packages/dropbox.py"
chmod +x ~/.dropbox-dist/dropbox.py
Contoh perintah :
~/.dropbox-dist/dropbox.py status
Output :
Syncing "serverfile-2...27.zip" (16 secs left)
Uploading "serverfile-2017-05-27.zip" (3,082 KB/sec, 16 secs left)
Kalian bisa menambahkan script init untuk memudahkan manajemen dropbox.
wget -O /etc/init.d/dropbox "https://gist.githubusercontent.com/haifengkao/49c7b7436ec65da30a69/raw/fc3408c0e798380e0b06489f23e78c30520f7c7a/dropbox"
chmod +x /etc/init.d/dropbox
Selanjutnya ubah usernya menjadi root. (saya menjalankan file ini sebagai root, kalau dirasa kurang aman bisa kamu ubah dengan user lain).
nano /etc/init.d/dropbox
Ubah value user menjadi :
DROPBOX_USERS="root"
Untuk menjalankan dropbox saat startup masukkan perintah :
sudo update-rc.d dropbox defaults
Contoh penggunaan :
service dropbox status
Output:
dropboxd for USER root: running (pid 5631)

Sekarang kalian sudah berhasil membuat backup otomatis yang akan disimpan di Dropbox. Sekian tutorial Cara Backup Otomatis File dan Database Server ke Dropbox, semoga bermanfaat. Jika ada yang kurang jelas silahkan komentar.

Artikel Terkait Server ,Tutorial ,Utilities