CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2002 ГОД

Как грузят пингвины?

Сергей ЯРЕМЧУК grinder@ua.fm

У меня праздник. Решил тут на днях посмотреть, что там творится в разделе «безальтернативной» системы (ну соскучился я по blue screen!), и обнаружил, что антивирус не обновлялся уже 12 месяцев. Выходит, Windows живет у меня без перестановки целый год! А говорят, глючная система. Но разговор, впрочем, не о ней — просто в процессе выбора операционной системы подумалось, что у нас еще не было разговора о загрузчиках. Так что давайте восполним данный пробел.

Процесс загрузки как таковой

Сначала давайте поговорим о процессе загрузки операционной системы и в частности о загрузчиках, заодно попытаемся развеять кой-какие заблуждения, как правило, возникающие на этот счет. Действительно, пользуясь одной ОС, как-то не задумываешься о том, каким образом после включения питания она загружается. Ну, прошел POST (Power On Self Test), затем загрузилась BIOS (Basic Input/Output System), в которой указано, с какого диска необходимо загружаться и в какой директории искать win.com. А вот и нет. Все происходит несколько иначе. Чтобы была возможность загрузиться с диска, он должен содержать так называемый MBR (Master Boot Record), который располагается всегда в одном и том же месте, потому что BIOS передает управление именно на него — не искать же MBR по всему диску, честное слово :-). Это место находится в первом секторе жесткого диска, а если совсем честно, то в нулевом. И занимает этот самый MBR всего-то 512 байт. Но и это еще не все — состоит он из трех разделов. Второй по расположению раздел называется Partition Table, занимает 64 байта и состоит из четырех записей, в каждой из которых описывается геометрия первичных разделов диска — первый и последний цилиндр, занимаемый данным разделом (поэтому, кстати, на диске может быть не более четырех первичных разделов), плюс тип файловой системы раздела и еще один бит, занимаемый признаком активности раздела, определяющим возможность использования данного раздела для загрузки. Для любителей наглядности привожу описание данной структуры MBR:

Эта запись, кстати, стандартна для всех операционных систем, и даже Microsoft не рискует отходить от нее. Последние два байта сектора занимает так называемый Magic Number, предназначенный для проверки, является ли данный сектор загрузочным. Ну а первые 446 байт занимает так интересующая нас программа-загрузчик. Каждый первичный раздел, отформатированный под файловую систему FAT (File Allocation Table), содержит также запись в начале размером в один сектор (512 байт), называемую уже Boot Record. Надо сказать, что расширенные (extended) разделы содержат также свою запись. Так вот, во всех ОС семейства Windows 9x и DOS (Disk Operation System) программа-загрузчик, расположенная в MBR, просто передает управление по цепочке первичному разделу, помеченному как активный. Он, в свою очередь, загружает необходимую программу для запуска системы. Но большинству систем отведенных 512 байт маловато будет для расположения всех инструкций, необходимых для нормальной загрузки. Поэтому в загрузочный сектор помещаются некоторые инструкции, необходимые для запуска первичного загрузчика ОС. Такой загрузчик еще может быть полезен для выбора различных параметров (однопользовательский режим, аварийный и т.д.) Есть еще один вариант использования загрузчика — возможность установки нескольких ОС на компьютере пользователя и, естественно, выбора необходимой в процессе загрузки компьютера. Вот мы и подошли собственно к загрузчикам, или менеджерам загрузки, как иногда называют подобные программы.

По изложенным выше причинам для загрузки Linux как раз и применяются загрузчики. Самыми популярными, на мой взгляд, являются LILO и GRUB (о них и пойдет речь в статье), хотя существуют и другие. Например, ASPLoader, являющийся штатным в ASPLinux, или Loadlin — небольшой загрузчик, позволяющий загрузить Linux из-под DOS. Последний удобно использовать только в критической ситуации, когда нет другой возможности загрузить Linux.

LILO

Итак начнем по старшинству. Менеджер загрузки LILO (LInux LOader) поддерживает большинство файловых систем, которые могут встретиться на компьютере пользователя; исключение составляют журналируемые файловые системы XFS и ReiserFS с включенным режимом оптимизации дискового пространства, каковой задействован по умолчанию. GRUB, кстати, тоже не может загрузить ядро с этих разделов. Если вам необходим именно такой вариант, то необходимо создать отдельно раздел /boot с файловой системой ext2fs или ext3fs (это даже считается хорошим тоном), с которого и загрузится Linux, а файловую систему для остальных разделов выбрать уже по своему усмотрению. При своей работе LILO считывает исходные данные из конфигурационного файла /etc/lilo.conf. Данный файл, как и большинство других, является обычным текстовым, т.е. для редактирования его можно использовать простой текстовый редактор (желательно!) —Nedit, Kedit или встроенный редактор Midnight Commander. Состоит файл как бы из двух разделов: сначала описываются общие параметры работы LILO, а затем идут разделы, описывающие ОС и содержащие специфическую информацию, необходимую для их загрузки (максимум 16 вариантов). Пример файла /etc/lilo.conf:

