Резервное копирование выполняется при помощи команды "gpart backup", которая в специальном текстовом формате выводит информацию о таблице разделов. Эту информацию можно перенаправить в файл, либо отдать на вход команде "gpart restore". Небольшой пример:
# gpart backup ada0 MBR 4 1 freebsd 63 20964762 [active] 2 ntfs 20964825 40965750 3 freebsd 61930575 18362295 # gpart backup ada1 GPT 128 1 freebsd-boot 34 512 boot 2 freebsd-swap 546 8388608 swap 3 freebsd-zfs 8389154 311783869 zfsКак можно догадаться, первоя строка в выводе - это опции команды "gpart create", следующие - для "gpart add". У команды restore есть несколько ключей:
gpart restore [-lF] [-f flags] provider [...]Ключ "-l" указывает gpart восстанавливать символические метки разделов, которые по-умолчанию не восстанавливаются. С ключем "-F" gpart перед восстановлением уничтожит таблицу разделов на носителе, куда будет восстанвливаться резервная копия. Иначе, если там будет обнаружена какая-либо таблица разделов, он просто завершится с ошибкой. Ну и ключ -f выполняет те же функции, что и у дргих подкоманд - откладывает запись всех изменений на носитель до вызова команды commit. Т.е. если вы не уверены в своих действиях - этот ключ ваш лучший товарищ.
Теперь немного примеров по использованию. Типичные действия для резервного копирования:
# gpart backup ada0 > ada0.backup # cat ada0.backup MBR 4 1 freebsd 63 20964762 [active] 2 ntfs 20964825 40965750 3 freebsd 61930575 18362295Теперь этот ada0.backup на ответственное хранение в сейф. И вдруг, после
Бежите к сейфу, загружаетесь с livefs и восстанавливаете таблицу разделов:
# gpart restore ada0 < /mnt/ada0.backupТеперь более реальный пример. Вы захотели к уже установленной системе подключить ещё один диск и сделать зеракало на ZFS:
# gpart backup ada0 | gpart restore ada1
Нет, вы параноик и вы подключили 2 жестких диска и хотите сделать тройное зеркало, не проблема:
# gpart backup ada0 | gpart restore ada1 ada2Теперь пример для неопытных пользователей:
# gpart backup ada0 | gpart restore -F -f x ada1 # gpart showО, боже! Не тот диск, вы уничтожили диск с фотографиями вашей жены! =) Спокойно, -f вас спас:
# gpart undo ada1
Вот так вот, немного шутя можно работать с gpart. А ещё у меня новость, мои менторы освободили меня от "надзора" :) Теперь я стал самостоятельным коммитером.
PS. Ещё раз хочу заметить, что gpart backup/restore выполняют копирование и восстановление ТОЛЬКО таблицы разделов. Данные, находящиеся на этих разделах, бэкапить и восстанавливать нужно отдельно. В том числе, и содержимое в разделы freebsd-boot нужно записывать повторно.