Перенос FreeBSD на другой жесткий диск

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Перенос FreeBSD на другой жесткий диск

Сообщение Trojan »

Пробую перенести FreeBSD на другой винт ЭТИМ способом.

Проделаные шаги:

1. Выключил FreeBSD машину -> подсоединил второй винт.
2. Включил -> запустил Sysinstall -> Configure -> Fdisk -> выбрал ad1.
3. Создал слайс на всем диске (a) -> q -> w*

*при попытке записи вышло вот такое предупреждение:

Изображение

выбрал YES.

4. При выходе из Fdsik выбрал установку стандартной MBR.
5. Далее создал вручную разделы.

И вот тут я сейчас остановился. В статье написано:

Выходим из Fdisk и заходим в Label, выбираем ad2 нажимаем 'a' (auto-defaults for all), это создаст partition'ы для /, /var, /usr, swap; или можно выбрать размер каждой partition вручную. Затем, чтобы /stand/sysinstall смог отформатировать и сразу смонтировать, надо создать директории: /mnt/root, /mnt/var, /mnt/usr, командой 'm' для каждой partition указать одну из точек монтирования (mount points), нажать 'w' (write changes). После этого программа создаст файловые системы и примонтирует их к указанным точкам монтирования.

Непонятно где именно нужно создавать директории /mnt/root, /mnt/var, /mnt/usr, что за команда 'm' такая и нужно ли для выполнения вего этого выходить из sysinstall.

Большая просьба кто в этом разобрался разъясните подробнее что нужно сделать.
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Poor Fred »

Trojan писал(а):
19.08.2009 12:10
Непонятно где именно нужно создавать директории /mnt/root, /mnt/var, /mnt/usr, что за команда 'm' такая и нужно ли для выполнения вего этого выходить из sysinstall.

Создавать не надо, сам создаст. В любом случае - выходить не надо, достаточно переключиться в другую консоль. Создавать в каталоге /mnt. m - команда labeleditor'а.

Вообще написано вполне понятно. Очень странные вопросы.
Убить всех человеков!
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Trojan »

Создаю точки монтирования:

Код: Выделить всё

FreeBSD Disklabel Editor

Disk: ad1       Partition name: ad1s1   Free: 0 blocks (0MB)

Part      Mount          Size Newfs   Part      Mount          Size Newfs
----      -----          ---- -----   ----      -----          ---- -----
ad1s1a    /mnt/        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /mnt/var     2048MB UFS2+S N
ad1s1e    /mnt/usr     2048MB UFS2+S N
ad1s1f    /mnt/home    1919MB UFS2+S N

Далее я согласно статье должен записать изменения командой W, но мне система выдает следующее:

Изображение

и точно так же с /mnt/var, /mnt/usr и /mnt/.
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Перенос FreeBSD на другой жесткий диск

Сообщение ivan2ksusr »

Вы опять не понимаете что делаете :dash3: :suicide:
Внимательно вкуриваем handbook и видим командочку "m" - mount pnt.

Код: Выделить всё

ad1s1a    /mnt/        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /mnt/var     2048MB UFS2+S N
ad1s1e    /mnt/usr     2048MB UFS2+S N
ad1s1f    /mnt/home    1919MB UFS2+S N


эта запись не корректна

воспользуйтесь clonehdd
читаем здесь: clonehdd
Спасибо сказали:
Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Poor Fred »

ivan2ksusr писал(а):
19.08.2009 16:12
Вы опять не понимаете что делаете :dash3: :suicide:

Именно.

Trojan, тебе необходимо создать несколько разделов, временно смонтировать их куда-либо (у тебя это /mnt), и затем restore'ить дампы (или даже просто тарболы) существующих разделов. Поэтому будущий root нельзя монтировать в /mnt, в /mnt/root тогда уж.
Убить всех человеков!
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Перенос FreeBSD на другой жесткий диск

Сообщение ivan2ksusr »

Да дело в том что он уже смонтировал рутовый раздел в mnt и туда же монтирует другие разделы, что делать нельзя
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Trojan »

ivan2ksusr писал(а):
19.08.2009 16:12
Вы опять не понимаете что делаете :dash3: :suicide:
Внимательно вкуриваем handbook и видим командочку "m" - mount pnt.

Код: Выделить всё

ad1s1a    /mnt/        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /mnt/var     2048MB UFS2+S N
ad1s1e    /mnt/usr     2048MB UFS2+S N
ad1s1f    /mnt/home    1919MB UFS2+S N

Poor Fred писал(а):
19.08.2009 17:43
Trojan, тебе необходимо создать несколько разделов, временно смонтировать их куда-либо (у тебя это /mnt), и затем restore'ить дампы (или даже просто тарболы) существующих разделов. Поэтому будущий root нельзя монтировать в /mnt, в /mnt/root тогда уж.

Дело в том что я пробовал просто создавать разделы вручную без использования команды m

Код: Выделить всё

ad1s1a    /        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /var     2048MB UFS2+S N
ad1s1e    /usr     2048MB UFS2+S N
ad1s1f    /home    1919MB UFS2+S N

но почему то после рестарта машины, слайс оставался, а разделы исчезали.

ivan2ksusr писал(а):
19.08.2009 16:12
воспользуйтесь clonehdd
читаем здесь: clonehdd

ivan2ksusr, спасибо большое что делитесь ссылками по теме, я обязательно попробую и этот метод, но ведь люди пишут что по статье у них получалось. Вот и мне тоже хочется.
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
AlexNT
Сообщения: 433
ОС: FreeBSD 8.2, ArchLinux

Re: Перенос FreeBSD на другой жесткий диск

Сообщение AlexNT »

Trojan писал(а):
19.08.2009 21:40
...


Вам для начала нужно понять что из себя представляет процесс переноса. Если Вы не понимаете куда и что монтируете, то ничего собственно и не получится. Почему Вы не пытаетесь даже минимальные навыки работы с системой освоить? Потратте немного времени на выполнение тривиальных задач, почитайте про файловую систему. Научитесь флешки чтоли монтировать для начала. Монтирование каталога в /mnt как выше заметили сводит все ваши действия на нет. Для того чтобы производить какие то сложные операции надо сначала изучить простые, т.к. все сложное состоит из нескольких простых вещей...

На одну только Вашу фразу: Непонятно где именно нужно создавать директории /mnt/root... - уже хочется рыдать.
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Trojan »

AlexNT писал(а):
19.08.2009 22:46
Вам для начала нужно понять что из себя представляет процесс переноса. Если Вы не понимаете куда и что монтируете, то ничего собственно и не получится. Почему Вы не пытаетесь даже минимальные навыки работы с системой освоить? Потратте немного времени на выполнение тривиальных задач, почитайте про файловую систему. Научитесь флешки чтоли монтировать для начала. Монтирование каталога в /mnt как выше заметили сводит все ваши действия на нет. Для того чтобы производить какие то сложные операции надо сначала изучить простые, т.к. все сложное состоит из нескольких простых вещей...

На одну только Вашу фразу: Непонятно где именно нужно создавать директории /mnt/root... - уже хочется рыдать.

Признаю, из статьи пропустил такой момент что перед монтированием нужно создать директории /mnt/root, /mnt/var, /mnt/usr и /mnt/home. Эти директории я создал. Далее при создании разделов я согласно статье должен примонтировать созданные разделы командой м. Монтирую:

Код: Выделить всё

ad1s1a    /mnt/        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /mnt/var     2048MB UFS2+S N
ad1s1e    /mnt/usr     2048MB UFS2+S N
ad1s1f    /mnt/home    1919MB UFS2+S N

а далее при ппытке записать изменения выходит сообщение:

Изображение

