FAQ FreeBSD
Страница 34. Настройка загрузки


7.9. Как можно использовать загрузчик NT для запуска FreeBSD?

Эта процедура выглядит по разному для версий FreeBSD 2.2.x и 3.x (с трё
хступенчатым процессом загрузки системы).
Идея заключается в копировании первого сектора корневого раздела FreeBSD в
файл, находящийся в разделе DOS/NT. Предположим, что вы назвали этот файл c:\
bootsect.bsd (по аналогии с c:\bootsect.dos), после чего можете отредактировать
файл c:\boot.ini, чтобы он выглядел примерно так:
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
    C:\BOOTSECT.BSD="FreeBSD"
    C:\="DOS"

Для систем 2.2.x предполагается, что DOS, NT, FreeBSD или другая операционная
система были установлены в их соответствующие разделы fdisk на одном и том же
диске. В моём случае DOS & NT находятся на первом разделе fdisk, а FreeBSD на в
тором. Я также установил FreeBSD для загрузки с её раздела, а не из MBR.
Смонтируйте дискету в формате DOS (если вы используете NTFS) или раздел FAT,
скажем, в каталог /mnt.
    # dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1

Перезапустите DOS или NT. Пользователи NTFS должны скопировать файл
bootsect.bsd и/или bootsect.lnx с дискеты на диск C:\. Измените атрибуты (прав
а) на файл boot.ini следующим образом:
    C:\> attrib -s -r c:\boot.ini

Отредактируйте этот файл, добавив соответствующие строки из примерного boot.ini
выше, и восстановите атрибуты:
    C:\> attrib +s +r c:\boot.ini

Если FreeBSD загружается из MBR, восстановите его командой DOS fdisk после
того, как переконфигурировали их для загрузки с их "родных" разделов.
Для систем FreeBSD 3.x эта процедура выглядит несколько проще.
Если FreeBSD установлена на тот же самый диск, что и загрузочный раздел NT,
просто скопируйте /boot/boot1 в C:\BOOTSECT.BSD. Однако, если FreeBSD установ
лена на другой диск, то /boot/boot1 работать не будет, нужно копировать /boot/
boot0.

    WarningНЕ КОПИРУЙТЕ ПРОСТО /boot/boot0 ВМЕСТО /boot/boot1, ЭТИМ ВЫ
    ПЕРЕЗАПИШЕТЕ ТАБЛИЦУ РАЗДЕЛОВ ВИНЧЕСТЕРА И ВАШ КОМПЬЮТЕР ПЕРЕСТАНЕТ
    ЗАГРУЖАТЬСЯ!
/boot/boot0 нужно устанавливать с помощью sysinstall, выбрав менеджер загрузки
FreeBSD в диалоговом окне при выборе менеджера загрузки. Это потому что в /boot
/boot0 область таблицы разделов заполнена символами NULL, а sysinstall копирует
сюда таблицу разделов перед тем, как скопировать /boot/boot0 в область MBR.
При запуске менеджер загрузки FreeBSD задаёт ОС, которая загружалась последний
раз, устанавливая для этой операционной системы признак активизации в таблице
разделов, а затем записывает 512 байт самого себя обратно в MBR, так что если в
ы просто скопируете /boot/boot0 в C:\BOOTSECT.BSD, то в MBR будет записана
пустая таблица разделов с флагом активности в некотором месте.

7.10. Как загрузить FreeBSD и Linux с помощью LILO?

Если у вас установлены FreeBSD и Linux на одном и том же диске, следуйте
указаниям по установке LILO о загрузке не-Linux операционных систем. Они св
одятся к следующему:
Загрузите Linux, и добавьте следующие строки в файл /etc/lilo.conf:
    other=/dev/hda2
    table=/dev/hda
    label=FreeBSD
(здесь вы предполагаем, что слайс с FreeBSD известен Linux как /dev/hda2;
измените эту строку в соответствии с вашей конфигурацией). Затем достаточно
будет запустить lilo, войдя в систему как администратор.
Если FreeBSD располагается на другом диске, вам нужно добавить строчку loader=/
boot/chain.b в конфигурационный файл LILO. Например:
    other=/dev/dab4
    table=/dev/dab
    loader=/boot/chain.b
    label=FreeBSD

В некоторых случаях для успешной загрузки со второго диска вам может потребов
аться указать номер диска BIOS загрузчику FreeBSD. Например, если диск SCSI с
FreeBSD определяется BIOS как диск 1, в приглашении загрузчика FreeBSD нужно
указать:
    Boot: 1:da(0,a)/kernel

Во FreeBSD 2.2.5 и выше вы можете настроить boot(8) на автоматическое принятие
таких параметров во время загрузки.
В документе Linux+FreeBSD mini-HOWTO содержится много информации, касающейся в
заимодействия FreeBSD и Linux.

