понедельник, 24 февраля 2014 г.

how to make tarballs

 find . -type f | xargs -I \{\} gtar -zcvf \{\}.tar.gz \{\} --remove-files


=============================================================================================


#!/bin/sh
#
####
#Скрипт для архивирования старых почтовых ящиков
#Входной параметр - дата в формате yyyymmdd

PATH1=/var/mail/
PATH2=/mnt/3/mail_backup/

mkdir $PATH1.tmp;
cd $PATH1 &&
touch -t $1"0000" .tmp/date.tmp &&
find $PATH1 -maxdepth 1 -mindepth 1 \! -newer .tmp/date.tmp | xargs -I {} mv {} .tmp/ &&
ls .tmp/ | xargs -I {} tar -C .tmp/ -zcvf $PATH2{}.tar.gz {} &&
rm -rf .tmp



=========================================================================================


# -----------------------------------
# Created Ohalnikov Oleg
# Support: http://unixa.ru
# -----------------------------------

#!/bin/sh

DIR=/mnt/backup
DATA=`date '+%Y%m%d'`

cd $DIR
mysqldump -u root --password='*****' -l --all-databases | gzip > databases-$DATA.sql.gz
tar -czf named-$DATA.tar.gz /var/named
tar -czf log-$DATA.tar.gz /var/log
tar -czf etc-$DATA.tar.gz /etc
tar -czf locetc-$DATA.tar.gz /usr/local/etc
tar -czf www-$DATA.tar.gz /usr/local/www

for file in *-$DATA.*
do
echo "$file" >> $DIR/current
done
    echo "Backup Server $DATA" | mail -s "Backup Server $DATA" administrator@mailserver.ru < $DIR/current
rm -f $DIR/current

find $DIR/* -mtime +7 -exec rm {} \;

# <<< THE-END >>>