The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"FreeBSD. Incremental backup. Rsync + Bash"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"FreeBSD. Incremental backup. Rsync + Bash"  
Сообщение от catherina email(ok) on 25-Авг-06, 11:48 
Добрый день.
Прошу прощения, но не нашла поиском решения проблемы.

Дано:
FreeBSD 6.1-RELEASE-p2, rsync-2.6.8_2

Задача: делать инкрементальные бекапы.

Используемые статьи:
http://www.mikerubel.org/computers/rsync_snapshots
http://gja.space4me.com/things/Backups_With_Rsync.html

есть скрипт, делающий полные бекапы по расписанию, надо добавить туда фукцию инкрементальных бекапов.И делать это надо тем же rsync+bash.Ибо от них уже имеется полный бекап, то есть имеем эталон, относительно которого искать изменившиеся файлы.

в приведенных статьях предлагается делать это через "cp -al" (в линуксе) и "cd $path1 && find . -print | cpio -dplm $path2" (во фре).
но у меня такая конструкция не работает.

по логике вещей, cp -al создает иллюзию жесткой ссылки. rsync сначала считывает имеющиеся файлы и на основании этого составляет список изменившыхся (это у меня отрабатывается нормально, что не удивительно). А потом, перед записью, он должен отлинковать директорию (так как это была иллюзия, то она окажется пустой) и записать туда файлы, которые были изменены.

Так вот, у меня этого не происходит, то есть он просто *дописывает* новые файлы в папку. Получается ежедневно обновляемый полный бекап, а это несколько не то :)

что я делаю не так?

Вот вырезки из скрипта, которые должны выполнять инкрементальный бекап:
====
#!/usr/local/bin/bash
Source="/export/shares/"
Destination="/backup"

if [ -d $Destination/hourly.3 ] ; then \
rm -rf $Destination/hourly.3 ; \
fi;

if [ -d $Destination/hourly.2 ] ; then \
mv $Destination/hourly.2 $Destination/hourly.3 ;\
fi;

if [ -d $Destination/hourly.1 ] ; then \
mv $Destination/hourly.1  $Destination/hourly.2 ; \
fi;

if [ -d $Destination/hourly.0 ] ; then \
cd $Destination/hourly.0 && find . -print | cpio -dplm $Destination/hourly.1 ;\
fi;

rsync -av --update --delete  $Source $Destination/hourly.0
==

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

 Оглавление

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


1. "FreeBSD. Incremental backup. Rsync + Bash"  
Сообщение от gara (??) on 25-Авг-06, 12:36 
смотри в сторону DAR (Disk ARchive)

http://dar.linux.free.fr/

он умеет и полный бекап делать и diff и много еще чего - РЕШЕНИЕ !!! :)

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

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

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




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

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