7.11. Как загрузить FreeBSD и Linux с помощью BootEasy?

Установите LILO в начало загрузочного раздела Linux, а не в Master Boot Record.
После этого можно запустить LILO из BootEasy.
Это рекомендуется сделать в любом случае при одновременном использовании
Windows-95 и Linux, чтобы упростить восстановление работоспособности Linux
после переинсталляции Windows95 (которая является Недоброжелательной
Операционной Системой и не терпит присутствия других операционных систем в
Master Boot Record).

7.12. Не угрожает ли режим "dangerously dedicated" моему здоровью?

В процессе установки вы можете выбрать два различных метода разбиения вашего
диска. По умолчанию это делается в режиме совместимости с другими операционными
системами на этой же машине с использованием записей в таблице разделов fdisk
(то, что называется "слайсом" во FreeBSD), со слайсом (разделом), выделенным
FreeBSD. Опционально, вы можете выбрать установку менеджера загрузки для
переключения между операционными системами. Либо вы можете выделить диск
полностью под FreeBSD, не заботясь о совместимости с другими операционными
системами.
Почему же этот режим называется "dangerous"? Дело в том, что диск в этом режиме
не будет содержать того, что обычные утилиты для ПК распознают как таблицу
разделов. В зависимости от того, насколько хорошо они написаны, они могут
сообщить вам об этом, как только обнаружат такой диск, или, что гораздо хуже,
могут запортить загрузчик BSD, даже не спрашивая и не сообщая об этом. К тому
же известно, что разметка диска в режиме "dangerously dedicated" вводит в
заблуждение BIOS многих производителей, включая AWARD (которые используются в
компьютерах HP Netserver, Micronics и многих других) и Symbios/NCR (произв
одителя популярных SCSI-контроллеров серии 53C8xx). И это не полный список,
есть ещё другие производители. Симптомами подобных проблем является сообщение
"read error", выводимое загрузчиком FreeBSD, когда он не может найти сам себя,
а также зависания системы при загрузке.
Тогда зачем вообще нужен этот режим? Он экономит всего лишь несколько килобайт
дискового пространства и может вызвать серьёзные проблемы при новой
инсталляции. Причиной появления этого режима является желание избежать появ
ления одной из самых распространённых проблем, с которой сталкиваются новички -
соответствие параметров BIOS и реальных параметров диска.
"Параметры" диска являются устаревшей концепцией, но она лежит в основе работы
BIOS с диском. Когда программа установки FreeBSD создаёт слайсы, она записывает
их расположение в соответствии с тем, как с ними будет работать BIOS. Если это
делается неправильно, вы не сможете выполнить загрузку системы.
Режим "dangerously dedicated" пытается обойти это, упрощая решение данной
проблемы. Иногда он делает это правильно. Однако это значит, что его нужно
использовать только как последнюю альтернативу - есть способы получше, решающие
проблему в 99 случаях из 100.
Итак, как избежать использования режима "DD" во время установки? Сначала
запишите параметры диска, которые сообщает BIOS. Вы можете выяснить это, застав
ив ядро вывести эти параметры при загрузке, указав -v в приглашении boot:, или
используя boot -v в загрузчике. Перед тем, как запустится программа установки,
ядро выведет параметры, используемые BIOS. Не волнуйтесь - подождите запуска
программы установки, а затем воспользуйтесь скроллингом, чтобы посмотреть
значения этих параметров. Как правило, BIOS нумерует диски в том же порядке,
что и FreeBSD, сначала IDE, затем SCSI.
Когда вы разбиваете диск на слайсы, проверьте, что параметры диска, выводимые в
окне программы FDISK, корректны (то есть они соответствуют параметрам BIOS);
если это не так, воспользуйтесь командой g, чтобы их исправить. Вы можете это
сделать, если на диске нет абсолютно ничего или если этот диск был перенесён с
другой системы. Заметьте, что это касается только загрузочного диска; FreeBSD
прекрасно разберётся с остальными дисками, которые могут у вас быть.
Как только вы добились соответствия параметров диска в BIOS и FreeBSD, скорее в
сего, проблем у вас больше не будет, и использовать режим "DD" не потребуется.
Если, однако, страшной сообщение "read error" продолжает появляться при
загрузке, самое время перекреститься и попробовать этот режим - терять вам
больше нечего.
Чтобы вернуть диск из режима "dangerously dedicated" к нормальному режиму
использования, есть два способа. Первый заключается в том, что вы записываете
достаточное количество байтов NULL поверх MBR, чтобы любой инсталлятор думал,
что это чистый диск. Это можно сделать, например, командой
    # dd if=/dev/zero of=/dev/rda0 count=15

Другой способ - недокументированной командой DOS
    C:\> fdisk /mbr

проинсталлировать новую MBR, удалив загрузчик BSD.

 
« Предыдущая статья