서버.보안
서버백업스크립트
landzz
2009. 4. 21. 23:45
/etc/cron.daily/backup.sh
====================================
#!/bin/sh
LANG=en
PATH=/usr/bin:/bin
DOW=`date +%a`
DOM=`date +%d`
HOMEDIR=/home/user
BACKUPDIR=/backup
MYSQLPASSWD="*******"
cd ${HOMEDIR}
for USER in *; do
if [ $DOW = "Sun" ]; then
NOW=`date +%d-%b`
echo $NOW > ${BACKUPDIR}/last-full-date
mv -f ${BACKUPDIR}/data/${USER}-${DOW}.tar ${BACKUPDIR}/data/${USER}-${DOW}.old.tar
tar -cpf ${BACKUPDIR}/data/${USER}-${DOW}.tar ${USER}
else
NEWER="--newer=`cat ${BACKUPDIR}/last-full-date`"
tar -cp ${NEWER} -f ${BACKUPDIR}/data/${USER}-DOW.tar ${USER}
fi
done
DATABASE=`mysql -u root -p${MYSQLPASSWD} -e "show databases;" -s`
for DB in ${DATABASE}; do
mysqldump -u root -p${MYSQLPASSWD} --opt ${DB} --default-character-set=euckr --extended-insert=false > ${BACKUPDIR}/db/${DB}-${DOW}.sql
done
cd /
tar -cpf ${BACKUPDIR}/data/etc-${DOW}.tar etc
====================================
#!/bin/sh
LANG=en
PATH=/usr/bin:/bin
DOW=`date +%a`
DOM=`date +%d`
HOMEDIR=/home/user
BACKUPDIR=/backup
MYSQLPASSWD="*******"
cd ${HOMEDIR}
for USER in *; do
if [ $DOW = "Sun" ]; then
NOW=`date +%d-%b`
echo $NOW > ${BACKUPDIR}/last-full-date
mv -f ${BACKUPDIR}/data/${USER}-${DOW}.tar ${BACKUPDIR}/data/${USER}-${DOW}.old.tar
tar -cpf ${BACKUPDIR}/data/${USER}-${DOW}.tar ${USER}
else
NEWER="--newer=`cat ${BACKUPDIR}/last-full-date`"
tar -cp ${NEWER} -f ${BACKUPDIR}/data/${USER}-DOW.tar ${USER}
fi
done
DATABASE=`mysql -u root -p${MYSQLPASSWD} -e "show databases;" -s`
for DB in ${DATABASE}; do
mysqldump -u root -p${MYSQLPASSWD} --opt ${DB} --default-character-set=euckr --extended-insert=false > ${BACKUPDIR}/db/${DB}-${DOW}.sql
done
cd /
tar -cpf ${BACKUPDIR}/data/etc-${DOW}.tar etc