Hello all,
i wrote a script to backup the basics. Its in german and only example.
You need a ibay called "backup" and a USB-Drive formatet on ext3.
Usage: ./<Scriptname>.sh <platte> <pack> <del old backup>
Bsp. ./sme-config-backup-daily.sh sda1 off off
#!/bin/bash
# Titel: SME-SERVER-KONFIGURATION - Backup-Script
# Description: Sicherung der wichtigsten Verzeichnisse des SME-Servers
# /etc /boot /opt /package /root /usr /var /home und eines MySQL-Dumpfiles
# Copyright: Thomas Bandl - www.bt-w.de
# Version 1.0
# Allgemeine Konfiguration und Angaben
#Angaben zum MySQL-Account
MYSQL_USER=YOURMYSQLUSER
MYSQL_PASS=YOURMYSQLPASSWORD
# Festlegung des Datums - Format: 20050710
DATE=`date +"%Y%m%d"`
#Angaben zur verwendeten Festplatte werden bei Aufruf
#und abgefragt
[ -z "$1" ] && echo "Error - usage: ./<Scriptname>.sh <platte> <packen> <alte Sicherung löschen>(Bsp. ./sme-config-backup-daily.sh sda1 off off)" && exit 1
platte=$1
[ -z "$2" ] && echo "Error - usage: ./<Scriptname>.sh <platte> <packen> <alte Sicherung löschen>(Bsp. ./sme-config-backup-daily.sh sda1 off off)" && exit 1
packen=$2
[ -z "$3" ] && echo "Error - usage: ./<Scriptname>.sh <platte> <packen> <alte Sicherung löschen>(Bsp. ./sme-config-backup-daily.sh sda1 off off)" && exit 1
delold=$3
sicherungsverzeichnis=backup-daily
echo "Die Sicherung erfolgt auf der Platte: " $platte
echo "Die Verzeichnisse packen: " $packen
echo "Die alte Sicherung löschen: " $delold
echo "Sicherung vom: " $DATE
echo "-------------------------------------------------"
cd /
#ALTE SICHERUNG LÖSCHEN
umount -l /dev/$platte
wait
mount /dev/$platte /home/e-smith/files/ibays/backup/html/
wait
mkdir /home/e-smith/files/ibays/backup/html/$sicherungsverzeichnis/
if [ $delold == "on" ]; then
rm -Rf /home/e-smith/files/ibays/backup/html/$sicherungsverzeichnis/*
echo "Sicherung wird erneuert!"
wait
else
echo "Sicherung wird aktualisiert!"
fi
# Das Backup-Script
#---------------------------------------------
# Hier folgt nun das eigentliche Backup-Script
#Mountpoint wechsel nach /srv
umount -l /dev/$platte
wait
mount /dev/$platte /srv
wait
#---------------VERZEICHNISSE SICHERN ANFANG
#Next wird das Verzeichnis /etc gesichert
sverzeichnis=etc
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /boot gesichert
sverzeichnis=boot
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /opt gesichert
sverzeichnis=opt
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /package gesichert
sverzeichnis=package
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /root gesichert
sverzeichnis=root
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /usr gesichert
sverzeichnis=usr
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /var gesichert
sverzeichnis=var
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#Next wird das Verzeichnis /home gesichert
sverzeichnis=home
echo "Verzeichnis /" $sverzeichnis " wird gesichert!"
rsync -az --delete --delete-after /$sverzeichnis /srv/$sicherungsverzeichnis
#---------------VERZEICHNISSE SICHERN ENDE
#Zurück nach Ibay Backup mounten
umount -l /dev/$platte
wait
mount /dev/$platte /home/e-smith/files/ibays/backup/html
wait
#Sicherung eines MySQL-Dumpfile
sverzeichnis=mysql-dump
echo "Verzeichnis /" $sverzeichnis " wird erstellt und gesichert!"
mkdir /home/e-smith/files/ibays/backup/html/$sicherungsverzeichnis/mysql-dump
cd /home/e-smith/files/ibays/backup/html/$sicherungsverzeichnis/mysql-dump
mysqldump -AaCceQ -u$MYSQL_USER -p$MYSQL_PASS -r mysql.dbs
cd /
#Platte UNMOUNTEN
umount -l /dev/$platte
wait
echo "Sicherung beendet!"
Restore of Databases:
--------------------------------
Copy recursive the folder to /var/lib/mysql
and change the rights recursive too to mysql.mysql
Restore Emails:
---------------------------
Backup-Path:
cp -p /home/e-smith/files/ibays/backup/html/Maildir/cur/* /home/e-smith/Maildir/cur
cp -p /home/e-smith/files/ibays/backup/html/Maildir/new/* /home/e-smith/Maildir/new
cp -p /home/e-smith/files/ibays/backup/html/Maildir/tmp/* /home/e-smith/Maildir/tmp
Restore User-Accounts:
----------------------------------
cp -Rp /home/e-smith/files/ibays/backup/html/users/* /home/e-smith/files/users
Restore Clam-AV-Quarantine:
---------------------------------------
cp -Rp /home/e-smith/files/ibays/backup/html/var/spool/clamav/quarantine/* /var/spool/clamav/quarantine
Oh and i needed it once and it worked

. But would be also nice to see what you make out of this script.
Greetings,
lance