Это наиболее часто используемые опции и, как вы должны понимать, далеко не все. При загрузке можно передать при необходимости ряд аргументов ядру: таких, как реальное значение объема оперативной памяти (append=" mem=64M"), если у Рис. 1системы проблема с его определением, что очень часто бывает со старыми дистрибутивами. Или прописать новое устройство, когда оно автоматически не обнаруживается, что часто происходит с ISA-девайсами и др. (например, append=" hdc=ide-scsi" для эмуляции SCSI-устройства необходимой для работы CD-RW). Самая, наверное, распространенная ошибка, которую очень часто допускают при конфигурировании файла /etc/lilo.conf — использование параметра default, который не указывает ни на одну из меток образов. Это может происходить, например, в такой ситуации. Захотелось вам изменить метку linux (см. пример файла) на какую-то более информативную, например, label=Mandrake_9.0. И все. Теперь при загрузке системы вы получите что-то вроде этого —Fatal: No images have been defined or default image doesn't exist. Хотя вроде бы ничего плохого и не сделали. И еще: после того как вы отредактировали файл конфигурации, изменения еще не вступили в силу. Для этого необходимо перезаписать lilo командой # /sbin/lilo -v 5 (-v 5 — параметр необязательный, он применяется для лучшего контроля того, что, собственно говоря, будет происходить на жестком диске). Такая команда пригодится после очередной переустановки Windows, которая всегда перезаписывает MBR, не особо заботясь о том, что там может быть что-то полезное (например, записанный туда наш LILO :-)). Кстати, создатели KDE здесь немного подсобили юзеру. Если не хотите набивать все ручками, то в Центре управления KDEво вкладке Системные есть пункт Загрузчик LILO (см. Рис. 1), где можно произвести настройку с помощью разных менюшек.

Теперь, когда все операции произведены, при очередной загрузке системы вас будет встречать приглашение LILO. При нажатии Enter загрузится система, прописанная по умолчанию, для просмотра доступных вариантов нажмите Tab. Часто для решения каких-либо проблем возникает необходимость загрузиться в однопользовательском режиме (уровень запуска системы 1) — для этого наберите после приглашения lilo single. Но вот незадача: юзер, воспользовавшийся данной командой, автоматически получает права root, что на безопасности системы в целом положительно, как вы понимаете, не сказывается. Для того чтобы воспрепятствовать этому, необходимо защитить LILO паролем (password=пароль), а для того чтобы самому не набирать его каждый раз при загрузке системы, добавьте параметр restricted, и теперь пароль будет необходим только при задании параметров загрузки в командной строке т.е. как раз в нашем случае. Интересно, что при приглашении каждая буква слова LILO выводится после прохождения соответствующего этапа загрузки, и потому, если загрузиться не получилось, вместо строки приглашения вы увидите только от одной до трех букв. Стало быть, если возникнет какая-либо проблема, по числу букв, которые напечатаются на дисплее, можно определить ее причину. Мне чаще всего приходилось наблюдать две, один раз — три буквы.

LI — если на экране напечаталось только две буквы, то причина в несовпадении описанной геометрии диска с имеющейся в наличии, или же файл /etc/lilo/boot.b был перемещен без перезапуска программы переконфигурации геометрии диска. А скорее всего, из-за того, что вы удалили раздел с Linux и не восстановили MBR перед этим. Или с помощью Partition Magic создали еще один раздел перед корневым, и теперь система не может его найти.

LIL — в этом случае проблема, скорее всего, состоит в аппаратной ошибке или в несовпадении описанной и фактической геометрии диска.

По LILO, пожалуй, все — остальное можно найти в документации. Замечу лишь следующее: чтобы его удалить, воспользуйтесь командой # /sbin/lilo –u. Если хотите воспользоваться другим конфигурационным файлом, не перезаписывая старый, укажите его название (и путь), воспользовавшись опцией -C. Данный менеджер загрузки, кстати, по-прежнему развивается, в него добавляются новые опции и возможности, устраняются старые и добавляются новые ошибки :-); на данный момент доступна версия 22.3.

(Продолжение следует)

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov