Saya menggunakan perintah yang dijelaskan di atas dari pehrs, tetapi dimodifikasi untuk penggunaan ftp. Sampel crontab:
30 3 1 * * sudo /sbin/dump -0uan -f server-full-backup-root-`date '+%d-%B-%Y'`.dump / && gzip -1 /<path_to_backup_file>/server-full-backup-root-`date '+%d-%B-%Y'`.dump
50 * * * * lftp -f upload.x
upload.x berisi kredensial dan aturan ftp untuk diunggah:
open -u user,password -p 21 192.168.1.1
mirror -c -e -R /<path_to_backup_folder> /<path_to_remote_folder_without_trailing_slash>
exit
Catatan 1: lftp dapat menyebabkan penggunaan CPU yang tinggi ketika tujuan tidak dapat dijangkau untuk mencoba menghubungkan kembali. Karena banyak hosting VPS mungkin diatur ulang dalam kasus seperti itu, saya sarankan untuk memantau beban CPU untuk membunuh proses lftp mencegah server Anda dimatikan oleh pemilik host. Contoh untuk rata-rata memuat> 1,33 untuk proses lftp (dan dropbox). Sayangnya, saya tidak ingat sumber kode awal, terima kasih kepada seseorang:
Crontab */5 * * * * /home/cms/cron/loadmon.sh
#!/bin/bash
FROM_EMAIL_ADDRESS=cms
trigger=1.33
load=`cat /proc/loadavg | awk '{print $1}'`
response=`echo | awk -v T=$trigger -v L=$load 'BEGIN{if ( L > T){ print "greater"}}'`
if [[ $response = "greater" ]]
then
killall dropbox lftp
nice -n 19 sh /cms/.dropbox-dist/dropboxd
sar -q | mailx -s "High load on server - [ $load ]" r***s@gmail.com
fi
Catatan 2: utilitas pembuangan mungkin tidak berfungsi pada OpenVZ VPS atau beberapa server virtual lainnya.