[Sysadmins] Решение для бэкапа системы с историей

Nikolay sn_kirovograd_sub на rambler.ru
Вт Июл 13 08:43:34 UTC 2010


В сообщении от 12 июля 2010 Andrey Rahmatullin написал(a):
> On Mon, Jul 12, 2010 at 01:54:49PM +0400, Алексей Шенцев wrote:
> > Меня как раз интересует как создать первый backup всей системы, а потом
> > делать инкременнетный бэкап.
>
> rdiff-backup держит последний бэкап как полный, храня историю бинарными
> дельтами.
>
> > Чем лучше воспользоваться: rsync, cp -a и т.д. и т.п.
>
> Первый, очевидно, как угодно. Вот как вы потом собираетесь делать
> инкрементальные - другой вопрос.
>
> > А потом, как правильно бэкап развернуть обратно, с наименьшим ручным
> > трудом.
>
> В rdiff-backup последняя версия достаётся простым копированием, более
> ранние - через CLI с указанием даты или пути к слёпку, плюс есть как
> минимум веб-интерфейс для просмотра бэкапов (GUI-интерфейсы пока не
> щупал).
Я просто содрал скриптик - файлов около миллиона 
#!/bin/sh
#renice +19 -p $$ >/dev/null 2>&1
#ulimit -t 20
#/home/applmgr/app/archapp&
	     
checkdir="/u02/oracle/pr/prappl/ont /u02/oracle/pr/prappl/xxdw /u02/oracle/pr/prappl/XX"
ttemp="/var/tmp/bkp/oracleappdb_tmp"
filedb="/var/tmp/bkp/oracleappdb"

email="v.mokrousov на bla.com"
a_tar="/var/tmp/bkp/app.tar"
archive="/var/tmp/bkp/app.tar.bz2"
host=`hostname`

#Build new hash
find $checkdir -type f -printf "%m\t"   -exec md5sum {} \; >$filedb.tmp
#list=`diff -e $filedb $filedb.tmp | grep " "`
#GEt list delta
diff -e $filedb $filedb.tmp|grep " "  | awk -F' ' '{ print $3 }'  >$ttemp
mv -f $filedb.tmp $filedb


#Arch delta

lines=`cat $ttemp|wc -l`
#echo "$lines"

if [ $lines == "0" ]; then
    exit  0
fi

cat $ttemp | while read Res; do
    tar -rf  $a_tar $Res
    echo $Res
done
cat $a_tar   | bzip2 --best  > $archive

echo "ARchive -"$archive    
scp  $archive   
applmgr на bkp2:/home/applmgr/data/delta/delta_app_`date -I`.tar.bz2

rm -f $a_tar
rm -f $archive
rm -f $ttemp

exit 0
...
-- 


С, уважением, Николай.


Подробная информация о списке рассылки Sysadmins