hb-install-x86-bootloader.xml переведен

Василий Голубев <[email protected]>
Newsgroups gmane.linux.gentoo.documentation.russian
Message-ID <1110039629.6759.16.camel@localhost>
Всем привет!
Готово, высказывайте пожелания, замечания.
----------------------------------------------

<?xml version='1.0' encoding='UTF-8'?>
<!-- REV: 1.25 -->
<!DOCTYPE sections SYSTEM "/dtd/book.dtd">

<!-- The content of this document is licensed under the CC-BY-SA license
-->
<!-- See http://creativecommons.org/licenses/by-sa/1.0 -->

<!--
$Header: /var/www/www.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/en/handbook/hb-install-x86-bootloader.xml,v 1.25 2005/01/04 18:11:21 swift Exp $ -->

<sections>

<version>1.21</version>
<date>2004-12-23</date>

<section>
<title>Делаем выбор</title>
<subsection>
<title>Введение</title>
<body>

<p>
Теперь, когда ядро сконфигурировано и собрано, необходимые системные
файлы отредактированы 
должным образом, пришло время установить программу, которая будет
запускать ваше ядро при старте 
системы. Такого рода программа называется <e>загрузчик</e>. Для
архитектуры x86 Gentoo Linux предоставляет
загрузчики <uri link="#grub">GRUB</uri> и <uri link="#lilo">LILO</uri>.
Но прежде, чем приступить к установке одного из 
двух загрузчиков, мы расскажем как настроить framebuffer (естественно
если вы хотите). Используя
framebuffer вы сможете работать в консоли Linux, используя (ограниченно)
графику (например, 
симпатичная картинка при загрузке, как это сделано во время начала
установки Gentoo).
</p>

</body>
</subsection>
<subsection>
<title>Опционально: Framebuffer</title>
<body>

<p>
<e>Если</e> вы настроили в ядре поддержку framebuffer'а (или
использовали настройки 
по умолчанию в <c>genkernel</c>), вы должны будете добавить параметр
<c>vga</c>
в файл конфигурации вашего загрузчика, если желаете использовать
framebuffer.
В приведенной таблице вы можете найти доступные значения для <c>vga</c>.
В нашем примере мы использовали <e>800x600 @ 16bpp</e>, следовательно
значение из таблицы берем равным <e>788</e>.
</p>

<p>
Значения для <e>vga</e>:
</p>

<table>
<tr>

<ti></ti><th>640x480</th><th>800x600</th><th>1024x768</th><th>1280x1024</th>
</tr>
<tr>
  <th>8 bpp</th><ti>769</ti><ti>771</ti><ti>773</ti><ti>775</ti>
</tr>
<tr>
  <th>16 bpp</th><ti>785</ti><ti>788</ti><ti>791</ti><ti>794</ti>
</tr>
<tr>
  <th>32 bpp</th><ti>786</ti><ti>789</ti><ti>792</ti><ti>795</ti>
</tr>
</table>

<p>
Если вы используете ядро 2.6 и в его настройке указали использование
vesafb-tng, тогда 
вы должны использовать параметр <c>video</c>, вместо приведенного выше. 
Синтаксис: &lt;ширина&gt;x&lt;высота&gt;-&lt;глубина
цвета&gt;@&lt;частота обновления&gt;, 
например <c>1024x768-16@60</c>.
</p>

<p>
Более подробная информация находится в
<path>/usr/src/linux/Documentation/fb/vesafb.txt</path>.
</p>


<p>
Запомните (или запишите) значение, которое вы подобрали, скоро оно
понадобится.
</p>

<p>
Продолжаем установку <uri link="#grub">GRUB</uri> <e>или</e> <uri
link="#lilo">LILO</uri>.
</p>

</body>
</subsection>
</section>
<section id="grub">
<title>По умолчанию используем GRUB</title>
<subsection>
<title>Введение в терминологию GRUB'а</title>
<body>

<p>
Самым сложным моментом в освоении GRUB является понимание того, 
как он именует жесткие диски и разделы. Ваш Linux раздел
<path>/dev/hda1</path> 
именуется <path>(hd0,0)</path> в терминологии GRUB. Обратите внимание
на 
круглые скобки вокруг <path>hd0,0</path> - они обязательны.
</p>

