Что есть: диск с установленным на него ОС FreeBSD Что нужно: перенести файлы на второй диск, чтобы можно было загрузиться со второго диска
1. Монтируем файловые системы на исходном диске и диске назначения по вашему вкусу.
где ключи:
а также:
Эта команда позволит смонтировать корневую файловую систему zfs, которая по-умолчанию не монтируется командой zpool import.
2. Далее переносим с помощью tar исходные файлы на диск назначения. К примеру, в /mnt/source у нас смонтирована исходная файловая система, в /mnt/destination - файловая система назначения. Тогда:
cd /mnt # tar -C source -cf - . | tar -C target -xvf - с помощью ключа -X мы можем указать tar, какие файлы не нужно копировать. Пример: -X /tmp/xlist
3. Это еще не все. Нам нужно перенести специальные флаги. Идея такая: снимаем информацию по флагам в отдельный файл с исходных файлов, и основываясь на этой информации, применяем флаги к скопированным данным. Вот как это можно сделать:
# cd /mnt/source # mtree -c > <файл с флагами> # ( cd /mnt/destination ; mtree -deU -f <путь к файлу с флагами> )
Это собственно все. Надеюсь, основная идея была понятной. Если нет, то смотрим ссылки, там все разжевано.