Merge the following from the English version:

(new) -> 1.12 Makefile
   (new) -> 1.39 article.sgml

Submitted by:	Vitaly Bogdanov <gad@gad.glazov.net>
Obtained from:	The FreeBSD Russian Documentation Project
This commit is contained in:
Denis Peplin 2005-06-10 08:26:32 +00:00
parent 4cd535a62b
commit 5bf362c1a3
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=24801
2 changed files with 754 additions and 0 deletions
ru_RU.KOI8-R/articles/multi-os

View file

@ -0,0 +1,22 @@
#
# The FreeBSD Russian Documentation Project
#
# $FreeBSD$
# $FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/multi-os/Makefile,v 1.1 2005/05/19 15:55:28 gad Exp $
#
# Original revision: 1.12
#
# Article: Installing and Using FreeBSD With Other Operating Systems
DOC?= article
FORMATS?= html
WITH_ARTICLE_TOC?= YES
INSTALL_COMPRESSED?=gz
INSTALL_ONLY_COMPRESSED?=
SRCS= article.sgml
DOC_PREFIX?= ${.CURDIR}/../../..
.include "${DOC_PREFIX}/share/mk/doc.project.mk"

View file

@ -0,0 +1,732 @@
<!--
The FreeBSD Russian Documentation Project
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/multi-os/article.sgml,v 1.3 2005/06/10 08:03:28 den Exp $
$FreeBSD$
Original revision: 1.39
-->
<!DOCTYPE ARTICLE PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
<!ENTITY % articles.ent PUBLIC "-//FreeBSD//ENTITIES DocBook FreeBSD Articles Entity Set//EN">
%articles.ent;
]>
<article lang=ru>
<articleinfo>
<title>Установка и использование FreeBSD совместно с другими операционными системами</title>
<authorgroup>
<author>
<firstname>Jay</firstname>
<surname>Richmond</surname>
<affiliation>
<address>
<email>jayrich@sysc.com</email>
</address>
</affiliation>
</author>
<author>
<firstname>Виталий</firstname>
<surname>Богданов</surname>
<contrib>Перевод на русский язык: </contrib>
</author>
</authorgroup>
<pubdate>6 августа 1996</pubdate>
<legalnotice id="trademarks" role="trademarks">
&tm-attrib.freebsd;
&tm-attrib.ibm;
&tm-attrib.linux;
&tm-attrib.microsoft;
&tm-attrib.powerquest;
&tm-attrib.general;
</legalnotice>
<abstract>
<para>В этом документе описывается как заставить FreeBSD нормально сосуществовать
с другими популярными операционными системами, такими как, Linux, &ms-dos;,
&os2;, и &windows; 95. Отдельное спасибо: Annelise Anderson
<email>andrsn@stanford.edu</email>, Randall Hopper
<email>rhh@ct.picker.com</email>, и &a.jkh;.</para>
</abstract>
</articleinfo>
<sect1>
<title>Введение</title>
<para>Большинство людей не в состоянии установить несколько операционных
систем без применения дополнительного винчестера большего размера.
По этой причине была добавлена информация по работе с EIDE дисками. Существует
большое количество всевозможных комбинаций устанавливаемых операционных систем
и конфигураций жёсткого диска, поэтому <xref linkend="ch5"> может оказаться наиболее
полезным. В нем содержатся описания специфичных рабочих конфигураций, использующих несколько
операционных систем.</para>
<para>Чтение данного документа предполагает, что на вашем жёстком диске
имеется выделенное пространство для размещения дополнительной операционной
системы. Всякий раз, при изменении таблицы разделов, повышается
риск порчи данных на уже существующих разделах. В случае, если раздел DOS
единственный на вашем диске, вы можете использовать утилиту FIPS, находящуюся
на компакт-диске с FreeBSD в каталоге <filename>\TOOLS</filename>
или на <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.
С её помощью вы можете изменять таблицу разделов без потери данных. Существует также
коммерческая программа <application>&partitionmagic;</application>, которая даёт
возможность изменять размер и удалять разделы без тяжёлых последствий.</para>
</sect1>
<sect1 id="ch2">
<title>Обзор менеджеров загрузки</title>
<para>Ниже представлены описания некоторых часто встречаемых менеджеров загрузки.
В зависимости от установок вашего компьютера, возможно, вы будете
использовать несколько из них на одной системе.</para>
<variablelist>
<varlistentry>
<term>Boot Easy</term>
<listitem>
<para>Этот менеджер загрузки используется во FreeBSD по умолчанию.
Он может загружать любую операционную систему, включая BSD,
&os2; (HPFS), &windows; 95 (FAT и FAT32), и Linux.
Разделы выбираются с помощью функциональных клавиш.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>&os2; Boot Manager</term>
<listitem>
<para>Этот менеджер может работать с разделами FAT, FAT32, HPFS,
FFS (FreeBSD), и EXT2 (Linux). Разделы выбираются с помощью
клавиш со стрелками. The &os2; Boot Manager единственный менеджер
загрузки, использующий свой отдельный раздел, в отличии от
других, которые используют master boot record (MBR). Следовательно,
он должен быть установлен до 1024 цилиндра, чтобы избежать проблем
с загрузкой. Данный менеджер может загружать Linux, используя LILO,
когда последний находится в загрузочном секторе раздела. Смотрите <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOWTOs</ulink> для дополнительной информации о загрузке Linux
с помощью the &os2; boot manager.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>OS-BS</term>
<listitem>
<para>Данный менеджер - альтернатива Boot Easy. Он предоставляет
больше контроля над процессом загрузки, с возможностью выбора раздела по
умолчанию и booting timeout. Бета версии этих программ позволяют выбирать
ОС с помощью стрелок. Данную программу можно найти на диске
с FreeBSD в папке <filename class="directory">\TOOLS</filename> или на <ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LILO, или LInux LOader</term>
<listitem>
<para>Ограниченный менеджер загрузки. После некоторых манипуляций с
конфигурационным файлом, способен загружать FreeBSD.</para>
</listitem>
</varlistentry>
</variablelist>
<note id="fat32">
<title>Несколько слов про FAT32</title>
<para>FAT32 - это замена файловой системы FAT, впервые
появившаяся в Microsoft's OEM SR2 Beta release. Своим
появлением к концу 1996 года, FAT32 начала вытеснять FAT
с компьютеров с установленной &windows; 95. FAT32 - это
продолжение файловой системы FAT. Она позволяет использовать
кластеры меньшего размера для больших жёстких дисков. Также
были внесены изменения в структуру загрузочного сектора и в таблицу
секторов, сделав её тем самым, несовместимой с некоторыми менеджерами
загрузки.</para>
</note>
</sect1>
<sect1 id="ch3">
<title>Пример типичной установки</title>
<para>Предположим, что у меня есть 2 EIDE диска большого объёма. Мне
надо установить FreeBSD, Linux и &windows; 95.</para>
<para>Вот как бы я это сделал:</para>
<itemizedlist>
<listitem>
<para><filename>/dev/wd0</filename> (первый жёсткий диск)</para>
</listitem>
<listitem>
<para><filename>/dev/wd1</filename> (второй жёсткий диск)</para>
</listitem>
</itemizedlist>
<para>У обоих дисков 1416 цилиндра.</para>
<procedure>
<step>
<para>Используя загрузочную дискету от &ms-dos; или &windows; 95, с
помощью утилиты <filename>FDISK.EXE</filename> на первом диске
создаю первичный (primary) раздел размером 50&nbsp;MB (35-40
для &windows; 95, плюс немного свободного места) . Затем на втором
диске создаю раздел побольше для моих &windows; приложений и данных.</para>
</step>
<step>
<para>Перезагружаюсь и устанавливаю &windows; 95 (легче сказать, чем сделать)
на диск <filename>C:</filename> .</para>
</step>
<step>
<para>Дальше устанавливаю Linux. Не уверен про все дистрибутивы Linux,
но в <ulink url="http://www.slackware.com">Slackware</ulink> LILO
включен по умолчанию (смотрите <xref linkend="ch2">). С помощью
<command>fdisk</command> от Linux выделяю место на первом
диске (примерно 300&nbsp;MB под большой раздел root и немного под swap).</para>
</step>
<step>
<para>LILO устанавливаю в загрузочный сектор Linux root раздела, а не в
MBR (master boot record).</para>
</step>
<step>
<para>Оставшееся на дисках место отдаю FreeBSD. Убеждаюсь, что
мой FreeBSD root раздел не выходит за пределы 1024 цилиндра (на наших
гипотетических 720&nbsp;MB дисках 1024 цилиндр равен 528&nbsp;MB).
Пространство первого диска (примерно 270&nbsp;MB) отдам под разделы
<filename class="directory">/usr</filename> и <filename class="directory">/</filename>.
Остаток второго жёсткого диска (его размер зависит от размера раздела под
&windows; приложения/данные, выделенного мною на первом шаге)
можно выделить под <filename class="directory">/usr/src</filename> раздел и swap
пространство.</para>
</step>
<step>
<para>При просмотре в программе <command>fdisk</command> от &windows; 95
мои диски должны выглядеть примерно так:
<screen>---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 1
Partition Status Type Volume_Label Mbytes System Usage
C: 1 A PRI DOS 50 FAT** 7%
2 A Non-DOS (Linux) 300 43%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------
Display Partition Information
Current fixed disk drive: 2
Partition Status Type Volume_Label Mbytes System Usage
D: 1 A PRI DOS 420 FAT** 60%
Total disk space is 696 Mbytes (1 Mbyte = 1048576 bytes)
Press Esc to continue
---------------------------------------------------------------------</screen>
** FAT16 или FAT32. Зависит от того, используется ли OEM SR2
update. Подробнее в <xref linkend="ch2"> .</para>
</step>
<step>
<para>Устанавливаю FreeBSD. В настройках BIOS для моего первого диска
должна стоять опция <quote>NORMAL</quote>. Если это не так, то
я ввожу реальные данные геометрии диска во время
загрузки. Чтобы их узнать - загружаю &windows; 95 и смотрю необходимую
информацию в Microsoft Diagnostics (<filename>MSD.EXE</filename>)
или смотрю их в BIOS. Ввожу <literal>hd0=1416,16,63</literal>,
где <replaceable>1416</replaceable> - количество цилиндров на моем
диске, <replaceable>16</replaceable> - количество головок,
<replaceable>63</replaceable> - количество секторов на дорожку.</para>
</step>
<step>
<para>При разбивке диска устанавливаю Boot Easy на первый жёсткий
диск. Не стоит беспокоиться о втором диске, т.к. там нечему загружаться.</para>
</step>
<step>
<para>После перезагрузки Boot Easy должен определить мои три
загружаемых раздела, как DOS (&windows; 95), Linux и BSD (FreeBSD).</para>
</step>
</procedure>
</sect1>
<sect1 id="ch4">
<title>Важные замечания</title>
<para>Большинство операционных систем очень придирчивы в вопросах, где и
как они будут установлены на диске. &windows; 95 и DOS должны быть
установлены в первичный (primary) раздел на первом жёстком диске. &os2;
не требует таких ограничений. Она может быть установлена на первый или
второй диск в первичный (primary) или расширенный (extended) раздел. Если вы не
уверены, то располагайте начало загрузочных разделов до 1024 цилиндра.</para>
<para>Если вы устанавливаете &windows; 95 на компьютер с уже установленной BSD
системой, то установка <quote>уничтожит</quote> ваш MBR, и вам надо будет заново
переустановить ваш предыдущий загрузчик. Boot Easy может быть
переустановлен с помощью программы <filename>BOOTINST.EXE</filename>,
расположенной на установочном диске FreeBSD в
каталоге <filename class="directory">\TOOLS</filename> или
на <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/">ftp</ulink>.
Также вы можете заново начать процесс установки. В редакторе разделов
для FreeBSD раздела поставьте флаг "загрузочный", выберите менеджер загрузки,
а затем нажмите W, чтобы записать ((W)rite) информацию в MBR. После перезагрузи
Boot Easy должен определить &windows; 95, как DOS.</para>
<para>Заметьте, что &os2; поддерживает FAT и HPFS, но не FFS (FreeBSD)
или EXT2 (Linux) разделы. Аналогично, &windows; 95 может работать только с
файловыми системами FAT и FAT32 (смотрите <xref linkend="ch2">). FreeBSD может
работать с большинством файловых систем, но на сегодняшний день не
поддерживает HPFS разделы. Linux может читать HPFS разделы, но не может
писать на них. Последние версии Linux kernel (2.x) поддерживают &windows; 95
VFAT разделы (VFAT поддерживает длинные имена файлов в &windows; 95,
а в основном это тот же самый FAT). Linux тоже умеет работать с большим
количеством файловых систем.</para>
</sect1>
<sect1 id="ch5">
<title>Примеры</title>
<para><emphasis>(Глава нуждается в доработке, пожалуйста присылайте ваши примеры
на адрес <email>jayrich@sysc.com</email>)</emphasis>.</para>
<para>FreeBSD + &windows; 95: Если вы установили FreeBSD следом за &windows; 95,
то в меню Boot Easy вы увидите <literal>DOS</literal>. Это и есть
&windows; 95. Если же вы установили &windows; 95 после FreeBSD, то пожалуйста
прочтите <xref linkend="ch4"> . Если у вашего диска меньше 1024 цилиндров, то
у вас не должно быть проблем с загрузкой. Если один из ваших разделов лежит
за допустимыми границами, а от DOS (&windows; 95) вы получаете сообщения,
типа <errorname>invalid system disk</errorname>, а FreeBSD отказывается
загружаться, то проверьте наличие опции <quote>&gt; 1024 cylinder
support</quote> или <quote>NORMAL/LBA</quote> режима в вашем BIOS. DOS, для
нормальной загрузки, может нуждаться в LBA (Logical Block Addressing). Если
переключение настроек в BIOS каждый раз при загрузке не привлекает вас, то
вы можете загружать FreeBSD из DOS, используя утилиту <filename>FBSDBOOT.EXE</filename>,
расположенную на вашем CD (находит FreeBSD раздел и загружает его).</para>
<para>FreeBSD + &os2; + &windows; 95: The &os2; Boot Manager может
загружать все эти системы. Думаю, что здесь не должно быть проблем.</para>
<para>FreeBSD + Linux: Можете использовать Boot Easy.</para>
<para>FreeBSD + Linux + &windows; 95: (смотрите <xref linkend="ch3">)</para>
</sect1>
<sect1 id="sources">
<title>Другие источники информации</title>
<para>Существует большое количество <ulink
url="http://www.linuxresources.com/LDP/HOWTO/HOWTO-INDEX.html">Linux
HOW-TOs</ulink>, в которых рассматриваются вопросы использования нескольких операционных
систем на одном диске.</para>
<para>В <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+DOS+Win95+OS2.html">Linux+DOS+Win95+OS2
mini-HOWTO</ulink> можно найти информацию по настройке &os2; boot
manager. Полезными могут быть следующие ссылки: <ulink
url="http://www.linuxresources.com/LDP/HOWTO/mini/Linux+FreeBSD.html">Linux+FreeBSD
mini-HOWTO</ulink>, и <ulink url="http://www.in.net/~jkatz/win95/Linux-HOWTO.html">Linux-HOWTO</ulink>.</para>
<para>Статья <ulink
url="http://www.tburke.net/info/ntldr/ntldr_hacking_guide.htm">&windowsnt;
Loader Hacking Guide</ulink> содержит полезную информацию по
мультизагрузке &windowsnt;, &windows; 95 и DOS с другими операционными
системами.</para>
<para>В архиве документации от Hale Landis <quote>How It Works</quote> содержится
много интересной информации по всем видам геометрии диска и по процессу
загрузки. Доступен по адресу:
<ulink url="ftp://fission.dt.wdc.com/pub/otherdocs/pc_systems/how_it_works/allhiw.zip"></ulink>.</para>
<para>И наконец, не забывайте про документацию ядра FreeBSD по процедуре
загрузки, доступную в исходных текстах ядра (смотрите
файл <ulink
url="file://localhost/usr/src/sys/i386/boot/biosboot/README.386BSD">/usr/src/sys/i386/boot/biosboot/README.386BSD</ulink>.</para>
</sect1>
<sect1>
<title>Технические подробности</title>
<para><emphasis>(Главу написал Randall Hopper,
<email>rhh@ct.picker.com</email>)</emphasis></para>
<para>В этой главе я попытаюсь дать достаточно основной информации,
касающейся жёстких дисков и процесса загрузки, так, чтобы при наличии
определенных проблем, у вас не возникло трудностей при их
разрешении. Глава начинается с довольно простых терминов,
так что, при желании вы можете спокойно пропустить часть главы
и начать чтение с незнакомой для вас информации.</para>
<sect2>
<title>Вводная информация по дискам</title>
<para>Существует три фундаментальных термина, определяющих
расположение данных на жёстком диске: цилиндры, головки и
сектора (Cylindres, Heads, Sectors). Совсем не обязательно
знать, что означает в отдельности каждый из этих терминов,
главное, что вместе они определяют физическое расположение
данных на вашем винчестере.</para>
<para>На диске находится определенное количество цилиндров, головок
и секторов на цилиндр-головку (другое название - дорожка (track) ). Вместе
данная информация определяет
<quote>физическую геометрию диска</quote>. В одном секторе 512 байт,
и 63 сектора на одной дорожке. Количество цилиндров и головок
различно у каждого диска. Таким образом можно подсчитать размер
вашего диска в байтах:</para>
<informalexample>
<para>(# of cylinders) &times; (# heads) &times; (63
sectors/track) &times; (512 bytes/sect)</para>
</informalexample>
<para>Возьмем, к примеру, мой жесткий диск 1.6Gb Western Digital AC31600 EIDE:</para>
<informalexample>
<para>(3148 cyl) &times; (16 heads) &times; (63
sectors/track) &times; (512 bytes/sect)</para>
</informalexample>
<para>Получаю 1,624,670,208 байт, что примерно равно 1.6 гигабайт.</para>
<para>Как вы можете заметить, физическая геометрия диска
(количество цилиндров, головок и секторов на дорожку), показываемая в
программе ATAID и во многих других не соответствует
действительности. Вероятно ваш жёсткий диск тоже характеризуется
параметрами, полученными этими программами. Будьте
осторожны: если вы используйте BIOS LBA (смотрите <xref linkend="limits">),
вы не можете использовать любую программу для получения
данных физической геометрии. Это происходит по причине того,
что многие программы (например, <filename>MSD.EXE</filename> или
fdisk от FreeBSD) не работают с физической геометрией,
вместо этого они показывают
данные <firstterm>измененной геометрии</firstterm> (виртуальные номера,
полученные с помощью LBA). Читайте дальше, чтобы узнать что это значит.</para>
<para>Номер цилиндра, номер головки и
номер сектора в пределах дорожки характеризуют сектор на
диске (блок данных размером в 512B). Цилиндры и головки нумеруются
начиная с нуля, а сектора с единицы.</para>
<para>Для тех кто заинтересовался дополнительной информацией, касающейся
геометрии диска, загрузочных секторов, BIOS и т.д. могут найти все
необходимое в сети. Проверьте Query Lycos, Yahoo и др. по ключевым словам
<literal>boot sector</literal> или <literal>master boot record</literal>.
Среди другой полезной информации, вы найдете архив документов от
Hale Landis <citetitle>How It Works</citetitle>. В <xref
linkend="sources"> находится ссылка на этот архив.</para>
<para>Достаточно терминологии. Давайте поговорим о загрузке.</para>
</sect2>
<sect2 id="booting">
<title>Процесс загрузки</title>
<para>В первом секторе вашего диска (0 цилиндр, 0 головка, 1 сектор)
находится главная загрузочная запись (Master Boot
Record (MBR) ). В ней содержится информация о разделах
вашего диска. Там может храниться информация о 4
<firstterm>разделах</firstterm>. Для обозначения разделов во FreeBSD используют
термин <firstterm>slices</firstterm> (слайсы), чтобы не возникало путаницы с её
собственными разделами, но это не относится к нашей теме. На каждый из разделов
можно установить операционную систему.</para>
<para>Каждая запись в MBR состоит из полей <firstterm>Partition
ID</firstterm>, <firstterm>Start Cylinder/Head/Sector</firstterm> и
<firstterm>End Cylinder/Head/Sector</firstterm>. Partition ID
сообщает нам к какому типу файловой системы (к какой ОС) относится данный
раздел, а Start/End говорит о местонахождении данного
раздела. В таблице <xref linkend="tbl-pid"> представлено несколько
примеров Partition IDs.</para>
<table id="tbl-pid">
<title>Partition IDs</title>
<tgroup cols="2">
<thead>
<row>
<entry>ID (hex)</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry>01</entry>
<entry>Primary DOS12 (12-bit FAT)</entry>
</row>
<row>
<entry>04</entry>
<entry>Primary DOS16 (16-bit FAT)</entry>
</row>
<row>
<entry>05</entry>
<entry>Extended DOS</entry>
</row>
<row>
<entry>06</entry>
<entry>Primary big DOS (&gt; 32MB)</entry>
</row>
<row>
<entry>0A</entry>
<entry>&os2;</entry>
</row>
<row>
<entry>83</entry>
<entry>Linux (EXT2FS)</entry>
</row>
<row>
<entry>A5</entry>
<entry>FreeBSD, NetBSD, 386BSD (UFS)</entry>
</row>
</tbody>
</tgroup>
</table>
<para>Не все разделы могут быть загружаемыми (например, Extended
DOS). Некоторые могут&mdash;некоторые нет. Настройка
<firstterm>загрузочного сектора раздела</firstterm>, присутствующего
в начале, позволяет сделать раздел загружаемым.</para>
<para>Когда вы настраиваете ваш любимый загрузчик,
он просматривает MBR каждого диска и дает вам возможность присвоить
имена найденным разделам. При загрузке из MBR вашего первого
диска запускается менеджер загрузки. Он просматривает информацию
о выбранном вами разделе и использует значение поля
Start Cylinder/Head/Sector для передачи управления загрузочному сектору
вашего раздела. В свою очередь этот загрузочный сектор содержит
достаточно информации для загрузки операционной системы.</para>
<para>Один немаловажный момент: на каждом диске есть свой MBR, но
используется MBR того диска, который определяется BIOS
первым. Если у вас только IDE диски,
то основным будет первый диск на первом контролёре. Похожая
схема и для SCSI дисков. Если у вас имеется
и IDE, и SCSI диск, то BIOS первым определит IDE диск. Загрузочный
менеджер будет установлен на первый определившийся диск.</para>
</sect2>
<sect2 id="limits">
<title>Ограничения при загрузке и предупреждения</title>
<para>Интересная информация, которую стоит прочитать.</para>
<sect3>
<title>Ограничение в 1024 цилиндра и чем может помочь BIOS LBA</title>
<para>Первая часть загрузочного процесса происходит на уровне
BIOS (если это термин новый для вас, BIOS это программируемый
чип, находящийся на материнской плате, который обеспечивает
компьютер загрузочным кодом). И так, первая часть процесса
загрузки может подвергаться ограничениям BIOS.</para>
<para>На данном этапе интерфейс BIOS производит чтение
диска (INT 13H, 2 подфункция) и выделяет 10 бит на номер
цилиндра, 8 бит на номер головки и 6 бит на номер
сектора. Это сильно ограничивает пользователей
данного интерфейса (менеджеров загрузки, находящихся в MBR, а
также загрузчиков ОС, находящихся в загрузочных секторах) следующими
значениями:</para>
<itemizedlist>
<listitem>
<para>Максимально возможное количество цилиндров - 1024</para>
</listitem>
<listitem>
<para>Максимально возможное количество головок - 256</para>
</listitem>
<listitem>
<para>Максимально возможное количество секторов на дорожку -
64 (если точнее, то 63, <literal>0</literal>
не используется)</para>
</listitem>
</itemizedlist>
<para>В настоящее время у жёстких дисков большое количество
цилиндров, но мало головок и, несомненно, что количество
цилиндров в современных винчестерах превышает 1024. Учитывая
данный факт и интерфейс BIOS мы теперь не можем грузиться с
любого места диска. Загрузочный код (менеджеры загрузки и
загрузчики ОС, находящиеся на всех
загружаемых разделах) должен располагаться до 1024
цилиндра. Если у вас обычный жесткий диск с 16 головками,
то он равен:</para>
<informalexample>
<para>1024 cyl/disk &times; 16 heads/disk &times; 63
sect/(cyl-head) &times; 512 bytes/sector</para>
</informalexample>
<para>Это примерно равно часто упоминаемому лимиту в 528MB.</para>
<para>Вот здесь на помощь приходит режим BIOS
LBA (Logical Block Addressing). BIOS LBA предоставляет
пользователям вызовов BIOS API доступ к цилиндрам, лежащим
выше 1024 цилиндра, посредством переопределения
цилиндра. Данный режим переназначает количество цилиндров и
количество головок, делая его для BIOS диском, видимым
с меньшим количеством цилиндров и большим количеством
головок. Другими словами, используется преимущество того факта,
что жёсткие диски имеют сравнительно небольшое количество
головок и гораздо больше цилиндров. Происходит изменение
баланса между количеством цилиндров и головок, так, что
теперь оба параметра умещаются в выше упомянутые
ограничения (1024 цилиндра, 256 головок).</para>
<para>С BIOS LBA предел объёма жёсткого диска виртуально
убирается (переносится на 8Гб). Если у вас поддерживается
LBA BIOS, то вы можете установить FreeBSD или любую другую
ОС в какое угодно место на диске, не боясь 1024 цилиндра.</para>
<para>Возьмем, к примеру, мой жёсткий диск
1.6 Gig Western Digital. Вот данные его физической геометрии:</para>
<informalexample>
<para>(3148 cyl, 16 heads, 63 sectors/track, 512
bytes/sector)</para>
</informalexample>
<para>BIOS LBA преобразует их к виду:</para>
<informalexample>
<para>(787 cyl, 64 heads, 63 sectors/track, 512
bytes/sector)</para>
</informalexample>
<para>В итоге получается тот же размер диска, но с
количеством цилиндров и головок, лежащим в пределах
значений BIOS API. На одном из моих дисков установленные
Linux и FreeBSD находятся за 1024 физическим
цилиндром. Благодаря BIOS LBA, обе операционные системы
нормально загружаются.</para>
</sect3>
<sect3>
<title>Выделение дополнительного места для менеджерa загрузки</title>
<para>Другой момент, на который следует обратить
внимание - выделение пространства для менеджера
загрузки. Следует хорошо разбираться в данном вопросе, чтобы
избавить себя от повторных переустановок одной или нескольких
ОС.</para>
<para>Если вы смотрели <xref linkend="booting"> и читали про
главную загрузочную запись (MBR), загрузочные сектора разделов и
процесс загрузки, возможно у вас появился вопрос о том,
где ваш менеджер загрузки будет располагаться. Некоторые
менеджеры довольно малы и они вместе с таблицей разделов
нормально умещаются в Master Boot Sector. Другие требуют
дополнительного пространства и обычно используют несколько
секторов на дорожке с 0 цилиндром и 0 головкой, находящейся
после MBR, так как обычно она свободна&hellip;обычно.</para>
<para>В этом и состоит уловка. Некоторые операционные системы,
включая FreeBSD, позволяют создавать разделы, начинающиеся
сразу после MBR (0 цилиндр, 0 головка, 2 сектор). Если в
программе sysinstall вы укажите полностью свободный диск
или с свободным пространством в начале, то FreeBSD создаст
радел, начинающийся именно с самого начала диска (так было,
когда я в последний раз занимался этим вопросом). Затем,
когда вы будете устанавливать менеджер загрузки, требующий
несколько дополнительных секторов, то вы затрете начальные
данные первого раздела. В случае с FreeBSD, вы потеряете
disk label, что приведет к невозможности загрузки с FreeBSD
раздела.</para>
<para>Самый простой путь избежать данной проблемы и
позже попробовать другие менеджеры загрузки - при разбивке
диска всегда оставлять первую дорожку диска вне
разделов. Это значит, что надо оставить свободное место,
начиная с 0 цилиндра, 0 головки, 2 сектора до 0 цилиндра, 1 головки,
63 сектора и создать первый раздел, начинающийся с
0 цилиндра, 1 головки, 1 сектора. Полезно в начале диска
создавать DOS раздел, так как он оставляет данное место свободным
(по этой причине менеджеры загрузки предполагают, что
начало диска свободно). Я предпочитаю создавать в начале
диска DOS раздел размером в 1 мегабайт, так как это также предотвращает
изменения букв дисков, представляющих первичные (primary) разделы,
при последующем изменении таблицы разделов.</para>
<para>Следующие менеджеры загрузки используют Master Boot Sector
для хранения своего кода и данных:</para>
<itemizedlist>
<listitem>
<para>OS-BS 1.35</para>
</listitem>
<listitem>
<para>Boot Easy</para>
</listitem>
<listitem>
<para>LILO</para>
</listitem>
</itemizedlist>
<para>Эти менеджеры загрузки требуют несколько дополнительных секторов
после Master Boot Sector:</para>
<itemizedlist>
<listitem>
<para>OS-BS 2.0 Beta 8 (сектора со 2 по 5)</para>
</listitem>
<listitem>
<para>The &os2; boot manager</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Что делать если компьютер вдруг отказывается загружаться?</title>
<para>В некоторый момент, при установке загрузчиков, ваш MBR может
оказаться в таком состоянии, что вы не сможете
загрузиться. Это маловероятно, но возможно, например, при
повторном разбиении диска с уже установленным загрузчиком.</para>
<para>Если у вас имеется DOS раздел, то вы можете загрузиться с
загрузочной DOS дискеты и выполнить команду:</para>
<informalexample>
<screen>A:\> <userinput>FDISK /MBR</userinput></screen>
</informalexample>
<para>Это заново установит в MBR загрузочный код
DOS. Теперь вы можете загружать DOS и только DOS.
Аналогично, просто перезапустите установку вашего менеджера
загрузки с загрузочной дискеты.</para>
</sect3>
</sect2>
</sect1>
</article>