div.main {margin-left: 20pt; margin-right: 20pt}Linux. Настройка
загрузки
?Одно из
двух:
либо мы грузим Linux, либо-одно из
двух.¦
В
прошлой статье мы рассмотрели процесс установки операционной
системы Linux. Сегодня мы
рассмотрим процесс реализации множественной загрузки. Т.е.
возможность выбора загрузки ОС Windows или Linux на
одном компьютере.
Реально, есть три способа настроить множественную
загрузку: Windows 9X + loadlin,
Linux
Loader (lilo) и
меню Windows 2000.
Рассмотрим каждый из них.
Первый
способ применяется тогда, когда на компьютере стоит Windows
9X, и
нет желания ставить какой-либо Boot
Loader. Тогда для
реализации множественной загрузки используются файлы autoexec.bat и config.sys. Почти
все знают, наверно, что если во время загрузки Windows
9X
нажать клавишу F8, то выскочит
загрузочное меню. Так вот, мы создадим такое же меню, которое
будет появляться во время загрузки и позволяет выбрать, что мы
будем загружать, Linux или Windows.
Для этого изменим файл config.sys
следующим образом:
[COMMON]
; <Здесь располагаются команды
загрузки общих драйверов и т.п.>
[MENU]
MENUITEM=W,Windows
MENUITEM=L,Linux
[W]
; <Здесь располагаются команды
загрузки драйверов,
;
необходимых для работы в Windows>
[L]
; <Здесь чаще всего ничего
нет>
Кратко поясним. Как видно из примера, в секции MENU мы
задаем два варианта загрузки на выбор. Для этого первым в
строке идет ключевое слово MENUITEM, далее символ
равенства, а после него обозначение, которое будет
использоваться для обозначения секции, соответствующей данному
варианту, в которой будут написаны команды загрузки драйверов
для этого же варианта. После запятой следует строчка, которая
будет появляться на экране, обозначая данный вариант. Стоит
упомянуть, что секция COMMON должна
содержать команды загрузки драйверов, общих для всех вариантов
загрузки.
Далее, необходимо изменить файл autoexec.bat, чтобы
он выглядел примерно так:
@echo
off
SET
PATH=C:WINDOWS;C:WINDOWSCOMMAND
SET
PROMPT=$p$g
SET
TEMP=C:WINDOWSTEMP
SET
TMP=C:WINDOWSTEMP
mode con
codepage prepare=((866) C:WINDOWSCOMMANDega3.cpi)
mode con
codepage select=866
keyb
ru,,C:WINDOWSCOMMANDkeybrd3.sys
goto
%config%
:W
win
goto
END
:L
cd
linux
linux.bat
:END
Часть до команды ?goto %config%? представляет
собой самые обычные команды, присутствующие в любом подобном
файле. Здесь, как и в config.sys,
следует описать команды общие для всех вариантов загрузки
системы. Команда ?goto %config%? говорит
системе, что необходимо глянуть, какой вариант выбрал юзер во
время загрузки, и перейти на соответствующую секцию. Секция
варианта начинается с двоеточия и обозначения, которое вы дали
данному варианту в секции MENU файла config.sys. Далее,
с новой строки, идут команды загрузки необходимой операционной
системы. Для Windows это
обыкновенная команда ?win¦. Для загрузки же
Linux
необходимо сделать следующее: создаем на диске C: каталог
Linux, копируем в него
файл loadlin.exe,
который берем на компакт диске с дистрибутивом Linux.
Обычно он лежит в каталоге dosutils. Затем,
грузимся в Linux с использованием
загрузочной дискеты, созданной при установке, и копируем в тот
же каталог ядро Linux. Оно
располагается в каталоге /boot и называется
vmlinuz-X.X.XX. Если
Linux
стоит на ReiserFS, то для
загрузки может понадобиться файл initrd-X.X.XX.img, или
подобный. Он располагается там же. После этого идем обратно в
Windows и в каталоге
Linux
создаем файл linux.bat. В него пишем
следующую команду:
loadlin.exe
vmlinuz root=/dev/hdaX rw
или, для
загрузки с ReiserFS:
loadlin.exe
vmlinuz root=/dev/hdaX rw
initrd=initrd.img
Где:
vmlinuz v
файл
ядра
Linux;
/dev/hdaX v
раздел, на который установлен Linux.
Параметр initrd
указывает, что в память надо загрузить файл с драйвером ReiserFS.
Далее в autoexec.bat мы прописываем команду перехода в созданный
нами каталог и запуск файла linux.bat. Последней
командой в не последней секции должна быть команда ?goto END¦, где END v метка
в конце файла. По этой команде мы переходим в конец файла и,
следовательно, завершаем выполнение операции загрузки.
Необходимо добавить, что данный метод будет работать в
том случае, если в файле msdos.sys параметры
BootMulti и BootGUI равны 0. Для Windows ME еще потребуется
поставить патч, который включает возможность работы в DOS. Его
можно найти в Internet, введя в
строку поисковика ?Real DOS-Mode Patch for Windows ME¦.
Второй способ применяется в тех случаях, если вам
нравится использовать Boot
Loader или не стоит
Windows. Тогда для
выбора варианта загрузки используется загрузчик lilo -Linux Loader. Обычно он
ставится в процессе установки Linux. Но не всегда
так, как того хотелось бы. Рассмотрим, как сконфигурировать
lilo
на ваш вкус и поставить его. Для этого необходимо загрузиться
в Linux как root и
отредактировать файл /etc/lilo.conf. Документация по
конфигурации lilo лежит в каталоге
/usr/doc либо в /usr/share/doc. Там же
есть скрипт QuickInst, запустив
который можно настроить и поставить lilo. Я кратко опишу
структуру файла lilo.conf. Этот файл
состоит из команд и переменных. Команда указывает действие
либо часть конфигурационного файла, переменная же задает
какой-либо из параметров и его значение. Основные команды и
переменные:
BACKUP=<backup_file>
- указывает, что при установке lilo следует
скопировать оригинальный boot sector в файл
<backup_file>,
для возможного последующего его восстановления;
BOOT=<boot_device> - уствнавливает имя
устройства для загрузки, т.е. тот диск, в чей boot sector будет
ставиться lilo. Если Linux
стоит на первом винчестере, то стоит использовать /dev/hda;
COMPACT v
позволяет более компактно установить lilo;
DEFAULT=<name>
- указывает, какой вариант использовать в качестве
дефолтового во время загрузки;
DELAY=<tsecs> - указывает
количество времени в десятых долях секунды, после которого
будет загружаться первый вариант;
INSTALL=<boot_sector> -
устанавливает указанный файл в качестве нового boot sector-а. Если
параметр не указан, то используется файл /boot/boot.b;
TIMEOUT=<tsecs>
- указывает количество времени в десятых долях секунды,
после которого, если не была нажата ни одна клавиша, будет
загружаться первый или дефолтовый вариант;
LABEL=<name>
- указывает название варианта, которое надо вводить в строке
приглашения lilo для загрузки
соответствующей операционной системы;
PASSWORD=<password> -
указывает пароль, который надо вводить при попытке загрузки
данного варианта, пароль чувствителен к регистру;
SINGLE-KEY v
включает загрузку варианта по нажатию соответствующей
клавиши (первая буква названия варианта или символ,
указанный в команде ALIAS);
ALIAS=<symbol> -
указывает символ, который будет соответствовать данному
варианту загрузки;
INITRD=<name> - указывает файл,
который будет загружен во время загрузки как начальный RAM-диск,
служит для того же, что и в первом варианте при
использовании loadlin;
IMAGE=<name>
- указывает имя ядра Linux для загрузки,
используется для реализации загрузки с несколькими
вариантами ядра;
OTHER=<file_name>
- указывает файл, содержащий boot sector другой
операционной системы, которая загружается в данном варианте
загрузки;
В
нашем случае, если Windows стоит на
первом разделе, для получения boot
sector-а надо
выполнить следующую команду:
dd
if=/dev/hda1 of=/boot/boot.sect bs=512
count=1
Где:
if v
параметр, указывающий раздел;
of v
параметр, указывающий выходной файл;
bs v размер
блока;
count v
количество читаемых блоков.
Пример
конфигурационного файла:
password
= Cool
single-key
image =
/vmlinuz
label =
linux
alias =
1
other =
/dev/hda1
label =
windows
alias =
2
В данном случае создаются два варианта, причем
lilo
будет устанавливаться на текущий раздел, т.е. на раздел Linux,
который должен быть активным. Для установки lilo надо набрать
команду ?lilo¦. Если файл
конфигурации не содержит ошибок, то lilo будет установлен.
После перезагрузки появится строка, в которой для загрузки
необходимой операционной системы надо будет ввести имя
варианта или нажать соответствующую клавишу, смотря как вы
сконфигурируете lilo.
Третий вариант используется, если у вас стоит Windows
2000 и вы хотите реализовать загрузку Linux в меню W2k-загрузчика. Для
этого надо сделать так: ставим lilo в boot sector Linux-раздела с одним
лишь вариантом загрузки и TIMEOUT=0, потом
делаем слепок данного boot
sector-a, как это
описывалось выше, и копируем его на Win2k раздел, например как
c:linux.sect. После чего
грузимся в оную операционную систему и добавляем в файл BOOT.INI
следующую строку:
C:linux.sect=¦Linux¦
В данном случае при перезагрузке в меню появится
пункт ?Linux¦, выбрав который
вы загрузите Linux. Стоит сказать,
что будет лучше, если Win2k стоит на NTFS v
меньше проблем будет. Активным разделом должен быть раздел
Win2k.
Надеюсь, данные методы помогут вам настроить
множественную загрузку.
За
кривизну чьих-либо рук автор ответственности не несет
;-)
X-Stranger,
xstranger@tut.by
|