НАЗВАНИЕ
backup - сохранение файловой системы, восстановление
данных
ОПИСАНИЕ
Здесь излагаются самые общие соображения относительно
сохранения и восстановления данных. Имеется в виду сохранение файловой системы или тома на другом носителе и
восстановление данных, ранее сохраненных на другом носителе. Предполагается, что сохраняемая информация находится на диске.
Сохранение
Содержимое диска может быть сохранено в виде:
Сколько лент (дисков, дискет) необходимо иметь и на какую ленту выполнять очередное копирование?
Если у Вас много кассет с лентой, можно рекомендовать порядок копирования, совпадающий с порядком перекладывания дисков Ханойской башни: 1, 2, 1, 3, 1, 2, 1, 4, ..., то есть использовать ленту 1 для каждой второй копии, ленту 2 - для каждой четвертой, ленту 3 - для каждой восьмой и т.д. Если у Вас всего две кассеты, целесообразно пользоваться утилитой copall(1M), контролирующей их чередование. В любом случае логическая копия предпочтительнее физической.
Для сохранения используются следующие утилиты:
Рекомендуется иметь на дискете минимальный вариант системы на случай серьезного повреждения диска, когда с него невозможно загрузиться. Для получения минимального варианта используйте утилиту mkmini(1M).
Восстановление
Как восстановить диск после серьезного повреждения?
Сначала нужно загрузить систему с какого-либо другого носителя, например с дискеты.
Затем с помощью отладчика файловых систем fsdb(1M) попытайтесь установить масштабы повреждения и, если это возможно, вручную ликвидируйте самые тяжелые из них. После этого попробуйте привести файловую систему в корректное состояние утилитой fsck(1M), даже ценой потери некоторой части информации, которую придется восстановить с логической копии утилитой restall(1M).
Если повреждения не поддаются ликвидации, диск придется отформатировать. Затем, если имеется физическая копия, информация восстанавливается утилитой dd(1). Если же имеется только логическая копия, на отформатированном диске нужно создать минимальный вариант системы, загрузиться с диска и восстановить информацию с логической копии командами вида
cd /; dd if=/dev/mt bs=256k | cpio -idmvu
Проверьте, созданы ли каталоги /mnt, /tmp, /lost+found, в каком состоянии файлы /etc/checklist, /etc/fstab и, конечно, файл /unix.
Сохранение/восстановление с помощью ленты и диска в памяти
Более сложной является ситуация, когда нет возможности
загрузить систему ни с диска, ни с дискеты. В этом случае нужно воспользоваться комбинацией лента/диск в памяти. В вариант системы, загружаемый с ленты, должен
входить драйвер диска в памяти /usr/src/uts/io/rd.c;
должно быть доступно не менее 2 Мб памяти.
Подготовьте ленту, с которой можно загрузить систему. Сделать это достаточно один раз, готовясь к полному краху. Лента готовится следующим образом:
Конфигурируется UNIX-ядро с такими характеристиками:
Создайте минимальный вариант системы [см. mkmini(1M)] размером порядка 900 Кб на свободном логическом диске и скопируйте в корневой каталог полученной файловой системы сконфигурированное ядро. Выполните физическое копирование диска на ленту.
Затем ведите нормальную жизнь, регулярно копируйте диск и ждите полного краха.
Когда (не дай бог!) крах наступил, восстанавливайтесь так:
Загрузите систему с заготовленной ленты. Программа начальной загрузки прочтет ленту на диск в памяти, а с точки зрения ядра диск в памяти ничем не отличается от других дисков. Более того, загруженному ядру другие диски не нужны. Дальнейшая процедура восстановления не отличается от описанной выше. Например, можно отформатировать поврежденный основной диск и использовать копию.
СМ. ТАКЖЕ
copall(1M), mkmini(1M), restall(1M), saveto(1M),
vsplit(1M).
cpio(1), dd(1) в Справочнике пользователя.