Server Data Backup
This is a simple backup script using tarballs. This isn't incremental at all; but, it's an easy and free solution for personal webservers especially. I use this in conjunction with another SQL BACKUP SCRIPT; my server operates with ISPCONFIG 3 and all websites are SQL generated. So, this makes sense to do daily SQL backups and just bi-monthly backups with all files..
If you rely on SQL, check out my SQL BACKUP's HOWTO as well. It's a two-part system!
#!/bin/sh
# Backup Utility v0.02
# Create a /backup/ partition, put this in the path of /backup/directory/
# Removes the tarball from the previous execution.
rm -rf /backup/data/*.tar.gz
# Dates the new tarballs of current builds.
DATE=`date +%m_%d_%Y`
# Directory structure that is being tarballed.
# Have this be what is found in your "/" root
# excluding the /backup/ partition.
tar -pzcf /backup/data/bin.$DATE.tar.gz /bin/
tar -pzcf /backup/data/boot.$DATE.tar.gz /boot/
tar -pzcf /backup/data/dev.$DATE.tar.gz /dev/
tar -pzcf /backup/data/dist.$DATE.tar.gz /dist/
tar -pzcf /backup/data/etc.$DATE.tar.gz /etc/
tar -pzcf /backup/data/kernel.$DATE.tar.gz /kernel*
tar -pzcf /backup/data/lib.$DATE.tar.gz /lib
tar -pzcf /backup/data/root.$DATE.tar.gz /root/
tar -pzcf /backup/data/sbin.$DATE.tar.gz /sbin/
tar -pzcf /backup/data/stand.$DATE.tar.gz /stand/
tar -pzcf /backup/data/usr.$DATE.tar.gz /usr/
tar -pzcf /backup/data/var.$DATE.tar.gz /var/
tar -pzcf /backup/data/emul.$DATE.tar.gz /emul/
tar -pzcf /backup/data/home.$DATE.tar.gz /home/
tar -pzcf /backup/data/selinux.$DATE.tar.gz /selinux/
tar -pzcf /backup/data/srv.$DATE.tar.gz /srv/
tar -pzcf /backup/data/ssl.$DATE.tar.gz /ssl/
tar -pzcf /backup/data/sys.$DATE.tar.gz /sys/
ls -lah > /backup/data/rootmap
cp /quota* /backup/data/