<p>
Жесткие диски нумеруются, начиная с 0, а не с "а". Разделы, также
нумеруются, начиная с 0, а не с "1".
Необходимо отметить, что под hd подразумеваются только жесткие диски,
atapi-ide 
устройства, такие как cdrom или пишущий cdrom не учитываются. Тоже самое
относится и к устройствам
scsi (обычно они получают номера большие, чем ide устройства, исключая
те случаи, когда 
BIOS настроена на загрузку с устройства scsi).
<p>
Предположим у вас жесткий диск <path>/dev/hda</path>, cdrom
<path>/dev/hdb</path>,
пишущий cdrom <path>/dev/hdc</path>, второй жесткий диск
<path>/dev/hdd</path> и в системе
нет устройств SCSI, тогда раздел <path>/dev/hdd7</path> будет
именоваться как <path>(hd1,6)</path>.
Это может звучать странно, но GRUB обладает механизмом автодополнения
при нажатии на 
tab, что облегчает жизнь обладателям большого количества жестких дисков
с большим 
количеством разделов и тем, кто чувствует себя неуверенно в схеме
нумерации GRUB'ом устройств.
</p>

<p>
Настало время установить GRUB.
</p>

</body>
</subsection>
<subsection>
<title>Установка GRUB</title>
<body>

<p>
Установим GRUB в систему:
</p>

<pre caption = "Установка GRUB">
# <i>emerge grub</i>
</pre>

<p>
Несмотря на то, что GRUB установлен, нам все же надо подправить его файл
конфигурации и 
разместить GRUB в MBR, чтобы он автоматически загружал ваше, вновь
созданное ядро. 
Создайте <path>/boot/grub/grub.conf</path>, используя <c>nano</c> (или,
если угодно, 
другой редактор):
</p>

<pre caption = "Создаем /boot/grub/grub.conf">
# <i>nano -w /boot/grub/grub.conf</i>
</pre>

<p>
Теперь мы заполним <path>grub.conf</path> нашими значениями. Ниже
приведены два 
возможных примера настройки <path>grub.conf</path> для схемы разделения
дисков из наших 
примеров. В примерах мы используем образ ядра
<path>kernel-2.4.26-gentoo-r9</path>. Первый из 
примеров <path>grub.conf</path> содержит подробные комментарии.
Удостоверьтесь, что вы 
используете имена файлов, которые содержат <e>ваш</e> образ ядра и, при
необходимости, 
<e>ваш</e> initrd образ.
</p>

<ul>
  <li>
    Первый пример <path>grub.conf</path> предназначен для тех, кто не
пользовался 
    <c>genkernel</c> для сборки ядра.
  </li>
  <li>
    Второй пример <path>grub.conf</path> предназначен для тех, кто
пользовался 
    <c>genkernel</c> для сборки ядра.
  </li>
</ul>

<pre caption = "grub.conf для тех, кто не пользовался genkernel">
<comment># Пункт меню, загружаемый по умолчанию: 0 - первый, 1 - второй
и т.д.</comment>
default 0
<comment># Время задержки (в секундах) до начала загрузки пункта меню по
умолчанию.</comment>
timeout 30
<comment># Симпатичная картинка :)
# Закомментируйте эту строку, если у вас не установлена графическая
видеокарта</comment>
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.4.26-r9
<comment># Раздел, где находится файл образа ядра (или вся операционная
система)</comment>
root (hd0,0)
kernel /kernel-2.4.26-gentoo-r9 root=/dev/hda3

<comment># Следующие четыре строки только для тех у кого параллельно
установлена Windows.</comment>
<comment># В этом примере Windows установлена на /dev/hda6.</comment>
title=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
</pre>


<pre caption = "grub.conf для тех, кто пользовался genkernel">
default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.4.26-r9
root (hd0,0)
kernel /kernel-2.4.26-gentoo-r9 root=/dev/ram0 init=/linuxrc
ramdisk=8192 real_root=/dev/hda3
initrd /initrd-2.4.26-gentoo-r9

<comment># Только для возможности загрузки Windows</comment>
title=Windows XP
root (hd0,5)
makeactive
chainloader +1
</pre>


<note>
Если схема разделения вашего жесткого диска отличается и/или вы
используете
другое ядро, внесите необходимые изменения. Удостоверьтесь, что все, что
следует за 
указанием на устройство (например <path>(hd0,0)</path>) относительно
точки монтирования, а 
не корня файловой системы. Другими словами,
<path>(hd0,0)/grub/splash.xpm.gz</path> на 
самом деле <path>/boot/grub/splash.xpm.gz</path>, т.к.
<path>(hd0,0)</path> 
это <path>/boot</path>.
</note>

<p>
Если вам надо передать ядру дополнительная параметры, просто добавьте их
в конце 
строки, с командой kernel. Мы уже передаем ядру один параметр
(<c>root=/dev/hda3</c> или 
<c>real_root=/dev/hda3</c>), но вы свободно можете добавлять другие. В
качестве 
примера мы используем параметр <c>vga</c> для framebuffer'а, который
обсуждался ранее:
</p>

<pre caption = "Добавляем параметр vga, как опцию ядра">
title=Gentoo Linux 2.4.26-r9
  root (hd0,0)
  kernel /kernel-2.4.26-gentoo-r9 root=/dev/hda3 vga=788
</pre>

<p>
Если вы используете ядро 2.6.7 или выше и вы при помощи перемычек,
аппаратно, ограничили 
объем жесткого диска из-за того, что BIOS не в состоянии работать с
дисками большого объема
, вы должны добавить <c>hdx=stroke</c>.
</p>

<p>
Те, кто использует <c>genkernel</c>, должны помнить, что их ядро
использует те же 
параметры, что используются в LiveCD. Например, если у вас есть
устройства SCSI, вы должны 
передать ядру параметр <c>doscsi</c>.
</p>

<p>
Теперь можно сохранить <path>grub.conf</path> и выйти из редактора. Вам
по-прежнему 
необходимо установить GRUB в MBR (Master Boot Record), для того, чтобы
GRUB автоматически 
запускался при загрузке системы.
</p>

<p>
Разработчики GRUB рекомендуют использовать <c>grub-install</c>. Однако,
если по какой-либо 
причине <c>grub-install</c> завершится с ошибкой, вы можете установить
GRUB вручную.
</p>

<p>
Продолжайте чтение раздела <uri link="#grub-install-auto">По умолчанию:
установка GRUB, используя 
grub-install</uri> или <uri link="#grub-install-manual">Альтернатива:
установка GRUB вручную</uri>.
</p>

</body>
</subsection>
<subsection id="grub-install-auto">
<title>По умолчанию: установка GRUB, используя grub-install</title>
<body>

<p>
Для установки GRUB вам надо выполнить команду <c>grub-install</c>. 
Однако, <c>grub-install</c> откажется правильно работать, т.к. мы
находимся во временном 
установочном окружении. Прежде мы должны обновить файл
<path>/etc/mtab</path> (в нем 
содержится информация о смонтированных файловых системах): к счастью,
существует 
очень простой способ сделать это - просто скопируйте
<path>/proc/mounts</path> поверх 
<path>/etc/mtab</path>:
</p>

<pre caption="Обновление /etc/mtab">
# <i>cp /proc/mounts /etc/mtab</i>
</pre>

<p>
Теперь мы можем установить GRUB, используя <c>grub-install</c>:
</p>

<pre caption="Выполнение grub-install">
# <i>grub-install --root-directory=/boot /dev/hda</i>
</pre>

<p>
Если у вас есть вопросы, касательно GRUB, пожалуйста обратитесь к <uri
link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri> или
<uri
link="http://www.gnu.org/software/grub/manual/">GRUB Manual</uri>.
</p>

<p>
Переходите к разделу <uri link="#reboot">Перезагрузка системы</uri>.
</p>

</body>
</subsection>
<subsection id="grub-install-manual">
<title>Альтернатива: установка GRUB вручную</title>
<body>

<p>
Для начала введите <c>grub</c>. Вы увидите приглашение вида
<path>grub&gt;</path>, это 
командная строка grub. Теперь необходимо ввести несколько команд для
установки GRUB в 
качестве загрузчика на ваш жесткий диск.
</p>

<pre caption ="Запуск оболочки GRUB">
# <i>grub</i>
</pre>

<note>
Если у вас нет дисковода, добавьте <c>--no-floppy</c> к вышеуказанной
команде, 
чтобы grub не искал (не существующий) дисковод.
</note>

<p>
В приведенном примере мы хотим установить GRUB таким образом, чтобы он
читал 
необходимую информацию с раздела <path>/dev/hda1</path> и находился в
MBR 
(Master Boot Record), чтобы первое, что мы увидим после включения
компьютера, 
было приглашение GRUB. Естественно, если ваши установки отличаются от
приведенных 
в качестве примера, внесите необходимые поправки.
</p>

<p>
Механизм автодополнения (по клавише tab) может использоваться внутри
GRUB.
К примеру, если вы напечатаете "<c>root (</c>" с последующим нажатием
на 
TAB, вы увидите список всех доступных устройств (таких как
<path>hd0</path>). 
Если вы введете "<c>root (hd0,</c>" и нажмете TAB, то получите для
выбора список всех 
доступных разделов (таких как <path>hd0,0</path>).
</p>

<p>
Используя автодополнение, установка GRUB не покажется очень сложной.
Теперь продолжим конфигурирование GRUB.
</p>

<pre caption =" Установка GRUB в MBR">
grub&gt; <i>root (hd0,0)</i>          <comment>(Укажите, где находится
раздел с /boot)</comment>
grub&gt; <i>setup (hd0)</i>           <comment>Устанавливаем GRUB в
MBR)</comment>
grub&gt; <i>quit</i>                  <comment>(Выходим из оболочки
GRUB)</comment>
</pre>

<note>
Если вы хотите установить GRUB в определенный раздел, вместо установки в
MBR, 
измените команду <c>setup</c> таким образом, чтобы она указывала на
необходимый 
вам раздел. Если, например, вы хотите установить GRUB в
<path>/dev/hda3</path>, тогда
команда приобретет следующий вид <c>setup (hd0,2)</c>. Однако,
потребность в 
этом встречается не часто.
</note>

<p>
Если у вас есть вопросы, касательно GRUB, пожалуйста обратитесь к <uri
link="http://www.gnu.org/software/grub/grub-faq.html">GRUB FAQ</uri> или
<uri
link="http://www.gnu.org/software/grub/manual/">GRUB Manual</uri>.

<note>
Если вы, впоследствии, будете переустанавливать ядро, вам не надо заново
копировать файлы. Просто введите <c>make install</c> после компиляции
ядра, необходимые действия по копированию файлов и правке конфигурации 
GRUB будут выполнены автоматически.
</note>

<p>
Переходите к разделу <uri link="#reboot">Перезагрузка системы</uri>.
</p>

</body>
</subsection>
</section>
<section id="lilo">
<title>Альтернатива: Используем LILO</title>
<subsection>
<title>Установка LILO</title>
<body>

<p>
LILO (сокращение от LInux LOader) - это испытанный временем загрузчик, 
рабочая лошадка в мире загрузчиков Linux систем. Несмотря на это, он не 
обладает рядом возможностей, которые есть у GRUB (это одна из причин 
возрастающей популярности GRUB). Причина, по которой LILO еще
используется, 
заключается в том, что на некоторых системах где он работает GRUB не
работает. 
Конечно еще и потому, что многие знакомы с LILO и не желают переходить 
на что-либо другое. Gentoo поддерживает оба загрузчика и, очевидно, вы
решили 
использовать LILO.

<p>
Установка LILO в систему легка, как бриз, просто используйте
<c>emerge</c>.
</p>

<pre caption = "Установка LILO">
# <i>emerge --usepkg lilo</i>
</pre>

</body>
</subsection>
<subsection>
<title>Конфигурирование LILO</title>
<body>

<p>
Для настройки LILO вы должны создать файл <path>/etc/lilo.conf</path>. 
Призовите на помощь свой любимый редактор (в этом руководстве мы 
используем <c>nano</c> для единообразия) и создайте файл.
</p>

<pre caption = "Создаем /etc/lilo.conf">
# <i>nano -w /etc/lilo.conf</i>
</pre>

<p>
Несколькими пунктами раньше мы просили вас запомнить имя файла, 
содержащего образ ядра, созданного вами. В приведенном примере 
предполагается, что имя файла - <path>kernel-2.4.26-gentoo-r9</path>.
Также, используется схема разделения диска из наших примеров. 
Пример разделен на две части: 
</p>

<ul>
  <li>
    Одна для тех, кто не использовал <c>genkernel</c> для сборки ядра
  </li>
  <li>
    Одна для тех, кто использовал <c>genkernel</c> для сборки ядра
  </li>
</ul>

<p>
Удостоверьтесь, что вы 
используете имена файлов, которые содержат <e>ваш</e> образ ядра и, при
необходимости, 
<e>ваш</e> initrd образ.
</p>

