Apabila pemilik website tidak memiliki backup data dan suatu saat server mengalami kegagalan, maka untuk mengembalikan data dan file akan sangat sulit. Padahal, kehilangan data ini bukan lah tanggung jawab dari provider, melainkan dari pemilik website sendiri. Tentunya, Anda pun harus melakukan backup agar tidak terjadi hal yang tidak diinginkan.

Backup file dan database bisa dilakukan dengan berbagai cara. Jika Anda menggunakan shared hosting cPanel, maka hanya perlu meng-klik menu backup. Sedangkan pada VPS, Anda bisa memakai FTP backup. Nah, pada artikel ini, yang akan dibahas adalah mengenai FTP backup untuk VPS untuk file di Linux.

Panduan untuk Mem-Backup File dan Database

Untuk mem-backup data, sebetulnya sangat sederhana, Anda hanya butuh meng-kompres data ke dalam .zip ataupun .tar.gz. Selanjutnya, Anda tinggal meng-upload-nya pada FTP backup yang telah dibeli. Sedangkan pada database, Anda hanya perlu meng-export-nya dan upload FTP.

Semua langkah tersebut dapat dilakukan manual. Namun, ini membutuhkan waktu yang lebih lama serta harus melakukan langkah yang berulang kali. Akan sangat merepotkan bukan? Untuk itu, lakukan langkah otomatis berikut ini!

Backup File

Buat lah file sh dengan cara mengetik “nano file_backup.sh” (hilangkan tanda kutip). Lalu, copy paste skrip ini :

#!/bin/sh


# Linux FTP Backup Script
# Version: 1.0
# Script by: Pietro Marangon
# Skype: pe46dro
# Email: pietro.marangon@gmail.com


clean_backup() {
rm -f ./$FILE
echo 'Local Backup Removed'
}

########################
# Edit Below This Line #
########################

# FTP Login Data
USERNAME="USERNAME HERE"
PASSWORD="PASSWORD HERE"
SERVER="IP HERE"
PORT="REMOTE SERVER PORT"

#Directory where thing to backup is located
DIR="/root"

#Remote directory where the backup will be placed

REMOTEDIR="./"

#Filename of backup file to be transfered DON'T WRITE EXTENSION (.tar/.zip/ecc...)

FILE="BACKUP_NAME"

#Transfer type
#1=FTP
#2=SFTP

TYPE=1

##############################
# Don't Edit Below This Line #
##############################
d=$(date --iso)
FILE=$FILE"_"$d".tar.gz"
tar -czvf ./$FILE $DIR
echo 'Tar Complete'

if [ $TYPE -eq 1 ]
then
  ftp -n -i $SERVER <<EOF
  user $USERNAME $PASSWORD
  binary
  put $FILE $REMOTEDIR/$FILE
  quit
  EOF
elif [ $TYPE -eq 2 ]
then
  rsync --rsh="sshpass -p $PASSWORD ssh -p $PORT -o StrictHostKeyChecking=no -l $USERNAME" $FILE $SERVER:$REMOTEDIR
else
  echo 'Please select a valid type'
fi

echo 'Remote Backup Complete'
clean_backup
#END

Konfigurasi Backup File dan Folder

Ada beberapa varibael yang perlu Anda sesuaikan, meliputi :

  1. Login detail pada server FTP Backup berupa username, password, ip, serta port.
  2. Isi direktori yang ingin di-backup.
  3. Isi sesuai keinginan dimana folder backup akan disimpan.
  4. Kemudian, konfigurasi nama backup sesuai nama file backup. Tidak perlu memasukkan ekstensi file seperti .zip dan .tar, cukup namanya saja.
  5. FTP setting yakni terkait dengan cara apa yang akan digunakan untuk mengirim backup. Jika Anda tidak familiar menggunakan SFTP, maka Anda bisa men-setting menggunakan nomor default yakni TYPE = 1.

Jika konfigurasi telah selesai, maka Anda bisa menekan tombol “CTRL + X” dan juga Y untuk dapat menyimpan skrip backup. Jika sudah, masukkan juga perintah “chmod + x {nama_skrip).sh”.

Selanjutnya, tes konfigurasi skrip telah betul ataukah belum. Caranya adalah dengan meng-eksekusi langsung dnegan perintah “sh [nama_skrip].sh”. Jika tidak error, artinya, backup sudah berhasil. Cek kembali server FTP untuk memastikan backup sudah berhasil.

Kelemahan Backup FTP untuk File dengan Skrip

Meskipun mudah, tetapi, ada kelemahan menggunakan skrip untuk backup FTP. Yakni Anda tidak dapat mengkonfigurasi retention backup. Artinya, setting dimana Anda dapat mengkonfigurasi jumlah backup yang akan tersimpan tidak dapat dilakukan. Sehingga, Anda pun harus melakukan penghapusan secara manual backup yang tidak lagi dipakai pada FTP Backup agar tidak memakan terlalu banyak storage.

Demikian pembahasan mengenai FTP Backup untuk file pada Linux, semoga bermanfaat.

Author

Write A Comment