Страница 1 из 1
UFS2 snapshot
Добавлено: 2009-11-23 15:18:50
QuAzI
Интересует два вопроса по UFS2 скорее теоретического плана, т.к. не нашёл по ним информации.
1) Сколько снимков можно сделать на одной точке монтирования? В памяти крутится 20, но непомню, толи это число снимков, толи число модификаций в уже созданных снимках.
2) Как правильно удалять, пересоздавать снимки? Создался снимок, данные "под ним" фактически "заморозились" и с этого места уже работает COW. Достаточно ли простого удаления снапшота чтобы ФС начала работать в штатном режиме, без COW, перезаписывая старые данные?
Re: UFS2 snapshot
Добавлено: 2010-02-28 13:15:14
Alex Keda
а в документации по этому поводу что написано?
Re: UFS2 snapshot
Добавлено: 2010-02-28 16:08:38
QuAzI
Везде написано что это можно смонтировать и уже дальше извращаться (делать дампы, бекапы, сравнивать с тем что уже есть и т.п.). А про возможность скопировать целиком ни слова.
Re: UFS2 snapshot
Добавлено: 2011-09-28 13:20:58
GhOsT_MZ
Извиняюсь за некропостинг, но новую тему создавать не хотелось. Мой вопрос заключается в следующем: можно ли использовать снэпшоты для резервного копирования системы? Есть желание использовать их по образу и подобию майкрософтовских точек восстановления системы, так как было бы удобно перед обновлением какого-либо софта создать такую точку восстановления и в случае неудачи обвноления откатить систему на состояние до обновления, что сделает сервер доступным для пользователей, если обновление производилось в рабочее время. Так вот, в хэндбуке описан механизм создания, редактирования и удаления снэпшота, но вот ни слова об использовании снэпшотов в качестве резервной копии системы. Может кто-нибудь подскажет, как можно использовать снэпшоты с такой целью? И если это невозможно, то какие есть альтернативы, помимо dump/restore, ибо тупо копировать всю ФС - это накладно, как по времени, так и по объему дискового пространства?
Re: UFS2 snapshot
Добавлено: 2011-09-28 13:50:09
GhOsT_MZ
Вопрос почти отменяется, смотрю в сторону snapshot+mtree+mergemaster, поидее эта связка должна работать...
Re: UFS2 snapshot
Добавлено: 2011-09-28 15:54:48
GhOsT_MZ
Вообщем, вроде разобрался. mtree+mergemaster отменяется, ибо я не расчитывал что второй будет такой узкоспециализированный (надо было документацию предварительно читать). Остановился на варианте с rsync. Достаточно удобно, сейчас проверил на /tmp, вроде как работает, чуть позже изучу работу на живой системе, где это посложнее будет, ибо у них зависимости между собой (например, те же ссылки на файлы могут быть между файловыми системами), на которых можно попасть при синхронизации.
Ну а в простом случае, выглядит это следующим образом:
Создаем снэпшот перед опасным действием для всех файловых систем, которые могут затронут наши действия:
Код: Выделить всё
cd /tmp
mksnap_ffs /tmp/.snap/backup-`date "+%Y%m%d"`
Производим опасные действия.
Монтируем снэпшот:
Код: Выделить всё
mkdir /mnt/md0 (если каталог не существует)
mdconfig -a -t vnode -o readonly -f /tmp/.snap/backup-20110928
mount -o ro /dev/md0 /mnt/md0
Синхронизируем каталог со снэпшотом:
Код: Выделить всё
rsync -vcrlHpogx --progress --stats --delete --exclude '.snap*' /mnt/md0/ /tmp/
Здесь может быть что-то забыл, но вроде права, владелец сохраняются, а также создаются ссылки (жесткие и символические), которые были в снэпшоте. Единственное, жаль, что не сохраняется дата изменения файла и ACL... Ну а так, в целом, работает верно. Если не нужны тонны информации, выводимой в терминал, то можно исключить ключ
v.
Когда снэпшот уже не нужен, то:
Отмонтируем его:
Удалим виртуальное устройство:
Удалим сам файл снэпшота, когда он вообще не нужен:
Ну, в общем, примерно такой механизм... Если есть более адекватные варианты решения задачи, то подскажите...
Re: UFS2 snapshot
Добавлено: 2011-09-30 10:27:07
GhOsT_MZ
Что-то эта методика не айс... Сделал снэпшоты /, /usr, /var, обновил самбу, но после отката, который сам по себе ресурсоемкий и долгий, она отказалась пускать пользователей, хотя до этого она это делала... У кого-нибудь есть предложения, как можно это реализовать более грамотно и без использования zfs?