diff options
Diffstat (limited to 'scripts/backup.cron')
-rwxr-xr-x | scripts/backup.cron | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/scripts/backup.cron b/scripts/backup.cron index 0f12cab..408ea32 100755 --- a/scripts/backup.cron +++ b/scripts/backup.cron @@ -5,12 +5,14 @@ prefix="daily" count="25" list="dirs.list" -echo mount -o remount,rw ${basedir} -mount -o remount,rw ${basedir} +mountpoint -q $basedir && umount $basedir + +fsck -y /dev/data/backup +mount ${basedir} +echo "Start @ `date`" > ${basedir}/time last=${basedir}/${prefix}.${count} if [ -d ${last} ]; then - echo rm -r ${last} rm -r ${last} fi @@ -20,28 +22,37 @@ for n in `seq ${count} -1 1`; do dest=${basedir}/${prefix}.$n if [ -d ${src} ]; then if [ ${m} -eq 0 ]; then - echo cp -rl ${src} ${dest} cp -rl ${src} ${dest} else - echo mv ${src} ${dest} mv ${src} ${dest} fi else - echo mkdir ${dest} mkdir ${dest} fi done for src in `cat ${basedir}/${list}`; do - dest=${basedir}/${prefix}.0${src} + dest=${basedir}/${prefix}.0/${src} if [ ! -d ${dest} ]; then - echo mkdir -p ${dest} mkdir -p ${dest} fi - echo rsync -avx --delete ${src} ${dest} - rsync -avx --delete ${src} ${dest} + rsync -ax --delete ${src} ${dest} done -echo mount -o remount,ro ${basedir} -mount -o remount,ro ${basedir} +echo "Begin MySQL @ `date`" >> ${basedir}/time +rm -f ${basedir}/${prefix}.0/mysql.sql.xz +mysqldump -uroot -pne65dq -xA | xz > ${basedir}/${prefix}.0/mysql.sql.xz + +echo "Begin LDAP @ `date`" >> ${basedir}/time +rm -f ${basedir}/${prefix}.0/ldap.ldif.xz +ldapsearch | xz > ${basedir}/${prefix}.0/ldap.ldif.xz + +echo "Begin PostgreSQL @ `date`" >> ${basedir}/time +rm -f ${basedir}/${prefix}.0/postgresql-gentoo.sql.xz +pg_dump -Upostgres gentoo -N _gentoo | xz > ${basedir}/${prefix}.0/postgresql-gentoo.sql.xz +rm -f ${basedir}/${prefix}.0/postgresql-bugzilla.sql.xz +pg_dump -Upostgres bugzilla | xz > ${basedir}/${prefix}.0/postgresql-bugzilla.sql.xz + +echo "End @ `date`" >> ${basedir}/time +umount ${basedir} |