====== FreeBSD: переносим файлы ОС с одного диска на другой ====== Что есть: диск с установленным на него ОС FreeBSD Что нужно: перенести файлы на второй диск, чтобы можно было загрузиться со второго диска ===== Подготовка ===== 1. Монтируем файловые системы на исходном диске и диске назначения по вашему вкусу. Если файловая система - zfs, то могут сильно помочь команды: * zpool import -f -R /mnt <имя пула> где ключи: * -f - форсированное монтирование * -R - монтировать файловые системы ZFS по указанному пути а также: * mount -t zfs <имя пула zfs> <точка монтирования> Эта команда позволит смонтировать корневую файловую систему 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 <путь к файлу с флагами> ) Это собственно все. Надеюсь, основная идея была понятной. Если нет, то смотрим ссылки, там все разжевано. ===== Ссылки ===== - http://keramida.wordpress.com/2008/09/14/moving-a-freebsd-installation/ - http://www.tech-recipes.com/rx/115/copy-files-and-directories-recursively-with-tar/ - http://mysyslog.ru/posts/313 TAG: {{tag> FreeBSD}} ~~DISCUSSION~~