<pre caption = "Пример /etc/lilo.conf">
boot=/dev/hda             <comment># Устанавливаем LILO в MBR</comment>
prompt                    <comment># Даем пользователю шанс выбрать, что
он хочет загрузить</comment>
timeout=50                <comment># Ждем 5 (пять) секунд до начала
загрузки секции по умолчанию</comment>
default=gentoo            <comment># Когда время истекает, загружаем
секцию "gentoo"</comment>
<comment># Только, если вы используете framebuffer. Иначе удалите
следующую строку:</comment>
vga=788                   <comment># Установка framebuffer. Измените
согласно своим потребностям</comment>

<comment># Для тех, кто не использует genkernel</comment>
image=/boot/kernel-2.4.26-gentoo-r9
  label=gentoo            <comment># Название, присвоенное этой
секции</comment>
  read-only               <comment># Запуск с режимом "только для
чтения" для корневой ФС. Не изменять!</comment>
  root=/dev/hda3          <comment># Расположение корневой ФС</comment>

<comment># Для тех, кто использует genkernel</comment>
image=/boot/kernel-2.4.26-gentoo-r9
  label=gentoo
  read-only
  root=/dev/ram0
  append="init=/linuxrc ramdisk=8192 real_root=/dev/hda3"
  initrd=/boot/initrd-2.4.26-gentoo-r9

<comment># Следующие две строки только если вы хотите иметь возможность
загружать установленную у вас Windows.</comment>
<comment># В этом примере Windows установлена на /dev/hda6.</comment>
other=/dev/hda6
  label=windows
</pre>

<note>
Если схема разделения вашего диска отличается от приведенной в примере 
и/или вы используете другое ядро, внесите необходимые изменения.
</note>

<p>
Если вам необходимо передать ядру дополнительные параметры, 
добавьте в секцию выражение <c>append</c>. В качестве примера 
мы передаем параметр <c>vga=788</c> для включения framebuffer'а:
</p>

<pre caption = "Использование append для передачи ядру параметров">
image=/boot/kernel-2.4.26-gentoo-r9
  label=gentoo
  read-only
  root=/dev/hda3
  <i>append="vga=788"</i>
</pre>

<p>
Если вы используете ядро 2.6.7 или выше и вы при помощи перемычек,
аппаратно, ограничили 
объем жесткого диска из-за того, что BIOS не в состоянии работать с
дисками большого объема
, вы должны добавить <c>hdx=stroke</c>.
</p>

<p>
Те, кто использует <c>genkernel</c>, должны помнить, что их ядро
использует те же 
параметры, что используются в LiveCD. Например, если у вас есть
устройства SCSI, вы должны 
передать ядру параметр <c>doscsi</c>.
</p>


<p>
Пришло время сохранить файл и выйти из редактора. Для окончания 
установки необходимо выполнить <c>/sbin/lilo</c>, чтобы LILO смог 
применить <path>/etc/lilo.conf</path> к вашей системе (например 
установил бы себя на диск) Запомните, что вам необходимо выполнять 
<c>/sbin/lilo</c> каждый раз, когда вы устанавливаете новое ядро или 
вносите изменения в меню, чтобы изменения вступили в силу.
</p>

<pre caption = "Окончание установки LILO">
# <i>/sbin/lilo</i>
</pre>

<note>
Если вы, впоследствии, будете переустанавливать ядро, вам не надо заново
копировать файлы. Просто введите <c>make install</c> после компиляции
ядра, необходимые действия по копированию файлов и правке конфигурации 
LILO будут выполнены автоматически.
</note>

<p>
Теперь вы можете перейти к разделу <uri link="#reboot">Перезагрузка
системы</uri>.
</p>

</body>
</subsection>
</section>
<section id="reboot">
<title>Перезагрузка системы</title>
<subsection>
<body>

<p>
Выйдите из временного окружения и отмонтируйте все разделы. После этого 
введите ту волшебную команду, которую вы так долго ждали: <c>reboot</c>.
</p>

<pre caption="Размонтирование разделов и перезагрузка">
# <i>exit</i>
cdimage ~# <i>cd</i>
cdimage ~# <i>umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo</i>
cdimage ~# <i>reboot</i>
</pre>

<p>
Естественно не забудьте вынуть загрузочный CD, иначе CD будет загружен 
опять вместо вашей новой установки Gentoo.
</p>

<p>
Перезагрузившись в вашу установку Gentoo, окончите установку,
руководствуясь разделом <uri link="?part=1&amp;chap=11">Окончание
установки Gentoo</uri>.
</p>

</body>
</subsection>
</section>
</sections>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.