которое говорит что устройство /dev/ad1s1f невозможно примонтировать к /mnt/home. Тут все правильно, ведь устройство ad1s1 не содержит директории /mnt/home, на нем вообще ничего нет.

Я правильно понимаю что моя ошибка в том что система при попытке монтирования обращается не к первому диску, а ко второму диску, который я пытаюсь примонтировать? Если да, то как сделать, чтобы система обращалась к первому диску?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
Poor Fred
Сообщения: 1575
Статус: Pygoscelis papua
ОС: Gentoo Linux, FreeBSD

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Poor Fred »

Trojan писал(а):
20.08.2009 17:00

Код: Выделить всё

ad1s1a    /mnt/        2048MB UFS2+S N
ad1s1b    swap          128MB SWAP
ad1s1d    /mnt/var     2048MB UFS2+S N
ad1s1e    /mnt/usr     2048MB UFS2+S N
ad1s1f    /mnt/home    1919MB UFS2+S N

а далее при ппытке записать изменения выходит сообщение:

Мда... А то, что выше про root и /mnt говорилось для кого писалось? "Чукча не читатель, чукча писатель"?
Убить всех человеков!
Спасибо сказали:
Аватара пользователя
Trojan
Сообщения: 359
Статус: Системный ламер
ОС: CentOS 7

Re: Перенос FreeBSD на другой жесткий диск

Сообщение Trojan »

Вобщем ребята проблему решил. Сделал все заново:

1. Создал нужные директории в /mnt.
2. Разбил второй винт, создал на нем нужные разделы.
2. Примонтировал их в Label Disk Editor к точкам монтирования.
4. Записал изменения (по непонятной мне причине в этот раз команда w ошибок не выдала как в предыдущие разы).
5. Перенес все с первого диска на второй.
6. Заменил диски.

Сейчас все вроде работает, но у меня еще один вопрос: после переноса системы на новом диске в каждом разделе есть такой файл (хотя это вроде и не файл и не директория вовсе) restoresymtable. Этот файл надо сохранять или можно удалить?
Всегда думай то, что говоришь и никогда не говори то, что думаешь.

Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Перенос FreeBSD на другой жесткий диск

Сообщение ivan2ksusr »

Рррр
делаем раз и делаем два :)

Код: Выделить всё

bsd# dmesg |grep ad
FreeBSD is a registered trademark of The FreeBSD Foundation.
pnpbios: Bad PnP BIOS data checksum
em0: Ethernet address: 08:00:27:b1:b5:47
uhub0: <Apple OHCI root hub, class 9/0, rev 1.00/1.00, addr 1> on usb0
uhub1: <Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1> on usb1
acpi_acad0: <AC Adapter> on acpi0
ad4: 10240MB <VBOX HARDDISK 1.0> at ata2-master SATA300
ad6: 10240MB <VBOX HARDDISK 1.0> at ata3-master SATA300
ad8: 10240MB <VBOX HARDDISK 1.0> at ata4-master SATA300


новый диск ad8

далее sysinstall >

Код: Выделить всё

Disk name:      ad8                                    FDISK Partition Editor
DISK Geometry:  20805 cyls/16 heads/63 sectors = 20971440 sectors (10239MB)

Offset       Size(ST)        End     Name  PType       Desc  Subtype    Flags

         0         63         62        -     12     unused        0
        63   20971377   20971439    ad8s1      8    freebsd      165
  20971440         80   20971519        -     12     unused        0

The following commands are supported (in upper or lower case):

A = Use Entire Disk   G = set Drive Geometry   C = Create Slice   F = `DD' mode
D = Delete Slice      Z = Toggle Size Units    S = Set Bootable   | = Wizard m.
T = Change Type       U = Undo All Changes     W = Write Changes


Use F1 or ? to get more help, arrow keys to select.


далее все по описанию:

Код: Выделить всё

$ su -
Password:
bsd# cd /mnt
bsd# mkdir root
bsd# mkdir usr
bsd# mkdir var
bsd# mkdir swap

и тд

далее по описанию:

Код: Выделить всё

Disk: ad8       Partition name: ad8s1   Free: 0 blocks (0MB)

Part      Mount          Size Newfs   Part      Mount          Size Newfs
----      -----          ---- -----   ----      -----          ---- -----
ad8s1a    /mnt/root     486MB UFS2+S Y
ad8s1b    swap          441MB SWAP
ad8s1d    /mnt/var      934MB UFS2+S Y
ad8s1e    /mnt/tmp      473MB UFS2+S Y
ad8s1f    /mnt/usr     7905MB UFS2+S Y


The following commands are valid here (upper or lower case):
C = Create        D = Delete   M = Mount pt.            W = Write
N = Newfs Opts    Q = Finish   S = Toggle SoftUpdates   Z = Custom Newfs
T = Toggle Newfs  U = Undo     A = Auto Defaults        R = Delete+Merge

Use F1 or ? to get more help, arrow keys to select.


получаем:

Код: Выделить всё

bsd# df -h
Filesystem            Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm4s1a    989M    148M    762M    16%    /
devfs                 1.0K    1.0K      0B   100%    /dev
/dev/mirror/gm4s1e    989M     22K    910M     0%    /tmp
/dev/mirror/gm4s1f    6.3G    3.5G    2.3G    61%    /usr
/dev/mirror/gm4s1d    989M    282M    628M    31%    /var
devfs                 1.0K    1.0K      0B   100%    /var/named/dev
/dev/ad8s1a           471M    4.0K    433M     0%    /mnt/root
/dev/ad8s1e           458M    4.0K    421M     0%    /mnt/tmp
/dev/ad8s1f           7.5G    4.0K    6.9G     0%    /mnt/usr
/dev/ad8s1d           899M    4.0K    827M     0%    /mnt/var


проще не бывает
далее получаем
/dev/ad8s1a 471M 4.0K 433M 0% /mnt/root

Код: Выделить всё

bsd# cd /mnt/root; dump -f- / | restore -rf-
  DUMP: WARNING: should use -L when dumping live read-write filesystems!
  DUMP: Date of this level 0 dump: Fri Aug 21 10:08:42 2009
  DUMP: Date of last level 0 dump: the epoch
  DUMP: Dumping /dev/mirror/gm4s1a (/) to standard output
  DUMP: mapping (Pass I) [regular files]
  DUMP: mapping (Pass II) [directories]
  DUMP: estimated 150520 tape blocks.
  DUMP: dumping (Pass III) [directories]
  DUMP: dumping (Pass IV) [regular files]
warning: ./.snap: File exists
  DUMP: DUMP: 150510 tape blocks
  DUMP: finished in 32 seconds, throughput 4703 KBytes/sec
  DUMP: DUMP IS DONE
bsd# df -h
Filesystem            Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm4s1a    989M    148M    762M    16%    /
devfs                 1.0K    1.0K      0B   100%    /dev
/dev/mirror/gm4s1e    989M     22K    910M     0%    /tmp
/dev/mirror/gm4s1f    6.3G    3.5G    2.3G    61%    /usr
/dev/mirror/gm4s1d    989M    282M    628M    31%    /var
devfs                 1.0K    1.0K      0B   100%    /var/named/dev
/dev/ad8s1a           471M    148M    284M    34%    /mnt/root
/dev/ad8s1e           458M    4.0K    421M     0%    /mnt/tmp
/dev/ad8s1f           7.5G    4.0K    6.9G     0%    /mnt/usr
/dev/ad8s1d           899M    4.0K    827M     0%    /mnt/var


и видим
dev/ad8s1a 471M 148M 284M 34% /mnt/root

может я не так что делал . Оо



P.s. ну вот.. только пример написал :) в общем Trojan создал опять проблему на ровном месте, все же научитесь читать маны
Спасибо сказали: