The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: Создание инкрементального архива с ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: Создание инкрементального архива с ..."  +/
Сообщение от auto_tips (??) on 09-Апр-10, 08:09 
В самом простом виде инкрементальный архив с помощью tar делается так:

   tar --create --file=`date +%s`.tbz2 --bzip --listed-incremental=example.snar --verbose example/

Кратко:

   tar -cvjg example.snar -f `date +%s`.tbz2  example/

Развертывается архив через распаковку всех составляющих архивов по очереди, от самых старых к самым новым.

В простейшем случае так:

   tar --extract --incremental --file level0.tar
   tar --extract --incremental --file level1.tar
   tar --extract --incremental --file level2.tar

Или, например, так:

   for i in *.tbz2; do tar -xjGf "$i"; done;

При использовании следующего скрипта, архив нулевого уровня будет создаваться раз в неделю или раз в месяц, в зависимости от того какая строка раскомментирована:

   #!/bin/sh
   SOURCE="$1"
   test -d "$SOURCE" || exit 1

   DEST_DIR=`date +%G-%V`; #weekly
   #DEST_DIR=`date +%Y-%m`; #monthly
   #DEST_DIR=`date +%Y`-$(( (`date +%m`-1)/3+1 )); #quarterly

   mkdir -p $DEST_DIR;
   shift;
   tar --create "$@" --preserve-permissions --totals --bzip \
   --file="$DEST_DIR"/`date +%F-%s`.tbz2 \
   --listed-incremental="$DEST_DIR"/backup.snar \
   --no-check-device --exclude-vcs \
   --exclude-tag-under=access.log --exclude='*.log' \
   --exclude-caches --exclude-tag-under=IGNORE.TAG "$SOURCE"

Проверить работу этого скрипта можно, например, так:

   ./backup.sh example/ -v

Для некоторых версий tar наблюдается крах при одновременном использовании  --exclude-caches и --exclude-tag=, в этом случае --exclude-caches можно заменить на --exclude-tag=CACHEDIR.TAG.


URL: http://sanmai.livejournal.com/780770.html http://www.gnu.org/software/automake/manual/tar/Incremental-...
Обсуждается: http://www.opennet.me/tips/info/2341.shtml

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Создание инкрементального архива с помощью утилиты tar"  +/
Сообщение от adm (??) on 09-Апр-10, 08:09 
я делаю через rsync, есть несколько преимуществ.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Создание инкрементального архива с помощью утилиты tar"  +/
Сообщение от Pilat (ok) on 11-Апр-10, 23:53 
у rsync встроенный недостаток - получается не один файл, а миллион. Соответственно с миллионом файлов трудно работать при заливке на FTP, например, да и просто заархивировать сложно.
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Создание инкрементального архива с помощью утилиты tar"  +/
Сообщение от adm (??) on 09-Апр-10, 08:34 
вернее у tar-а только одно преимущество это если нужно сразу на ленту бекапить
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Создание инкрементального архива с помощью утилиты tar"  +/
Сообщение от sHaggY_caT (ok) on 09-Апр-10, 11:16 
Мы бэкапим gzip-ленный поток таром через ssh...

Инкрементальные копии это очень хорошо: и трафик и место очень экономятся :)

Может быть, кому-нибудь будет полезно, кусочек скрипта:


tar cfvz - --listed-incremental=$BASEDIR/var/all.snar -T $BASEDIR/tmp/$DATE.full_list.tmp \
| ssh -o StrictHostKeyChecking=no -l $LOGIN $REMOTEHOST "cat > $REMOTEDIR/data/$DATE.0.tgz" >>$BASEDIR/var/$DATE.0.remote.log 2>&1
echo "code res=" $? >>$BASEDIR/var/$DATE.0.remote.log 2>&1  

Советую так же использовать keychain для управления ssh-ключами

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Создание инкрементального архива с помощью утилиты tar"  +/
Сообщение от AlexAT (ok) on 12-Апр-10, 12:21 
А в не самом простом виде подробное описание есть здесь:

http://alex-at.ru/linux/tar-linux

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру