Добавление жестких дисков для FreeBSD версий 2.2.5 и выше

  1. Введение
  2. Немного терминологии
  3. Прежде чем начать
  4. Работа в Fdisk Partition Editor
  5. Работа в Disk Label Editor
  6. Подведем итоги

Введение.

Этот документ описывает как наиболее быстро и удобно добавить новый жесткий диск к системе, работающей под управлением FreeBSD. Все действия, описываемые ниже были опробованы на FreeBSD 2.2.5 и 2.2.6. В более ранних версиях возможна некорректная работа Disk Label Editor.

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

Наиболее простым и удобным способом для добавления новых жестких дисков и создания на них разделов и файловых систем является использование утилиты sysinstall.

Сначала немного терминологии.

Первоначально при разметке нового диска на нем создаются разделы. В терминах FreeBSD их называют slice, в терминах DOS - partition. На одном диске можно создать до четырех разделов. Каждая операционная система располагается в отдельном slice. С точки зрения BIOS, раздел - это объединение определенного числа смежных секторов. Информация о разделах хранится в slice table, которая в DOS называется Partition Table. Эта таблица используется BIOS для определения загрузочного раздела. В связи с этим, при создании на диске разделов при помощи sysinstall. Вы можете выбрать два варианта:

Compatibility mode
этот режим используется по умолчанию. На диске создается таблица разделов, что позволяет использовать этот диск совместно с другими операционными системами. Сохраняется возможность установкии бут-менеджера типа BOOTEASY, если на диске инсталлируется несколько операционных систем.
Dangerously mode
в этом режиме таблица разделов не создается, FreeBSD использует весь диск, с 0-го сектора до последнего. При этом загрузчик FreeBSD располагается в 0-ом секторе, т.е. он использует MBR, вследствие чего у Вас не остается места для инсталляции бут-менеджера. Попытки записать что-либо в MBR приведут к уничтожению загрузчика FreeBSD и потере операционной системы! Использование диска в таком формате может вызвать проблемы - некоторые BIOS не могут корректно распознать загрузочный сектор такого диска, не находят таблицу разделов, и соответственно отказываются производить загрузку операционной системы. Поэтому никогда не делайте Ваш загрузочный диск в dangerously режиме! Разделы в свою очередь делятся на логические диски в DOS или на partition в FreeBSD. (Не путать с термином partition в DOS!) Т.е. для FreeBSD partition - это деление slice. Каждая файловая система или облась swap располагается в отдельном partition. Можно иметь до 8 partition, (реально - до 7, т.к. partition 'c' используется всегда, обозначая весь slice). При работе с утилитой sysinstall разделы (slice) на диске создаются при помощи Fdisk Partition Editor, а partition cсоздаются в Disk Label Editor.

Прежде чем начать.

Итак, рассмотрим следующий пример: нужно в качестве Secondary Master добавить IDE-диск, на котором требуется создать два раздела - DOS и FreeBSD. На первом IDE контроллере уже находятся один диск и один дисковод CD-ROM. На добавляемом диске требуется на FreeBSD-разделе отвести место для swap, а остальное пространство использовать как одну файловую систему.

Перед началом работы убедитесь, что используемое Вами ядро поддерживает тот тип дисков, который Вы будете добавлять. Также необходимо наличие в каталоге /dev всех необходимых файлов устройств. В частности, в нашем случае необходимо наличие файлов wd2s1* и wd2s2*. Если их нет, то создайте их, дав следующие команды:

	MAKEDEV wd2s1a
	MAKEDEV wd2s2a

Далее, лучше заранее создать точки подмонтировки - т.е. те каталоги, к которым Вы будете монтировать новые файловые системы, создаваемые на добавляемых дисках. Вфайлов нашем примере мы будем использовать для этих целей каталог /new_disk. Итак,в общем виде мы должны сделать следующее: с помощью Fdisk Partition Editor разбить диск на разделы (slice), затем перейти в Disk Label Editor и разметить созданные slice на partition. После этого, находясь в Disk Label Editor, мы даем команду 'W'-Записать изменения.Эта команда разметит диск в соответствие нашими изменениями и смонтирует вновь созданные файловые системы, а также добавит область swap для использования. Все, теперь можно переходить непосредственно к добавлению диска.

Работа в Fdisk Partition Editor.

Запускаем sysinstall. В главном меню выбираем пункт Custom. Сначала диск надо разбить на разделы, поэтому выбираем пункт Partition. Так как в системе присутствуют два IDE-диска, то в следующем окне Вам надо выбрать диск, который Вы будете размечать. Будьте очень внимательны на этом шаге! Неправильный выбор может полностью разрушить Вашу систему!

В нашем случае мы выбираем диск wd2. После этого мы попадаем в Fdisk Partition Editor. В левом верхнем углу указано имя диска который мы будем размечать. Если по ошибке Вы выбрали не тот диск, дайте команду 'Q' - Выход. В этом случае никакие изменения на диск записаны не будут. Заметим также, что в процессе разметки диска все изменения не записываются до тех пор, пока Вы не датите команду 'W' - Записать изменения. Поэтому, до тех пор пока Вы не дадите эту команду, можно в любой момент прервать процедуру разметки диска дав команду 'Q' - Выход (независимо от того, где в этот момент Вы находитесь - в Fdisk Partition Editor или в Disk Label Editor), а затем полностью выйти из sysinstall. При этом диск останется в том же состоянии, что и в момент запуска sysinstall.

Теперь можно начинать создавать разделы. Для этого дайте команду 'С' - Создать slice. Вам предложат указать размер создаваемого раздела - либо в блоках, либо в мегабайтах, указав после цифры букву 'M'. Затем нужно указать тип создаваемого раздела - 6 для DOS, 165 для FreeBSD, 131 для Linux. Сначала мы создаем DOS-раздел указав тип '6'. Вновь созданный раздел сразу же отображается на экране: в поле Name мы видим wd2s1, в поле Desc указан тип раздела - fat. Аналогично создаем второй раздел - wd2s2, его тип freebsd.

Если Вы ошиблись при создании раздела, то можно с помощью команды 'D' - Удалить slicе удалить его, после чего переразметить диск по Вашему желанию. Обратите внимание, что при созданиии slice диск по умолчанию размечается в Compatibility режиме. Единственный способ разметить диск в Dangerously режиме - это дать команду 'A'- Использовать весь диск, после чего Вам будет задан вопрос - размечать ли диск в Compatibility режиме, или в Dangerously. Лучше остановить свой выбор на Compatibility режиме.

После того, как мы создали необходимые slice нужно выйти из Fdisk Partition Editor дав команду 'Q' - Выход. (Давать команду 'W'-Записать изменения после завершения работы в Fdisk Partition Editor не нужно!). Вы попадете в меню, где Вам будет предложено записать на диск бут-менеджер. Если он Вам не нужен укажите пункт None. Затем Вы попадете в меню где надо снова указать, какой диск Вы размечаете (укажите тот же диск, что и в начале!), после чего Вы вернетесь в меню Custom. На этом первый этап по добавлению диска закончен. Можно переходить к следующему шагу.

Работа в Disk Label Editor

Теперь мы должны поделить наш slice на partition, поэтому выбираем пункт Label. Вы попадете в утилиту Disk Label Editor. Тут вы увидите, что на диске уже есть один partition - это то пространство, которое мы отвели для DOS. Информация о нем может выглядеть примерно так:

	Part	Mount		Size	Newfs
	wd2s1	none		24MB	DOS

На диске просто создан соответствующий DOS-раздел, который потом надо будет сформатировать в DOS обычной программой format, т.к. sysinstall не проводит форматирование 'чужих' разделов. Находясь в FreeBSD Вы сможете в дальнейшем смонтировать этот DOS-partition с помощью команды

	mount_msdos /dev/wd2s1 директория
где директория - точка подмонтировки DOS-раздела.

Если внести в файл /fstab соответствующую строку, то можно обойтись более простой командой, об этом будет сказано позднее.

Находясь в Disk Label Editor Вы можете перемещаться между созданными на предыдущем этапе slice с помощью клавиш управления курсором. Для создания partition в нашем случае нужно выбрать раздел wd2s2 и дать команду 'C' - Создать. Сначала требуется задать размер создаваемого patition - либо в блоках, либо в мегабайтах, указав после цифры букву 'M'. Затем нужно выбрать тип создаваемого partition, т.е. указать что на нем будет размещаться - область swap или фаиловая система. Если выбрать Swap, то сразу будет создан соответствующий partition, и теперь разметка диска выглядит следующим образом:

	Part	Mount		Size	Newfs
	wd2s1	none		24MB	DOS
	wd2s2b	swap		10MB	SWAP

Заметим, что имя 'b' по умолчанию используется для обозначения partition отведенных для swap. Теперь аналогичным образом создаем еще один partition, отдав ему все оставшееся место на диске, но указываем, что на нем будет размещаться файловая система - для этого в соответствующем меню выбираем пункт FS. После этого нужно указать точку подмонтировки новой файловой системы, и это должна быть обязательно свободная точка монтировки! Чтобы посмотреть какие файловые системы у Вас смонтированы в настоящий момент можно дать следующую команду:

	df -k

Она выведет информацию о смонтированных файловых системах, все размеры будут даны в килобайтах, и покажет к каким каталогам они подмонтированы. Ни в коем случае не указывайте для новой файловой системы ни одну из этих точек монтировки! Причина в том, что при записи изменений на диск sysinstall попытается сразу же подмонтировать новый partition к указанной точке монтировки, и, если она будет занята, у вас могут возникнуть неприятности. Так как мы заранее создали для этой цели новый каталог, то его мы и укажем в качестве точки монтировки для нового раздела: /new_disk.

Теперь информация о разбиении диска выглядит следующим образом:

	Part	Mount		Size	Newfs
	wd2s1	none		24MB	DOS
	wd2s2b	swap		10MB	SWAP
	wd2s2e	/new_disk	90MB	Y

Обратите внимание, что флаг Newfs для нового раздела стоит "Y" - это означает что на этом partition (wd2s2e) будет создана новая файловая система (аналогично форматированию логического диска в DOS). Итак, если Вы полностью уверены, что диск размечен именно так, как Вам необходимо, то можно сделать самое главное - записать наши изменения на диск с помощью команды 'W'-Записать изменения. Если все пройдет нормально, то после завершения работы этой команды Вы снова вернетесь в Disk Label Editor, откуда теперь можно выйти, после чего надо полностью выйти из sysinstall.

Подведем итоги.

Если Вы дадите снова команду df -k, то увидите, что появилась новая файловая система, смонтированная к каталогу /new_disk. Также увеличился и объем области swap, что можно проверить при помощи команды top, которая помимо другой полезной информации выводит и размер swap-area. Теперь осталось увековечить наши изменения, внеся соответствующие записи в файл /etc/fstab:

# Device	Mountpoint	FStype	Options      Dump Pass#
/dev/wd2s2b	none		swap	sw		0 0
/dev/wd2s2e	/new_disk	ufs	rw		1 2
/dev/wd2s1	/dos_disk	msdos	rw,noauto	0 0

Последняя строчка позволит Вам в дальнейшем при необходимости монтировать DOS-раздел с помощью одной простой команды:

	mount /dos_disk

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


Copyright (C) by Сергей В. Данилов, 1998.
Editing (E) Дмитрий Ю. Карпов