New on LowEndTalk? Please Register and read our Community Rules.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.


Comments
rsync
Thanks, something with a web interface? Something newer
BorgBackup, and this is Linux, most of the cool things don't have GUI's. :P
rsync + cron.
This needs agent-forwarding and a private key in root's /root/.ssh folder. I'm yet to google again how I did setup this up my digitalocean server.
#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/job #mysql dump filename=`date '+%m%d%y'` cd /root/bak mysqldump db1 > ${filename}db1.sql mysqldump db2 > ${filename}db2.sql tar cvzf - ${filename}db.tar.gz ${filename}db1.sql ${filename}db2.sql | openssl des3 -salt -k 'mypassword' | dd of=${filename}db.tar.gz tar cvzf - ${filename}webserver.tar.gz /path/to/website/files/* | openssl des3 -salt -k 'mypassword' | dd of=${filename}webserver.tar.gz tar cvzf - ${filename}webserverlogs.tar.gz /path/to/website/logs/* | openssl des3 -salt -k 'mypassword' | dd of=${filename}webserverlogs.tar.gz tar cvzf - ${filename}varlog.tar.gz /var/log/* | openssl des3 -salt -k 'mypassword' | dd of=${filename}varlog.tar.gz #backup server 1 /usr/bin/rsync -avzHx --delete --stats --progress --exclude-from '/path/to/rsync-exclude.txt' -e "ssh -2 -p 22" /root/bak [email protected]:/home/backupuser/backups /usr/bin/rsync -avzHx --delete --stats --progress --exclude-from '/path/to/rsync-exclude.txt' -e "ssh -2 -p 22" /root/bak [email protected]:/home/backupuser/backups #backup server 3 /usr/bin/rsync -avzHx --delete --stats --progress --exclude-from '/path/to/rsync-exclude.txt' -e "ssh -2 -p 22" /root/bak [email protected]:/home/backupuser/backups #backup server 4 /usr/bin/rsync -avzHx --delete --stats --progress --exclude-from '/path/to/rsync-exclude.txt' -e "ssh -2 -p 22" /root/bak [email protected]:/home/backupuser/backups #backup server 5 /usr/bin/rsync -avzHx --delete --stats --progress --exclude-from '/path/to/rsync-exclude.txt' -e "ssh -2 -p 22" /root/bak [email protected]:/home/backupuser/backups rm -f *.sql rm -f *.tar.gzhttp://www.lowendguide.com/3/database/encrypting-a-tar-or-gz-gzip-file-with-openssl/
@Mikho 's script then can be used to decrypt your openssl encrypted .tar.gz files
I left his 'f' off from tar as it was giving me errors.
Set this shit up on cron and you can go to town.
root@server:$ crontab -e
...
0 0 * * * /root/job/backup.job
You can test parts of the script always with bash backup.job or whatever to make sure it works.
why not use GPG?
https://github.com/willgrz/Autobackup
Duplicity.
Bash
Self-promotion, but Duplicity is really easy to set up and it works very well: https://raymii.org/s/tutorials/Website-and-database-backup-with-Duplicity.html
I've now got over a thousand servers running Duplicity every night doing backups, and it hasn't failed on me once. However, I still do monthly restore testing and monitoring just to be sure.
Regarding the (web) UI you might try Duplicati: http://www.duplicati.com/
Used version 2.* some time ago and was pretty happy.