tor, Future Domain, NCR5380, NCR53c7,8xx, IN2000
Выберите аппаратную конфигурацию, соответствующую Вашей системе. Поскольку существует несколько различных дисков с boot образами, подходящих для Вашей конфигурации, Вам придется остановить свой выбор на одном из них.
Если Вы не смогли подобрать образ, который бы работал на Вашей системе, Вы можете попытаться поискать его в 'images\2940' (для Adaptec 2940) или 'updates\images' (для некоторых более новых образов).
Обратите внимание, что включена поддержка PCMCIA и она будет работать с любым boot диском, который Вы выберете. [Также заметьте, что если Вы используете карту PCMCIA SCSI, то Вам необходимо использовать boot образ, имеющий поддержку "Adaptec"].
После того, как Вы, наконец, выбрали подходящий boot диск, скопируйте его на Ваш жесткий диск. Например:
C> copy e:\redhat\images\1213\bootNNN.gz
где NNNN номер выбранного boot диска
Затем скопируйте два ramdisk диска с CD-ROM: и ramdisk1.gz и ramdisk2.gz, которые одинаковы для любого из начальных загрузчиков.
C> copy e:\redhat\images\ramdisk1.gz
C> copy e:\redhat\images\ramdisk2.gz
В результате в вашем каталоге доллжны находиться три образа трехдюймовых дискет, упакованные утилитой gzip:
bootNNNN.gz
ramdisk1.gz
ramdisk2.gz
Теперь необходимо распаковать каждый из этих файлов, используя версию gunzip для DOS, которая находится на CD-ROM в каталоге \DOSUTILS:
C> E:\dosutils\bootNNNN.gz
C> E:\dosutils\ramdisk1.gz C> E:\dosutils\ramdisk2.gz
Теперь осталось скопировать эти образы на дискеты. Для этого в том же каталоге вы найдете несколько версий программы посекторного копирования дискет rawrite. Версии функционально эквивалентны и отличаются только "пользовательским интерфейсом". К сожалению пакетной версии программы rawrite нет, поэтому вам придется вручную (без использования помощи Norton Commander) вводить имена файлов и диска, на который осуществляется запись.
Создайте образы дисков на всех трех дискетах (один boot и два ramdisk) и не забудьте сделать наклейки на дискеты, пока копируете дискеты.
Процедура установки сказочно проста даже для новичков - читайте инструкции на экране и отвечайте на вопросы. Единственная вещь, которую надо запомнить, это использование клавиши пробела, чтобы выбрать разделы, которые Вы хотите форматировать. Вы увидите слева от каждого раздела из приведенного списка кнопку '[ ]', в которой проставляется отметка; для того, чтобы отметить что-нибудь, нажмите пробел.
Вставьте Ваш boot диск в дисковод A: и перезагрузите машину. Вы увидите на экране информацию о параметрах LILO. Если вы знаете какие параметры нужны, чтобы заставить ядро определить некоторые устройства, введите их именно сейчас. Например, если ваш CD-ROM подключен к интерфейсу SCSI-II платы Sound Blaster вам необходимо ввести адрес контроллера и его вектор прерывания. Некоторые из форматов настройки вы найдете прямо на экране монитора, а полное описание всех возможностей приведено ниже (). Если же конфигурация вашего компьютера достаточно стандартна, просто нажмите <Enter>. Наблюдайте за сообщениями, пока система загружается и посмотрите все ли ваши устройства она смогла определить. Например, если у Вас есть SCSI и Вы увидите сообщение,
"scsi: 0 hosts",
то это означает, что система не смогла обнаружить ваш контроллер SCSI. Это возможно в двух случаях (возможность неисправности контроллера мы гневно отметаем):
Поэтому ваша реакция на появление подобных "жутких" сообщений достаточно проста - либо вы подбираете иное ядро, либо "вручную" указываете системе параметры загрузки.
Нет, постоянно эту операцию делать не придется. После того, как мы подготовим дисковый образ, мы сможем принудительно включить дополнительные команды конфигурирования в программу загрузки. Но об этом после...
А теперь, если процесс загрузки протекает успешно, вставьте в ответ на подсказку дискету с ramdisk1 а затем и ramdisk2.
На этом этапе вам необходимо указать, где находится CD-ROM с дистрибутивом RedHat - на локальной машине или в сети (то есть доступен по NFS). В большинтсве случаев вы будете пользоваться первым случаем, однако если на вашем компьютере нет привода компакт-дисков, но он имеется на одной из машин сети, вы можете выбрать режим установки через NFS.
При этом вам необходимо учитывать следующее:
вы должны сами позаботиться об установке NFS-сервера на машине с приводом CD-ROM. Конкретный тип операционной системы на этом компьютере роли не играет, но в любом случае вы должны объявить файловую систему CD-ROM как экспортируемую.
Одна из приятных особенностей дистрибутива Red Hat - возможность установки системы в среде X-Window. При этом программа установки постарается более-менее самостоятельно определить конфигурацию аппаратных средств и запустить X-Window в режиме хотя бы 640*480*256. Необходимо сразу же оговориться, что в отличие от MS Windows большая часть пользовательских и системных программ для X предполагает использование более высокого разрешения, как правило, это 1024*768. Поэтому если вы всерьез интересуетесь графикой в UNIX подумайте о хорошем мониторе.
Необходимо учитывать еще одно ограничение. Для установки в среде X-Window вы должны иметь хотя бы 8 Мб оперативной памяти и 8 Мбайтную область подкачки на диске (или 16 Мб RAM). Впрочем овчинка стоит выделки...
Преимущества установки в среде Х можно свести к следующему:
Установка в текстовом режиме, безусловно, имеет меньшую наглядность, но зато, во-первых требует меньших аппаратных ресурсов при установке, а во-вторых, более похожа на привычный для большинства пользователей интерфейс программы setup дистрибутива Slackware.
Для того, чтобы обновить уже установленную на вашей машине версию Red Hat Linux 2.0 до 2.1, запустите скрипт в текущем каталоге командой:
./upgrade
(у Вас должен быть инсталлирован Perl для этой цели.) Если Вы перед выполнением настоящей инсталляции предпочитаете посмотреть, что из программных продуктов подлежит замене, запустите команду:
./upgrade-test
Перед запуском скрипт-файла неплохо выкинуть по возможности как можно больше приложений. Вы может быть даже захотите перевести систему в однопользовательский режим с 'telinit 1'. После оконачания обновления версии системы вы можете снова вернуться в многопользовательский режим с 'telinit 3'.
Предостережение: Ваши /etc/password и разные другие конфигурационные файлы могут быть переименованы, например в etc/password.orig.
Теперь, после того, как базовое ядро системы установлено, рассмотрим, как же устанавливается графическая оболочка X-Windows.
Linux поставляется со всеми библиотеками и инстументальными средствами,необходимыми для разработки приложений для X-Windows. Хотя одна задача уже решена! Г-н Вакуленко разработал пакет xcyr для русификации X-windows, который поддерживает различные кодовые таблицы и раскладки клавиатуры. Возможно, кому то покажется относительно бедным набор шрифтов, но как вы догадываетесь, здесь есть к чему приложить руки.
Но для того, чтобы заняться программированием в X-Windows, оболочку надо по крайней мере установить. Вот этим мы сейчас и займемся.
Прежде всего, необходимо установить на винчестер все пакеты, связанные с X-Windows. Конечно же, к ним относятся X и XAP, но не забудьте и библиотеки и вспосогательные средства, как например OI. Самое важное - не скупитесь, ставьте по максимуму! Но не забывайте о тонкостях, которые нигде не описаны.
При установке ядра системы вам будет предложено установить один из семи уже скомпилированных серверов:
8514a - предназначен для платы адаптера IBM 8514a и носит, прямо скажем, абстрактный характер. Во-первых, эти видеоплаты в России встречаются исключительно редко. А во-вторых, адаптер реализован для шины MCA (мне по крайней мере, другие варианты не попадались), которая не поддерживается самой системой Linux.
Monochrome X server - ориентирован на использование VGA-адаптера с монохромным монитором. Но имейте в виду, никаких градаций яркости! Этот сервер признает всего два цвета - черный и белый. Но зато отображает данные максимально быстро.
SVGA server - вот он пожалуй, будет использоваться чаще всего, ведь SVGA-платы получают все большее распространение. Но необходимо отметить, что меньше всего проблем у вас возникнет с платой Trident 8900 (буквы роли не играют). А вот плата Trident 9000 имеет ряд дефектов, которые порой приводят к "рассыпанию" изображения на экране или зависанию компьютера. Поэтому будьте бдительны! SVGA-сервер поддерживает режим 256 цветов (разрешение пределяется возможностями монитора и объемом видеопамяти на плате).
VGA server - поддерживает только 16 цветов. Предназначен для использования с устаревшими платами VGA-адаптеров, имеющих 256 Кбайт видеопамяти. Поскольку прогресс в области аппаратных средств движется семимильными шагами, этот сервер так и остался на уровне эксперимента.
Используйте его только в самом крайнем случае. Результаты, вообще говоря, непредсказуемы.
Оставшиеся три сервера ориентированы на использование наиболее популярных плат с ускорителями класса Windows Accelerator. Поскольку интерфейс пользователя в X-Windows также построен на основе прямоугольников (так же как и MS Windows), использование этих плат позволяет достичь значительного выигрыша в производительности.
Выбирайте для установки только один сервер, тот который соответствует вашему видеоадаптеру. Тратить место на диске на остальные смысла не имеет. Кроме того, процедура установки автоматически перенастроит указатели (символьные связи) на последний установленный сервер (а последним в списке является как раз не до конца отлаженный VGA-сервер).
После того, как вы запустите XWindows, вы с удивлением обнаружите, что скорость вывода графики в полтора-два раза выше, чем в MS Windows. Но чтобы добиться столь впечатляющих результатов, вам придется немного попотеть. Дело в том, что сервер сам по себе предназначен для обслуживания семейства видеоадаптеров, а для практической работы вы должны настроить его на работу с конкретной парой "видеоадаптер-монитор".
Эти настройки размещаются в файле Xconfig, который должен находиться в каталоге /usr/X11/lib/X11. Типовой файл, ориентированный на видеоплату Trident 8900 содержится в этом же каталоге в файле Xconfig.Trident8900c.
Достаточно просто выполнить команду:
mv Xconfig.Trident8900c Xconfig
и вся ваша настройка (если конечно, у вас плата Trident 8900) на этом закончена. В этом случае можно считать, что вам крупно повезло.
Но рассмотрим менее приятный случай - у вас другой тип видеоадаптера. Ваша задача состоит в том, чтобы определить видеорежимы, которые будет поддерживать X-window и, что самое важное, задать корректные режимы, которые поддерживаются как видеоадаптером, так и монитором.
Но вначале давайте рассмотрим, что же представляет из себя файл Xconfig. Вот пример типичного файла:
RGBPath "/usr/X386/lib/X11/rgb"
FontPath "/usr/lib/X11/fonts/75dpi/,/usr/lib/X11/fonts/Speedo/" Keyboard AutoRepeat 500 5 ServerNumLock LeftAlt Meta RightAlt Compose ScrollLock ModeLock Microsoft "/dev/mouse" BaudRate 1200 vga256 Virtual 1024 1024 ViewPort 0 0 Modes "800x600" "640x480" "1024x768i" Chipset "tvga8900c" Displaysize 800 600 Clocks 25.30 28.32 45.00 36.00 57.30 65.10 50.40 39.90 ModeDB # name clock horizontal timing vertical timing flags "640x480" 25 640 672 768 800 480 490 492 525 "800x600" 36 800 840 912 1024 600 600 602 625 "1024x768i" 45 1024 1048 1224 1264 768 768 776 816 Interlace
Давайте начнем по порядку. Первые строки, вплоть до описания конфигурации мышки, вам скорее всего изменять не придется. Как пути, так и настройки клавиатуры выглядят вполне приемлемо. Более того, они даже не вступают в конфликт с русификатором! что касается мышки, то настройка манипулятора, вообще говоря, осуществляется программой setup, а в Xconfig вы, как правило, только указываете ее тип - в нашем, и наиболее распространенном случае, Microsoft.
Кстати, если вы используете мышку типа PS/2, как например, на машинах фирмы Acer, не забудьте включить ее поддержку при компиляции ядра Linux. Иначе толку никакого не будет. Более подробную информацию о конфигурировании "мышек" вы можете получить из встроенной системы помощи:
man Xconfig
Но с этим вдумчивый читатель справится и без моей помощи. Я постараюсь, по возможности понятно, рассказать что делать дальше. Далее в файле конфигурации мы видим секцию vga256. Пора взглянуть на нее внимательнее.
Это виртуальный размер экрана. Если вы работали с пакетами Word for Windows или холтя бы рисовали картинки каким-либо графическим редактором, то понятие виртуального экрана вам знакомо. Числа обозначают разрешение, которое определяется объемом видеопамяти. Для видеоплаты Trident 8900 одного мегабайта достаточно как раз для хранения образа экрана 1024*1024. Платы с ускорителями расходуют память куда более агрессивно, а поэтому, если вы рассчитываете на действительно выдающиеся результаты, подумайте над расширением видеопамяти плат класса S3 хотя бы до 2 МБайт.
Начальное смещение рабочего окна относительно левого верхнего угла виртуального экрана. Оставляйте как есть.
В этой строке вы просто перечисляете видеорежимы, которые будет использовать ваш X-сервер. Конечно, инициализируется только один из них, но вот какой? Да самый первый в списке. А следующая строка:
означает, что X-сервер инициализирует (вне зависимости от текущего разрешения) адресуемую область экрана 800 на 600.
В этой строке указывается название набора микросхем, на базе которого изготовлен ваш видеоадаптер. Список поддерживаемых наборов вы найдете с помощью системы man, а узнать, какой адаптер у вас вы можете, прочитав документацию к видеоплате.
А вот следующая строка выглядит жутковато. Цифры, на первый взгляд, совершенно непонятные. Означают они настройки временных параметров видеоадаптера и изменяются от платы к плате. Но, несмотря на непонятность, получить эти "тайные знаки" можно относительно просто. Для этого вы должны "обрезать" Xconfig по строку Clocks (ликвидировав последнюю) и запустить следующую команду:
X -probeonly
Система просмотрит все диапазоны возможных значений настроек таймеров видеоадаптеров и выдаст на экран список чисел, которые вы должны в том же порядке перенести в файл Xconfig. Не беда, если они займут несколько строк. А кроме того, обратите внимание на максимальную пропускную полосу монитора. На хороших моделях она достигает 90 MHz. Это абстрактное значение имеет для нас очень важное значение. Но позвольте вначале некбольшое лирическое отступление.
Хочу сразу же предупредить, что изложенное ниже представляет собой мои досужие домыслы и не может восприниматься как антиреклама "пострадавших" фирм.
Вы смотрите телевизор? Не задавались ли вы вопросом, почему иногда изоб ражение на дисплее, который вы видите на телевизионном экране стоит как влитое, а иногда по нему бегут какие-то полосы? И почему изображение на экране стоит столь редко?
Да, я слышал о популярных вариантах ответа. Но позвольте предложить вам свое решение. Во-первых, вспомните школьный курс физики, а именно - фигуры Лиссажу. То что мы видим на экране, это тоже разновидность биений, возникающая в тех случаях, когда кадровая развертка монитора компьютера близка или сопоставима к кадровой развертке видеокамеры. Так вот, пусть глаз не замечает смены кадров на мониторе, видеокамера безжалостно демонстрирует нам низкую частоту развертки вашего компьютера. Кстати, почему экраны рабочих станций Sun или DEC получаются на ТВ вполне прилично? Да потому, что в этих мониторах частота смены кадров выше 70 Гц, в то время как видеокамера делает около 30 кадров в секунду!
Между тем, чем выше частота развертки, тем стабильнее "стоит" на экране изображение и меньше устают глаза. Но при этом на монитор поступает значительно больший поток данных, а следовательно увеличивается и эквивалентная полоса пропускания.
Что из этого следует? А вот что! Увеличение частоты кадровой развертки при сохранении заданного разрешения способствует:
а) максимально полному использованию возможностей ваших аппаратных средств;
б) повышает стабильность изображения на экране.
К счастью X-windows предоставляет вам уникальные возможности в оптимизации настроек аппаратных средств. А для этого нам потребуется настроить параметры видеорежимов.
Но сказать легче, чем сделать. Вначале необходимо попробовать пойти режимом минимального сопротивления. Обратите ваше внимание на каталог /usr/X11/lib/X11/etc. И прежде всего - на файл modeDB.txt. А посмотреть его содержимое можно командой:
cat modeDB.txt | less
(Для начинающих. cat - копирует файл в выходной поток, а less подхватывет входной поток, буферизует его и позволяет просмотреть его содержимое, подобно хорошо знакомой вам программе README).
Этот файл представляет собой базу данных, составленную любителями Linux со всего мира, и состоит из записей следующего вида:
# Monitor: Seiko CM 1440
# Contributor: Jeff Jennings [jennings@stortek.com] # Last Edit Date: 12/9/91 # # name clock horizontal timing vertical timing flags "1024x768i" 45 1024 1064 1224 1264 768 777 785 817 Interlace "1152x900i" 45 1152 1184 1288 1360 900 898 929 939 Interlace
Ваша задача состоит в том, чтобы заменить содержимое строк описания режимов в файле Xconfig на найденные вами в таблице значения. Но позвольте вам еще раз напомнить - тип монитора играет очень важную роль!
Вообще говоря, не стоит проявлять излишней самодеятельности. Взгляните на таблицу 4, в которой перечислены общие режимы, которые поддерживают почти все мониторы. Но не поленитесь, откройте книжечку, поставляемую вместе с вашим. Возможны два варианта. Если вы не экономили, то у вас окажется монитор класса Multisync, поддерживающий любую частоту кадровой и строчной развертки в заданном диапазоне. А если ваш компьютер приобретен на "распродаже", у вас окажется доступными только несколько режимов из которых и придется выбирать. Полный список настроек видеорежимов (частоты развертки и настройки таймеров для горизонтальной и вертикальной разверток вы сможете найти в файле /usr/X11/lib/X11/etc/README.Config. А если вы все же решитесь заняться оптимизацией вручную, то имеет смысл обратиться к файлу Videomodes.doc, в том же каталоге. Кроме того, полезную информацию вы сможете найти и в каталоге /usr/doc/faq/howto. Для просмотра файлов без их распаковки вы можете воспользоваться командой :
zcat <имя файла > | less
(Команда zcat осуществляет копирование сжатого входного файла на
устройство стандартного вывода с автоматический распаковкой).
Режим | Частота кадров | Синхронизация строк | Эквивалентная полоса | Черезстрочная развертка? | Поддержка VESA? |
640x480 | 60Hz | 31.5k | 25.175M | Нет | Нет |
640x480 | 60Hz | 31.5k | 25.175M | Нет | Нет |
640x480 | 63Hz | 32.8k | 28.322M | Нет | Нет |
640x480 | 70Hz | 36.5k | 31.5M | Нет | Нет |
640x480 | 72Hz | 37.9k | 31.5M | Нет | Да |
800x600 | 56Hz | 35.1k | 36.0M | Нет | Да |
800x600 | 56Hz | 35.4k | 36.0M | Нет | Нет |
800x600 | 60Hz | 37.9k | 40.0M | Нет | Да |
800x600 | 60Hz | 37.9k | 40.0M | Нет | Нет |
800x600 | 72Hz | 48.0k | 50.0M | Нет | Да |
1024x768i | 43.5Hz | 35.5k | 44.9M | Да | Нет |
1024x768 | 60Hz | 48.4k | 65.0M | Нет | Да |
1024x768 | 60Hz | 48.4k | 62.0M | Нет | Нет |
1024x768 | 70Hz | 56.5k | 75.0M | Нет | Да |
1024x768 | 70Hz | 56.25k | 72.0M | Нет | Нет |
1024x768 | 76Hz | 62.5k | 85.0M | Нет | Нет |
1280x1024i | 44Hz | 51kHz | 80.0M | Да | Нет |
1280x1024i | 44Hz | 47.6k | 75.0M | Да | Нет |
1280x1024 | 59Hz | 63.6k | 110.0M | Нет | Нет |
1280x1024 | 61Hz | 64.24k | 110.0M | Нет | Нет |
1280x1024 | 74Hz | 78.85k | 135.0M | Нет | Нет |
Теперь самое время попробовать, что получилось. Но запускать Xwindow необходимо с помощью либо openwin или startx. Перед вами появится почти чистый экран. Нажмите кнопку мышки. А теперь вторую. Перед вами появится меню, которое, кстати, вы можете отредактировать по своему усмотрению. Впрочем, как и системное меню, которое как и в MS Windows по умолчанию содержит команды Close, Restore, Kill и так далее.
Теперь вы можете заняться исследованием X-window, так же, как в свое время приступали к MS Windows. Поверьте, многое даже проще!
Как я уже указывал выше, проблема русификации X-Windows решена г-ном Вакуленко. И с моей стороны было бы просто плагиатом перепечатывать его инструкцию к пакету xcyr. Тем более, что она написана на русском языке.
Но одна сложность все же есть. А именно - русификация Linux в текстовом режиме. Так вот, чтобы заставить Linux говорить по-русски вам потребуется загрузить ЙЦУКЕН-раскладку и знакогенераторы кириллицы с помощью программы Setup (Remap your keyboard), а затем выполнить следующую последовательность команд (которую можно оформить как скрипт-файл):
loadkeys /usr/lib/kbd/keytables/russian.map
mapscrn koi2alt setfont Cyr_a8x16 printf "\033(K" echo Для включения кириллицы нажмите правый <Alt>
Отметим, что начиная с версии 1.2.13 в состав дистрибутива Slackware включен набор дисков cyr1, который содержит все необходимое для руссификации программное обеспечение - экранные шрифты, раскладки клавиатуры, шрифты и раскладки для X-Window, шрифты Postscript для принтера и скрипт-файлы, осуществляющие корректную установку шрифтов в системе.
После того, как установлена базовая система, неплохо было бы создать более комфортную среду для пользователя. Для этого необходимо более детально познакомиться с механизмами загрузки и разгрузки операционной системы, а также разобраться в том, каким образом осуществляется регистрация пользователя в системе.
Настоящий материал, среди всего прочего, базируется на одной из книг Linux Documentation Project - System Administration Guide. К сожалению, в комплект поставки Linux эта книга не включается, и вам придется искать ее в Internet самостоятельно.
Вопреки бытующему мнению о неподъемности и монстрообразии UNIX-систем вы можете загрузить Linux как с жесткого диска, так и с дискеты. Причем в последнем случае вы можете поместить в 1 МБ и ядро системы, и ряд прикладных программ или утилит. Работали же когда-то люди на ЕС-1840 или ДВК-2!
При включении машины ПЗУ BIOS выполняет различные тесты, которые позволяют оценить степень исправности аппаратных средств, после чего начинается собственно загрузка системы. Как вы вероятно помните из классики, вначале обычно опрашивается привод гибких магнитных дисков, а затем винчестер. В любом случае, BIOS загружает в строго определенное место памяти начальный загрузчик (собственно поэтому и сектор называется загрузочным). Ну а в случае жесткого диска - главный загрузочный сектор (Master Boot Record - MBR).
Начальный загрузчик представляет собой компактную программу (объемом до 512 байт), в обязанности которой входит загрузка с диска операционной системы и ее запуск. В зависимости от типа носителя, начальная загрузка выглядит по-разному.
Гибкий магнитный диск. Осуществляется посекторное считывание в фиксированное место оперативной памяти 512 КБ данных, содержащих образ ядра операционной системы. С целью упрощения процесса загрузки, дискета с ядром Linux не содержит никакой файловой системы, и вся информация просто хранится сектор за сектором.
Винчестер. Ситуация изменяется радикально. Код из MBR анализирует содержимое таблицы разделов (partition table), которая, кстати, находится в этом же секторе, в поисках активного раздела, с которого разрешена загрузка. После этого из выбранного раздела считывается его загрузочный сектор (который есть у каждого из разделов - это важно!), которому передается управление. Ну а дальше история повторяется: код из сектора загрузки раздела загружает в оперативную память образ системы и передает ей управление.
Вот здесь уже возможны варианты. Но, как правило, глупо создавать специальный раздел для хранения одного только ядра системы (напомним, что никакой файловой системы загрузчик не понимает). Один из выходов - использование LILO (Linux Loader), который вы, скорее всего, уже использовали.
Мы не будем сейчас описывать LILO, а лишь отметим, что этот загрузчик не ограничен значением флага загрузки и позволяет загрузить любую систему (не обязательно Linux), из числа указанных в списке.
Конечно же, есть и другие загрузчики. Но поскольку LILO была написана специально для Linux, она имеет ряд весьма примечательных особенностей, как например, возможность передачи аргументов ядру на этапе загрузки, что позволяет изменить установки ряда параметров системы "на лету".
Вообще говоря, LILO является своеобразным стандартом и альтернативные загрузчики, такие как bootlin или bootactv постепенно вытесняются и уходят в прошлое.
После того, как ядро системы загружено в память, процесс загрузки переходит в решающую стадию. Вот что происходит после того, как управление будет передано образу операционной системы:
Если вы установили сжатое ядро, его необходимо распаковать. Кстати, поэтому первое, что вы видите на экране, это сообщение программы распаковки:
Uncompressing Linux.....
Скорее всего, ваш компьютер оснащен SVGA-адаптером. В этом случае, в зависимости от конфигурации ядра системы, вам может быть предоставлена возможность установить один из нестандартных режимов видеоадаптера, например 100 символов на 40 строк. Зачем это надо? Дело в том, что далеко не все терминалы имеют разрешение 80*25. Напомню, что количество символов в строке ведет свою историю от 80-колоночных перфокарт, но ведь ветераны помнят, что были еще и 132-"дырочные" карты! Поэтому вы имеете возможность настроить свою систему таким образом, чтобы программное обеспечение, рассчитанное на работу с конкретным терминалом, корректно выполнялось на вашей машине.
Затем Linux проверяет состав аппаратных средств, подключенных к машине (гибкие магнитные диски, винчестеры, сетевые адаптеры и звуковые карты) и конфигурирует некоторые из них. Причем процесс конфигурирования отображается на экране, а также записывается в одном из служебных файлов. А команда /bin/dmesg позволяет вам просмотреть все сообщения во время загрузки. Это оказывается удобно в тех случаях, когда какая то из команд инициализации возвращает сообщение об ошибке, которое вы не успеваете просмотреть.
Вот, например, что выводится на экран при загрузке моей системы:
Console: colour EGA+ 80x25, 8 virtual consoles
Serial driver version 3.99a with no serial options enabled tty00 at 0x03f8 (irq = 4) is a 16450 tty01 at 0x02f8 (irq = 3) is a 16450 tty02 at 0x03e8 (irq = 4) is a 16550A lp_init: lp1 exists, using polling driver snd2 <SoundBlaster Pro 4.5> at 0x220 irq 10 drq 1 snd6 <SoundBlaster 16 4.5> at 0x220 irq 10 drq 5 snd7 <SoundBlaster MPU-401> at 0x330 irq 10 drq 0 snd1 <Yamaha OPL-3 FM> at 0x388 irq 0 drq 0 Sony I/F CDROM : SONY CD-ROM CDU33A Rev 1.0d with tray load mechanism using 16384 byte buffer, capable of audio playback Calibrating delay loop.. ok - 7.98 BogoMips Memory: 6992k/8192k available (532k kernel code, 384k reserved, 284k data) Floppy drive(s): fd0 is unknown type 0, fd1 is 1.44M Swansea University Computer Society Net2Debugged [1.30] IP Protocols: ICMP, UDP, TCP PPP: version 0.1.2 (4 channels) TCP compression code copyright 1989 Regents of the University of California PPP line discipline registered. SLIP: version 0.7.5 (4 channels) CSLIP: code copyright 1989 Regents of the University of California Linux version 1.0.8 (root@mntr) #3 Sun Nov 13 21:19:51 boot ibcs init 1994 Partition check: hda: hda1 hda2 hdb: hdb1 < hdb5 > hdb2 hdb3 hdb4 VFS: Mounted root (ext2 filesystem) readonly.
Но! Linux при загрузке не проверяет правильность установки настроек драйверов. В частности, Sound Blaster настроен на IRQ7, но когда-то сгенерированный под IRQ10 драйвер так и смущает меня каждый день! А вот на сообщение о типах микросхем коммуникационного порта советую обратить внимание. В этих строчках может крыться объяснение того факта, почему ваш замечательный Zyxel не работает со скоростями выше 9600.
И вот, после того, как конфигурирование системы закончено, Linux переключает процессор в защищенный режим. Все! Шутки закончились, и похоже, вирусная эпоха тоже. Конечно, переключение происходит без аплодисментов и дифирамбов, но для процесса запуска системы это очень важный этап!
А вот теперь наступает пора файловой системы. Ядро пытается смонтировать root filesystem (смотри последнюю строчку в протоколе загрузки). Точка монтирования системы устанавливается командой rdev).
Тип монтируемой системы опредеяется автоматически, важно только, чтобы она поддерживалась ядром. Имейте в виду, что если смонтировать файловую систему не удается, Linux ударяется в панику (так и называется - panic mode) и "насмерть завешивает машину".
Затем ядро стартует фоновую задачу /etc/init (PID=1), которая считывает конфигурационный файл /etc/inittab, отрабатывает его, а затем запускает скрипт-файл оболочки /etc/rc. Этот скрипт запускаает все фоновые задачи (они же демоны), которые обязаны заботиться об обслуживании периферийных устройств, очередей запросов на печать и прочей рутиной. Кстати, в зависимости от режима запуска системы вызываются различные варианты скрипт-файлов /etc/rc.
Это, между прочим, совсем не простой процесс и его стоит рассмотреть подробнее. Вот фрагмент типового файла /etc/inittab:
# автоматический старт (уровень 5).
id:5:initdefault: # Инициализация системы при загрузке si:S:sysinit:/etc/rc.d/rc.S # запуск однопользовательского режима su:S:wait:/etc/rc.d/rc.K # Инициализация многопользовательского режима rc:123456:wait:/etc/rc.d/rc.M # Реакция на комбинацию из трех пальцев ca::ctrlaltdel:/sbin/shutdown -t3 -rf now # Реакция на отказ блока питания (разгрузка системы в # однопользовательском режиме) pf::powerfail:/sbin/shutdown -f +5 "THE POWER IS FAILING" # Откат разгрузки системы, если питание восстановлено pg:0123456:powe