Владимир Водолазкий. Путь к LINUX Книга постоянно переписывается и дополняется, поэтому имеет смысл сходить за ней на сайт автора. Свежая версия этой книги лежит на сервере "Linux user group в ГПНТБ" http://gpntb.iitp.ru/russian.win/vodol.html ║ http://gpntb.iitp.ru/russian.win/vodol.html и на странице http://www.geocities.com/SiliconValley/Pines/7895/BOOK.HTM ║ http://www.geocities.com/SiliconValley/Pines/7895/BOOK.HTM --------------------------------------------------------------- Я категорически возражаю против коммерческой эксплуатации приведенных здесь материалов. Перепечатку, издание и пр. без заключения соответствующих соглашений я буду рассматривать как плагиат и нарушение моих авторских прав и оставляю за собой право применения различных "нетрадиционных" средств воспитания жуликов. voldemarus@geocities.com ║ mailto:voldemarus@geocities.com --------------------------------------------------------------- Версия книги от 10 ноября 1997 (Руководство по установке и настройке 32-разрядной операционной системы)

Москва 1996 г.

СОДЕРЖАНИЕ

Введение
Начальные сведения о Linux
Каковы требования к аппаратным средствам?
Где достать Linux?
Графический интерфейс пользователя
Что делать с программами под DOS?
Источники информации о Linux
Выбор операционной системы
Критерии оценки
Есть ли разница между системами?
Базис
За все приходится платить...
Кто румяней и белее...
Насколько все же годится Linux?
Установка LINUX
Загрузка дистрибутива Slackware
Какие диски выбрать для начальной загрузки?
Создаем разделы на диске
Первоначальная установка системы
Компиляция ядра операционной системы
Активизация скомпилированного ядра
Проверяем работоспособность ядра
Установка начального загрузчика
Трудоемкий и убедительный эксперимент
Монтирование файловых систем
Установка дистрибутива Red Hat
Общая структура дистрибутива
Требования к аппаратным средствам
Выбор ядра системы
Распаковка образов загрузочных дискет
Загрузка базовой системы
Начальная стадия установки
Монтирование установочного диска
Выбор интерфейса: текстовый или X-Window
Обновление предыдущей версии Red Hat Linux
Установка дистрибутива Linuxware
Установка графической оболочки X-Window
Тонкость N1 - X-сервер
Тонкость N2 - конфигурирование системы.
Тонкость N3 - запуск X-windows.
Тонкость N4 но не последняя - русификация.
Загрузка и разгрузка операционной системы
Процесс загрузки системы
Разгрузка операционной системы
Демоны и фоновые процессы
Более подробно о загрузчиках системы
LILO - Linux Loader
LOADLIN
Права доступа и регистрация в системе
Регистрация в системе
Права доступа к файлам в системе UNIX
Кто варежку потерял?
Группы и пользователи
Пароли и профили пользователей
Несколько полезных советов
Как добавить пользователя?
Как создать группу?
Обязательно ли нужно грузить одну из оболочек?
Как запретить регистрацию пользователя в системе, не изгоняя его из списков пользователей?
Как создать "гостевой вход" в систему, не требующий ввода пароля?
"Ежовые рукавицы" или "свободная любовь"?
1. Выбор пароля.
2. О сохранности пароля
3. Файлы и каталоги
4. Особые файлы пользовательского каталога
5. Физическая безопасность
6. Предоставление счета в распоряжение третьих лиц
Системные средства обеспечения безопасности системы
Программа поиска уязвимых мест в защите - CRACK
"Теневые пароли"
npasswd - генератор надежных паролей
Подключение принтера
Первое подключение устройства печати
Поддержка принтера в ядре Linux
Драйвер печати
Корректировка настроек принтера - tunelp
Системное управление принтером
lpd
lpq
lprm
lpc
/etc/printcap - конфигурирование принтера
Фильтры печати
Борьба с "лесенкой"
apsfilter - автоматический распознаватель типа входного файла
Подключение кириллических шрифтов Postsript
Установка звуковой платы
Подключение стримеров с FDD-интерфейсом
Стримеры, которые не будут работать в Linux-системе
Установка программного обеспечения FTAPE
Тестирование работспособности стримера
Подготовка магнитной ленты стримера к работе
Форматирование
Инициализация
Создание и проверка тестового архива
Программное обеспечение для архивации
tar
cpio ???
Практические приемы работы со стримером
Организация автоматической архивации в фоновом режиме
Установка и работа с UPS
Подключение факс-модема
Эмулятор DOS
Эмулятор Windows
Эмулятор SCO UNIX
Устанавливаем собственную BBS
Распаковка архива с компакт-диска
Создание пользовательских счетов
Настройка пользовательских экранов
Подключение протоколов передачи файлов
Объединение в локальную сеть
Контроллеры Ethernet - что выбрать?
TCP/IP
Гетерогенные сети - Windows-Linux
Вход в Internet
Краткий путеводитель по CD-ROM с Linux
Диски Trans-Ameritech Enterprises
Volume 1
Volume 2
Supplement
Interim Release
Release 4
Linuxware 1.0
LinuxWare 2.0
LinuxWare 2.5
Компакт-диски фирмы Caldera
Caldera Desktop 1.0
Linux Office
Компакт-диски в книгах издательства SAMS Publishing
CD-ROM к книге Linux Unleashed
CD-ROM к книге Building Linux Internet Server
Компакт-диски отечественных производителей
"Открытое ядро"
Подводя итоги

Введение

Поистине неисповедимы пути, которыми следует отечественная мода на операционные системы. Еще несколько лет назад в России активно развивались многозадачные и многопользовательские операционные системы, но вот, словно по мановению волшебной палочки их место, где оправдано, а где и не слишком, заняла MS-DOS. И хотя сегодня все возвращается на свои места, выясняется, что за эти годы мы потеряли слишком много - мы потеряли культуру многозадачных операционных систем, и поэтому найти сегодня специаиста по UNIX, пусть даже пользователя, несоизмеримо труднее, чем пользователя MS-DOS и Windows. И если в американском оригинале приводился краткий курс начинающего пользователя MS-DOS, то мы решили, что для российского читателя более полезным окажется набор рекомендаций, позволяющих самостоятельно установить одну из версий UNIX, предназначенную для персонального компьютера с процессором 80386 и выше.

На сегодняшний день существует несколько подобных реализаций UNIX. Однако, мы сознательно отказались от продвижения одной из коммерческих систем в пользу "бесплатного UNIXа" - Linux. Причина такого решения - желание снизить барьер вхождения в работу с UNIX для широких кругов читателей, которые, прежде чем вкладывать довольно существенные средства в коммерческую версию UNIX, хотели бы приобрести некоторый практическмй опыт в установке и эксплуатации подобных систем. Кроме того, многочисленные беседы автора с пользователями и администраторами различных фирм и системными интеграторами Москвы позволили сделать ряд небезынтересных замечаний:

  1. Пренебрежительное отношение к системе Linux со стороны пользователей коммерческих систем основано на том лишь факте, что Linux поставляется практически бесплатно - "за хорошие вещи надо платить и очень много!"
  2. "Мы не можем себе позволить какой-то там Linux, потому что должны соответствовать..." - ну это же просто чистый снобизм!
  3. Многократные заявления о том, что в Linux не реализовано многое из того, что должно быть в "нормальной UNIX-системе" ничем не подтверждаются и носят голословный характер! Попытки выяснить, чего же конкретно не хватает, приводят к мучительному почесыванию шевелюр (лысин) и выдавливанию ответа - "ну это же все знают...", после которого возникает мучительная пауза.
  4. Большая часть критиков Linux и UNIX, отдающая предпочтение Windows 95 и NT выросла на "костях" DOS и никогда не видела UNIX в работе. Поэтому решения двадцатилетней давности, реализованные, например, в Windows 95 воспринимаются как выдающееся достижение компьютерной мысли, хотя без всякой помпы еще в 1994 году были портированы в Linux.
  5. Легенды о нехватке и дороговизне прикладных продуктов для UNIX и Linux есть досужий вымысел. Обилиие пиратских компакт-дисков с одними и теми же программами - MS Office, Photoshop и т.д. не означает, что количество действительно популярных продуктов для Windows превышает два-три десятка! А оффис давно реализован и для Linux.

Наш выбор, в конце концов остановился на системе LINUX, которая в настоящий момент наиболее доступна для новичков. Во-первых, ее можно найти на FTP-серверах Internet, в том числе и на московских узлах RELCOM и ДЕМОС, а во-вторых, бурная деятельность российского отделенния американской компании Trans-Ameritech Enterprises привела к тому, что сегодня компакт-диски с различными версиями этой системы можно найти в любом книжном магазине Москвы, Петербурга и некоторых других городов. Появлились в России дистрибьюторы и других поставщиков Linux и дае выпущен первый россйский компакт-диск с дистрибутивами Linux. Кроме того, имеется возможность переноса дистрибутива операционной системы с CD-ROM на трехдюймовые дискеты емкостью 1.44 Мбайт.

Начальные сведения о Linux

Это версия UNIX для процессоров 80386 и 80486. Linux в полной мере реализует все возможности процессоров, предоставляя программисту полностью 32-разрядную многозадачную и многопользовательскую систему, функционирующую в защищенном режиме. Система соответствует стандарту POSIX, что позволяет говорить о переносе программного обеспечения, разработанного для Linux, на другие версии UNIX и обратно как о более или менее рутинной задаче.

Каковы требования к аппаратным средствам?

Ничего сверхъестественного. Достаточно иметь 386SX-25 и 4 Мб оперативной памяти, но увеличение ОЗУ до 8 Мб значительно повысит производительность вашей системы. Шина особой роли не играет, Linux поддерживает как ISA, EISA, VLB и PCI, но игнорирует MCA (серия PS/2 фирмы IBM), которая у нас, впрочем, не очень-то распространена. Вовсе не обязательно использование процессоров фирмы "Intel" - клоны производства фирм AMD, "Cirrus Logic", TI и так далее никаких нареканий не вызывают. Реальная потребность в дисковой памяти - от 80 Мб (вам ведь нужна не только сама система, но и прикладные пакеты, не так ли?). Для запуска большинства программ этого хватит (для удовлетворения потребностей программ в оперативной памяти вы всегда можете создать раздел для подкачки на диске).

Полная раскрутка дистрибутива системы с оптического диска может потребовать более 200 Мб дисковой памяти, но, скорее всего, вся система и пакеты вам вряд ли понадобятся. Да, о дисках. Годится любой одно- или двухскоростной накопитель CD-ROM, но имеет смысл приобретать современные модели приводов с интерфейсом IDE.

Видеоадаптер - лучше SVGA с объемом видеопамяти хотя бы 1 Мб. Поддерживается работа со всеми распространенными наборами кристаллов видеоадаптеров. Критерий выбора прост - чем больше видеопамяти, тем быстрее будет работать система в среде X Window.

Сети, как вы, вероятно, понимаете, - это неотъемлемая часть современной концепции UNIX-систем. И Linux поддерживает образование сетей на уровне ядра системы. Сетевые адаптеры могут быть самые разные: Ethernet для создания локальной сети (и никаких сетей Novell!), телефонный модем для интеграции в сеть Internet и, в конце концов, обычный мультиплексор на восемь или шестнадцать терминалов. И снова-таки повторим, весь этот сервис входит в стандартный дистрибутив Linux со всеми исходными текстами, библиотеками и сопроводительной документацией.

Где достать Linux?

Еще летом 1994 года Linux привлекла внимание нескольких фирм-производителей дисков CD-ROM. Но, кроме того, этой системой заинтересовались некоторые фирмы-интеграторы. В результате уже упоминавшаяся компания Trans-Ameritech Enterprises наладила регулярный выпуск CD-ROM с дистрибутивами Linux и прикладными программами для этой операционной системы. Подобные диски выпускает еще около десятка фирм, наиболее известными из котороых являются Yggdrasil и InfoMagic, но в России распространены только диски Trans-Ameritech. В последний год питерская фирма Kronverk заглючила дистрибьютерсикй договор на поставку в Россию полукоммерческой версии Linux - Caldera Desktop. А другая питерская фирма весной 1996 года выпустила CD-ROM "Открытое ядро", который также заслуживает внимания.

Заслуживают внимания также книжные магазины. Бум Linux на Западе привел к появлению нескольких книг, в состав которых включен CD-ROM с операционной системой. Особо отметим достаточно подробную 1000-страничную книгу LINUX UNLEASHED, выпущенную в 1996 году издательством Sams Publishing, Building your own Linux Internet Server (тоже 1996 год) и Linux System Administrator's Survivals Guide (тоже Sams Publishing, 1996). При этом стоит заметить, что эти книги вышли одновременно с аналогичными руководствами по NT, Netware, OS/2. Стало быть "там" возможности Linux и его сферы применения стали уже понятны...

Принципиально ничего не мешает поставлять Linux и на дискетах. Однако если подобный подход хорош для коммерческих систем - возьмите хотя бы пакетик с Windows95, то для бесплатной системы стоимость 3.5" дисков, на которых записан весь дистрибутив оказывается выше стоимости 4-хскоростного привода CD-ROM и компакт-диска с системой! Поэтому особого распространения подобный подход не получил. Впрочем, если у вас есть желание, НПО "Инфосервис" может помочь с получением обоих вариантов системы.

Еще один потенциально возможный способ установки Linux - с магнитной ленты похоже не получит распространения поскольку форматы лент, используемых в DOS и UNIX существенно различаются. Впрочем о работе со стриммерами будет более подробно рассказано ниже.

Графический интерфейс пользователя

X Window - это стандарт для графического пользовательского интерфейса, реализованный для всех UNIX-систем. Это означает, что программы, разработанные для XFree386 (версия X Window в Linux) без каких-либо особенных трудностей могут быть перенесены на SUN, VAX и даже на Cray.

Для XFree уже разработаны десятки приложений, а также конвертированы из MS Windows шрифты кириллицы. Впрочем, все это программное обеспечение поставляется практически на всех дисках и позже будет рассмотрено подробнее.

Что делать с программами под DOS?

Прежде всего, разработчики LINUX не задумывали свою систему как конкурента MS-DOS, а скорее как дополнение к традиционной ОС, для которой разработано огромное количество программного обеспечения.

Поэтому DOS и Linux могут сосуществовать на одном винчестере, "проживая" в различных разделах (partition) жесткого диска. Вы можете по своему выбору, загружать либо DOS либо LINUX. Однако бедняга MS-DOS не может укрыться от любопытных глаз своего соседа, поскольку Linux имеет доступ ко всем файлам в разделе DOS.

Для чего это сделано? Для запуска программ MS-DOS под управлением Linux! Причем сохраняется многозадачный режим работы. Это означает, что вы можете запустить одновременно F-19 и SimCity и переключаться между ними по желанию. Конечно, есть и некоторые ограничения.

Например, Wing Commander или Doom, которые требуют полного контроля над вычислительными ресурсами и используют фактически собственную операционную систему, в Linux работать не будут. Поэтому для Linux была разработана специальная версия DOOM, которая работает как под управлением X Window, так и в терминальном режиме. Но если ваша программа работает с использованием DOS (пусть даже и требуя XMS или EMS-память), то никаких проблем у вас не возникнет.

Для работы с приложениями MS Windows в настоящее время разрабатывается эмулятор Windows 3.1 для графической среды XWindows. Появления бета-версии можно ожидать в конце 1996 года. Кроме того, по оценке поклонников языка Java, реализация этой системы для Linux является одной из наиболее мощных и конкурирует с версией самой фирмы Sun!

Источники информации о Linux

Операционная система Linux разработана в соответствии с требованиями международного стандарта на UNIX-совместимые системы IEEE POSIX. А стало быть любая книга по операционной системе UNIX на 90% решит все ваши проблемы.

На дисках CD-ROM, выпускаемых различными фирмами, вы можете найти мегабайты технической информации по Linux, которые можно разбить на несколько разделов:

Начиная с 1994 года, в США начало выходить первое периодическое издание по системе Linux - Linux Journal (ISSN 1075-3583). По вопросам подписки вынужден пока адресовать вас к издателям: subs@ssc.com.

Существует и специальная программа по разработке комплекта документации по Linux - Linux Documentation Project, в рамках которого уже разработано замечательное руководство по администрированию сетей на основе Linux. К сожалению, вся документация, разрабатываемая в рамках этого проекта англоязычная, что существенно сдерживает распространение Linux в России.

Есть и более фундаментальные труды. Например, один из издателей CD-ROM фирма Yggdrasil выпустила 1200-страничную Linux Bible в которой объединены все выпущенные материалы проекта LDP, а также многочисленные справочные документы - FAQ (Frequently Asked Questions).

И конечно, уже упоминавшиеся книги издательства Sams Publishing. В Россию эти книги поставляет небольшое ТОО "Цифровая Вселенная", расположенное в Москве в районе м.Кропоткинская (тел. (095) ....... ).

Выбор операционной системы

До недавнего времени вопрос о выборе операционной системы для персональных компьютеров вообще не ставился. Все пользователи находились в равных условиях - в среде MS-DOS. Но с развитием аппаратных средств и хроническим отставанием как DOS, так и Windows от уровня "железа", на сцену начали выходить казалось бы "тупиковые ветви компьютерной эволюции"-Windows NT и OS/2. Но кроме этих, коммерческих систем, совершенно неожидано начал получать популярность и один из клонов UNIX - Linux, разрабатываемый широкими (без преувеличения) кругами энтузиастов.

Нет нужды говорить, что правильный выбор операционной системы требует тщательного взвешивания всех "за" и "против". Ведь ошибка в этом вопросе приводит к неоправданным затратам на разработку прикладных программ, эксплуатацию самой вычислительной системы и ее стыковки с вычислительными сетями. Впрочем, если вы страшитесь погрязнуть в изучении документации к системе, редактировании конфигурационных файлов и вылизывании всяких огрехов, то вам вряд ли стоит отказываться от старой доброй Windows 3.1. Тем не менее, если вы всерьез подумываете о переходе на 32-разрядную операционную систему, то прежде всего стоит подумать о том, какую же систему выбрать-Windows NT, OS/2 или Linux. А для этого придется рассмотреть несколько факторов.

Критерии оценки

Конечно же, на выбор операционной системы самое прямое влияние оказывают те аппаратные средства, с которыми вам предстоит работать. Ведь если ресурсов вашего компьютера не хватит для загрузки системы, то разве вы сможете использовать все ее возможности?

Минимальные требования к аппаратным средствам следующие. Во-первых, вам необходим по меньшей мере процессор 80386 (то есть 32-разрядный). Конечно, повышение мощности процессора желательно, но не обязательно. Гораздо большее значение для повышения общей производительности системы играет объем оперативной памяти. Кстати, для запуска Linux или OS/2 вам потребуется хотя бы 4 Мбайта оперативной памяти, а для Windows NT - по меньшей мере 12 Мбайт. Что касается дисковой памяти, то минимальные требования для Linux составляют 15 Мбайт, 32 Мбайт для OS/2 и 70 Мбайт для Windows NT. Но имейте в виду, что этих ресурсов хватит только для "пробы", а для реальной работы требования значительно более высокие (см.Таблицы 1 и 2).

Таблица П.1. Потребность в оперативной памяти

Требования к системе LinuxOS/2 Windows NT
Только командная строка, никаких графических сред (OS/2 и NT в этом режиме не работают) 2 МБнет нет
Только загрузка системы (Linux под управлением X) 6 МБ4 МБ 12 МБ
Типовой состав операционной системы (одно или два полностью установленных приложения) 8 МБ8 МБ 16 МБ
Квалифицированный пользователь, работающий с большим количеством приложений одновременно 12 МБ16 МБ 24 МБ

Таблица П.2. Потребность в дисковой памяти

Linux OS/2Windows NT
Минимальная установка системы
Linux, POSIX, до 15 МБ OS/2, OS/2 32- и 16-бит, 20 МБ Windows NT, Win32, 50 МБ
Типовая установка
Linux, + DOS, X/Window, приложения, 60 МБ OS/2, + DOS, Win16, приложения, 32 МБ Windows NT, + DOS, Win16, POSIX и прочее, 70 МБ
Полная установка системы
Linux + большое количество приложений от 90 МБ OS/2 + все приложения и дополнения 40 МБ Windows NT + все приложения и дополнения 100 МБ

Впрочем, надеюсь, читателя мы не напугали. Ведь практически все современные компьютеры этим требованиям удовлетворяют. Но есть еще одна проблема - проблема совместимости аппаратных средств. С точки зрения здравого смысла это кажется абсурдом - жестко сконструированные аппаратные средства (hardware) подгоняются под существенно более гибкое и перестраиваемое программное обемпечение (software), в то время как изначальный замысел был прямо противоположным. И вот, если в вашем распоряжении оказалась ЭВМ с шиной MCA (MicroChannel Architecture), которой оснащены все компьютеры фирмы IBM серии PS/2, то можете распрощаться с идеей использования Linux (эту архитектуру Linux не поддерживает).А если на вашем компьютере установлена видеокарта Compaq Qvision, то может оказаться, что OS/2 ее не поддерживает. А если в компьютере установлен сетевой контроллер 3Com 3c501, то Windows NT может отказаться его поддерживать.

И это далеко не полный список проблем, который к тому же постоянно изменяется. Вообще говоря, вы должны отдавать себе отчет, что приобретение самого современного оборудования, только что появившегося на рынке, всегда чревато возникновением проблем совместимости-ведь может случиться так, что надежных драйверов для ваших устройств еще нет. А поэтому... не стоит бежать впереди паровоза. Если, конечно, вас не интересует процесс отладки операционной системы, как таковой.

Иначе говоря, любая операционная система, вопреки заявлениям разработчиков, поддерживает вполне определенную номенклатуру аппаратных средств. Поэтому одним из вполне разумных выходов является приобретение готовой вычислительной системы с предустановленной операционной системой. И хотя на российском рынке не так уж много компаний, которые могут поставить компьютер с предустановленной Windows NT, OS/2 или Linux, вы сумеете сохранить много сил, если потратите несколько дней на поиски надежного поставщика, который сам подберет оптимальный состав аппаратных средств.

Если же приобретение нового компьютера целиком является для вас неприемлемым вариантом, то выход один - просто начните устанавливать систему. Но если в процессе установки у вас возникнут проблемы, то в конце концов вы будете знать о своем компьютере куда больше того, что хотели бы знать!

Есть ли разница между системами?

Очевидно есть. Ведь операционная система определяет, какие приложения могут быть запущены на вашем компьютере, какой вид имеет интерфейс пользователей, а также, каким образом приложения будут взаимодействовать между собой. Например, если вы не можете жить без офиса фирмы Microsoft (Word, Excel, Access и PowerPoint), то вам придется отказаться от Linux.

OS/2 должна поддерживать эти приложения, но вы ведь помните, что в 1991 году Microsoft прекратила поддерживать проект фирмы IBM... Windows NT использует тот же самый интерфейс диспетчеров файлов и печати, к которому вы уже привыкли в Windows 3.1. Да, интерфейс не слишком удобен, но зато прост и привычен. А учитывая его ограниченность (пусть не обижается на нас г-н Гейтс), пользователь не может нанести ущерб системе, перетаскивая из угла в угол иконки и изменяя настройки среды.

В OS/2 реализована концепция объектно-ориентированного подхода к построению интерфейса пользователя.Как данные, так и программы представляют собой объекты, которые могут быть объединены практически произвольным образом. Щелчок мыши на объекте данных приводит к запуску ассоциируемого с ним приложения. А перетащив файл данных на принтер, вы заставите систему его распечатать. Кроме того, пользователь имеет возможность изменить практически любые настройки системы, как говорилось в одном из рекламных роликов-"до последнего миллилитра".

К сожалению, эта гибкость имеет и оборотную сторону. В частности, начинающий пользователь довольно легко может заблудиться в системе, ведь обнаружить нужные объекты может оказаться совсем непросто. А в этом случае, однообразность (обычно ее называют единообразием) интерфейса играет отрицательную роль - поди отличи одно приложение от другого.

Linux, в отличие от остальных систем, использует X/Window. Это уникальная графическая среда - своеобразный хамелеон, который может принимать любые обличия и по-разному обрабатывать запросы пользователя. Плюс очевиден - гибкость и возможность настройки под свои задачи. Не менее очевиден и минус - относительная сложность процесса указанной выше настройки. В этой системе реализовано большое количество различных пользовательских интерфейсов, каждый из которых получил более или менее широкое распространение. А это значительно затрудняет обучение пользователей и сопровождение системы в целом. Linux, по своей сути представляет собой операционную систему, ориентированную на управление с командной строки. Но не расстраивайтесь, разработаны и диспетчеры файлов и диспетчеры печати. Есть также и Midnight Commander - "наш ответ Питеру Нортону". Кстати, большинство штучек, которые включены в состав Windows и OS/2 , без особых сложностей реализуются и в Linux. И хотя для первоначальной настройки требуется поработать достаточно квалифицированному специалисту, остальные пользователи Linux получат в свое распоряжение среду "со всеми удобствами". Все системы достаточно подробно освещены в литературе, которая оказывает существенную помощь в освоении.

И хотя Linux является бесплатной системой, внимания ему уделяют немало - немало информации вы можете найти в Internet, выходит специализированный журнал Linux Journal, работают группы пользователей, в том числе и в России, да впрочем, и любая книга по UNIX может быть с успехом использована в вашей работе. Существенным преимуществом Linux явялетстся отсутствие технологических секретов, принадлежащих какой-либо одной компании, а также доступность исходного текста ядра операционной системы, которое может быть модифицировано для нужд фирмы или отдельного пользователя.И как ни удивительно, в результате использования общедоступной информации вы можете получить поистинне крохотную операционную систему, обладающую, тем не менее функциональной полнотой и отличной производительностью. Похоже, что IBM и Microsoft есть чему поучиться!

Базис

Это красивое слово из курса диалектического материализма в применении к операционным системам означает, что ОС - это тот фундамент, на котором держатся все задачи пользователей. Поэтому имеет смысл выбирать ОС, содержащую все те функции, которые необходимы вам для решения текущих задач, а также тех, которые появятся в ближайшем будущем. Но при этом не забывайте о ресурсах, которые необходимы для поддержки функций системы.

Linux, так же как и OS/2, разрабатывался и оптимизировался для работы с процессором 80386 и совместимых с ним. А Windows NT, как ожидалось, должна была стать новым стандартом операционной системы и была портирована на MIPS и DEC Alpha. Но хотя фирма Digital и поставляет компьютеры на базе Alpha с операционной системой Windows NT, это направление, по всей видимости не является для Digital стратегическим. Иначе чем объяснить выпуск новой 64-разрядной версии UNIX для процессора Alpha? Полностью переработанное ядро системы, поддержка гигантских приложений и отказоустойчивых систем - словом, Digital UNIX - это потрясающе. Как ни крути, на этих процессорах существуют свои версии UNIX, которые пользуются все же большей популярностью.

Все три ОС поддерживают многозадачный режим работы, при котором одновременно выполняется несколько пользовательсктих приложений. Вы можете одновременно форматировать диск, выгружать файл из Internet или BBS, редактировать статью в текстовом процессоре. По сравнению с MS-DOS это существенный шаг вперед. NT поддерживает также многопроцессорный режим работы, который, впрочем, ориентирован на работу только с процессором Pentium. А вот для Linux завершается разработка сетевого планировщика, который позволяет превратить несколько Linux-машин на базе дешевых процессоров 80386 в некоторое подобие многопроцессорной системы (Purdue's Adapter for Parallel Execution and Rapid Synchronization). А кроме того, вы можете объединить несколько Linux-машин в один виртуальный многопроцессорный суперкомпьютер и даже создать гетерогенную сеть в которой расчетные задачи будет выполнять блок Linux-машин, а ввод/вывод данных можно выполнять на Sun, SGI, или из Windows. Кстати, именно такими системами занимается НПО "Инфосервис" и мы обязательно посвятим несколько изданий возможности эффективного использования свободных вычислитенльных ресурсов сети.

NT и Linux поддерживают также динамическое кэширование дисковой памяти, в то время как в OS/2 реализован традиционный подход, состоящий в выделении фиксированного объема памяти (от 512 Кбафйт до 2 Мбайт). В результате производительность Linux и NT оказывается существенно выше, поскольку необходимые для обработки данные в большинстве случаев оказываются уже в кэш-памяти. В отличие от OS/2 и Windows NT многопользовательская работа поддерживается Linux в полном объеме. Локальные пользователи, удаленные терминалы, подключенные через модемы, а также пользователи, подключенные посредствоми локальной вычислительной сети без каких-либо ограничений могут одновременно работать с графическими и символьно-ориентированными приложениями.

Для многих практических ситуаций эта возможность ставит Linux вне конкуренции. Linux имеет также ряд средств обеспечения безопасности системы, предотвращающих попытки пользователей "сломать машинку".

Впрочем, хотя Windows NT не является многопользовательской системой, она проверяет полномочия подключишегося к ней пользователя. Поэтому вы можете без опаски предоставлять сетевой доступ к Linux- или NT-машине, в то время, как пользователь OS/2 имеет все необходимые средства для умышленного или неумышленного разрушения операционной системы.

Необходимо отметить, что развитость средств безопасности Linux не в последнюю очередь объясняется тем, что используются стандартные апробированные решения из мира UNIX, которые прошли испытания временем. Не забыты и современные решения - уже сегодня вы можете установить в Linux системы контроля доступа семейства Firewall. Более того, эти средства поддерживаются ядром системы! Основные характеристики и возможности рассматриваемых систем сведены в Табл.3.

Таблица 3. Сравнительные характеристики 32-разрядных операционных систем

--------------------------------------------------------------- From: Maksim Moshkow В приведена табличка, переведенная с английского текста 1994-го выпуска. С тех пор несколько позиций в ней поменялись в пользу Linux - с "НЕТ" на "ДА", а именно: Многопроцессорность НЕТ Начиная с версий ядра 2.1.39 в линуксе появилась поддержка SMP для нескольких популярных чипсетов Легкость портирования ОС на другую платформу НЕТ Наличие работоспособных версий Linux для DEC, Sun, а так же бета версии линукса для R4000, PowerPC и чего-то там еще позволяет пересмотреть такую точку зрения :^). Сдается мне, что по числу портов Linux уже обогнал "легкопортируемый" NT Microsoft LAN Server НЕТ Это наверное Samba имелась ввиду? Linux отныне умеет работать как клиент и сервер Microsoft нетворка - имея и предоставляя доступ к принтерам и дискам. То же касается Netware с его IPX 16-разрядные приложения Windows НЕТ Покупаемая за 200$ WABI (а в наших условиях - за 30тыр :-) позволит нормально гонять Microsoft Word 6, Excell, Access - корочe весь MS Office и даже Netscape 3.0 for windows ---------------------------------------------------------------
Параметр Linux OS/2Windows NT
Многозадачность Да Да Да
Многопотоковая обработка ДаДа Да
Многопроцессорность НетРазрабатывается Да
Поддержка параллельной работы ДаНет Нет
Многопользовательский режим ДаНет Нет
Легкость портирования ОС на другую платформу НетНет Да
Динамическое кэширование диска ДаНет Да
Максимальный объем памяти, выделяемый одному процессу 3 Гбайт512 Мбайт 2 ГБайт
Поддерживаемые сетевые протоколы
TCP/IP Да За платуДа
NFS Да За платуДа
IPX/SPX Да За платуЗа плату
IBM LAN Server НетЗа плату Нет
Microsoft LAN Server НетНет Да
Поддерживаемые файловые системы
FAT (DOS) Да Да Да
HPFS (OS/2) только чтение Да Да
NTFS (Windows NT) НетНет Да
EXT2 (Linux) ДаНет Нет
ISO9660 (CD-ROM) ДаДа Да
Network File System (NFS) ДаЗа плату Да
Coherent (UNIX) ДаНет Нет
StackerНет ДаНет
DoubleSpace НетНет Нет
Поддерживаемые приложения
DOSДа Да Да
16-разрядные приложения Windows Разрабатывается ДаДа
16-разрядные приложения OS/2 НетДа Да
32-разрядные приложения Windows НетНет Да
32-разрядные приложения OS/2 НетДа Нет
POSIX-совместимые приложения ДаНет Да
Приложения для Macintosh Разрабатывается НетНет
Приложения SCO UNIX ДаНет Нет
Клиенты X/Window ДаНет Нет
Стоимость операционных систем
Рекомендованная цена фирмы-изготовителя Бесплатно$199 $495
Реальная цена (ГМД) $50$179 $289
Реальная цена (CD-ROM) $15-40$150 $289

За все приходится платить...

Очевидно, что каждая дополнительная функция, реализованная в системе, приводит к увеличению объема системы, что сказывается на требованиях к оперативной памяти и жестким дискам. Кроме того, чем больше объем операционной системы, тем медленнее она обычно работает. Windows NT является самой большой из рассматриваемых нами систем. Причиной этого является высокая сложность системы и большой набор поддерживаемых ею функций. Что, кстати, только повышает конкурентоспособность системы. Linux (в комплекте с X/Window) является следующей по размеру системой.

Собственно говоря, сам Linux занимает исключительно малый объем, но X/Window является довольно пухлым довеском. Впрочем, в большинстве случаев, графический интерфейс стоит этих затрат.

И наконец, OS/2 является наиболее компактной системой. Именно в этом и состоит привлекательность операционной системы, разработанной IBM. Пользователю необходимо иметь только 8 Мбайт оперативной памяти, чтобы приобщиться к миру объектно-ориентированного интерфейса, и представляет собой неплохую пплатформу для многозадачной работы с приложениями DOS, Windows и OS/2.

Если вы найдете силы пожертвовать графическим интерфейсом, то Linux окажется наиболее компактной операционной системой. А кроме того, и самой быстрой. При этом, для большинства задач вам будет достаточно 4 Мбайт оперативной памяти. В результате, Linux с успехом может эксплуатироваться на младших моделях, оснащенных процессором 80386, в то время, как для OS/2 или NT вам придется затратить немало средств на обновление компьютера. Конечно, и избытком оперативной памяти Linux сумеет распорядиться, что называется, по-хозяйски. Так, при работе с 16 Мбайт памяти, Linux оставит для приложений и динамического кэша около 12 Мбайт!

Отметим, что размер системы является одной из наиболее сильных характеристик Linux. система изначально проектировалась максимально компактной и производительной, в то время как для NT основным критерием оптимизации являлась переносимость, а для OS/2 - совместимость с предыдущими версиями системы.А кроме того, поскольку любой администратор Linux-системы имеет в своем распоряжении полный исходный текст ОС, она может быть оптимизирована для работы с конкретным оборудованием и нуждами пользователя. Увы, OS/2 и NT похвастаться такой возможностью не могут.

Кто румяней и белее...

Windows NT румяней всех, поскольку это устойчивая система, предназначенная для широко распространенных процессоров фирмы Intel.

OS/2 всех румянее по той причине, что это наилучшая система для запуска 16-разрядных приложений DOS и Windows, и при этом предоставляет возможность приобщиться к привлекательному миру 32-разрядных систем.

Но в обеих системах прячется червячок - и OS/2 и NT привязывают пользователя к той или иной технологии - ведь приложения будут работать либо в OS/2, либо в Windows NT. А вот Linux "всех белее", поскольку ему эта опасность не грозит. Приложения, разработанные для Linux могут быть перенесены на любую UNIX-систему. И если ориентация на "открытую технологию" IBM или Microsoft, является, по большому счету, рискованной игрой, то Linux предлагает выход из ловушек, расставленных гигантами.

Впрочем, на этом пути вас также поджидают определенные трудности. Для того, чтобы не оказаться запертым в рамках одной операционной системы вы должны выбирать приложения, которые поддерживаются различными платформами. Если ваши любимые электронные таблицы работают в Windows, OS/2, UNIX и на Macintosh, вы можете быть уверены, что сможете запустить этот продукт и в других системах.

Впрочем, не забудьте, что за это придется выкладывать звонкую монету из собственного кошелька. Приятной особенностью Linux является его способность использовать программное обеспечение, предназначенное для дркугих РС-ориентированных версий UNIX, таких, как например, SCO UNIX. Впрочем, для UNIX-систем пока не реализованы версии текстовых процессоров, сопоставимых с возможностями Microsoft Word или Lotus Word Pro. И к сожалению, именно этот факт сдерживает распространение Linux.

Насколько все же годится Linux?

С точки зрения корпоративного пользователя Linux идеально вписывается в концепцию "клиент/сервер", реализуемую на базе протоколов TCP/IP. При этом Linux позволяет превратить казалось бы устаревшее оборудование в мощный файл-сервер, факс-сервер, работающий как шлюз для отправки факсов через внутреннюю систему электронной почты или postscript-ориентированный принт-сервер, который обслуживает обычные матричные или лазерные принтеры. При этом, Linux зачастую работает устойчивее, чем его коммерческие собратья.

Система компактна и шустра, а кроме того, может быть перекомпонована для решения вполне определенных задач. Вы можете даже установить ее на индустриальный компьютер (например, Mitac или Octagon). В Linux встроены средства поддержки электронной почты и доступа к ресурсам Internet. Cистема отлично документирована и получает все большее распространение во всем мире.

Реализована поддержка работы работы с кириллицей. Но (!) есть и некоторые недостатки. Прежде всего, довольно ограничено количество коммерческих продуктов, хотя среди них уже есть и мощные SQL-серверы баз данных, и текстовые процессоры и прочие нужные вещи. Кроме того, в случае зависания системы, вы не можете свалить вину на "кривой код от Microsoft". И конечно, никто не обязан вылизывать обнаруженные вами ошибки, хотя разработчики программного обеспечения Linux обычно внимательно относятся к критике пользователей...

С точки зрения технически подготовленного пользователя Linux представляет отличный шанс "поковыряться" в операционной системе. Вам полностью доступен исходный код операционной системы, что само по себе является мощным учебным пособием, которое так и тянет опробовать на практике. В результате уже сегодня вы можете воспользоваться высокопроизводительными трассировщиками для мультипликации, спектроанализаторами на базе Sound Blaster, различными компиляторами (чем, например, плохи Ада или CommonLisp?) и играми (уже реализован DOOM) и прочими продуктами. Для новичков, конечно же, предпочтительными вариантами являются OS/2, и в меньшей степени, Windows NT.

Простой и понятный интерфейс OS/2 является серьезным побудительным мотивом, в то время как NT привлекает за счет своей мощи. Но, в то же время следует признать, что наибольший комфорт пользователь ощущает в старой доброй Windows 3.1, а также при работе с Norton Commander.

Процесс установки 32-разрядных операционных систем и их конфигурирование может оказаться процессом далеко не тривиальным.

Подводя итоги, отметим, что Linux оказывается неожиданно мощной системой, которая разработана неорганизованной группой программистов-любителей. Идеи положенные в его основу проверены временем. Количество и качество свободно распространяемых приложений просто завораживает. И если накнец будет завершен проект Wine, позволяющий запускать Windows-приложения в среде X/Window, Linux получит дополнительный козырь в борьбе с коммерческими операционными системами. Возможности этой системы открывают все новые и новые пользователи. И с эволюционным развитием всех трех систем наблюдается устойчивый рост количества пользователей Linux.

Установка LINUX

Процесс установки Linux на ваш компьютер во многом определяется используемым дистрибутивом и специальным программным обеспечением, которое устанавливает тот или иной производитель CD-ROM. В нашей книге мы рассмотрим традиционный дистрибутив Slackware, а также два "фирменных" дистрибутива, которые входят в состав LinuxWare фирмы TAE и RedHat.

Загрузка дистрибутива Slackware

Прежде всего необходимо создать загрузочные диски. Для Unix вам потребуется две дискеты 5.25" HD - так называемые boot и root. Конечно, если загрузочным является дисковод 3.5", то вам потребуется две дискеты емкостью 1.44 МБайт. Кроме того, подготовьте еще две чистых дискеты, они понадобятся при отладке.

Какие диски выбрать для начальной загрузки?

Создаем разделы на диске

Установите в привод CD-ROM диск TAE Volume 2 (или более поздней версии) и создайте дискеты с помощью программы Install. В некоторых случаях диски, создаваемые с помощью программы Install, упорно не желают загружаться на вашей машине. Это не дефект компьютера, а ошибки разработчиков программы установки. Но это ошибка не смертельная. На каждом диске есть специальный каталог BOOT, в котором помещены версии загрузочных (boot) и корневых (root) дисков для различных вариантов конфигурации системы. Там же вы сможете найти и программу посекторного копирования rawrite, которая позволит сформировать образ на дискете.

Но вернемся к процессу установки. Поместив в привод дискету boot смело жмите клавишу Reset. Если процесс загрузки прекратится через несколько секунд, значит вы не угадали, какое ядро системы соответствует вашей конфигурации. В противном случае на экран будут выведены диагностические сообщения, а затем вы получите сообщение, приглашающее вас установить диск root. Еще немного поворчит дисковод и перед вами появится подсказка программы привратника:


darkstar login:

введите в ответ root и нажмите <Enter>. Теперь вы хозяин системы и вольны распоряжаться ею. Но прежде необходимо поставить Linux на винчестер. А поэтому запускайте программу fdisk.


fdisk <идентификатор диска>

Обозначения дисков в Unix естественно отличаются от MS-DOS. Так, первый винчестер, подключенный к контроллеру IDE, обозначается как /dev/hda, второй - /dev/hdb, а винчестеры, подключенные к интерфейсу SCSI - как /dev/sda, /dev/sdb и так далее. Но предположим, у вас только один винчестер, подключенный к контроллеру IDE. Поэтому вы подаете системе команду:


fdisk /dev/hda

и программа fdisk выдаст подсказку. Польщоваться fdisk в Unix проще, чем в DOS. Команда m позволит вам получить список команд, а p - распечатать текущее состояние таблицы разделов. Ваша задача - создать два новых раздела - для файлов системы Linux (Native Linux - тип 83) и для подкачки (Linux swap- тип 82).

Кстати о подкачке. Если в вашей системе больше 16 МБайт оперативной памяти - раздел подкачки вам не нужен. А если меньше, не жмитесь! Но и не жадничайте. Размер раздела подкачки В старых версиях Linux не мог превышать 16 Мбайт, а сегодня вы можете устанавливать хоть 128 МБайт. А можете и создавать специальный файл для подкачки на время выполнения программы и освобождать пространство на диске после ее завершения!

Да, надо отметить одну особенность программы fdisk. При создании раздела вам будет предложено указать первый цилиндр раздела, а затем размер, выделяемый разделу. Чтобы выделить, скажем 80 МБайт, на запрос системы о последнем цилиндре раздела введите +80M (если введете +80 - получите 80 Байт!).

Перед выходом из программы еще раз посмотрите на таблицу. И если результаты вас устраивают жмите клавишу w. Если же нет, можете выйти без записи результатов (команда - q) и еще раз попытать счастье.

Запомните обозначения разделов, которые используются для MS-DOS и Linux. Они нам вскоре понадобятся.

Ох, первый нужен уже сейчас. Вы скорее всего, не настолько богаты, чтобы бросаться оперативной памятью, и создали специальный раздел подкачки. Теперь необходимо поставить об этом в известность операционную систему. Предположим, что под подкачку выделен раздел /dev/hda4 размером 8192 блока (1 блок = 1 КБайт - и никаких тебе кластеров!).

Поэтому введите следующую команду:


mkswap -c /dev/hda4 8192

В результате раздел будет размечен для подкачки. Опция -c нужна только для старых винчестеров - при разметке будет проведена проверка на предмет наличия плохих блоков и, в случае обнаружения оные блоки будут огорожены красными флажками. Поэтому сообщения об ошибках можно игнорировать. На последующую работу системы они не повлияют. Теперь необходимо разрешить системе использовать раздел подкачки. Для этого вы подаете команду:


swapon /dev/hda4

Все. Объем оперативной памяти вашей системы увеличился на 8192 КБайта.

Если вы создали несколько разделов подкачки, повторите эту процедуру для каждого из них.

Теперь можно продолжать, но позвольте еще одно небольшое отступление. Unix очень похож на исполнительного солдата, который делает только то, что ему приказывают. Но с другой стороны, не надо ничего повторять два раза. Это означает, что созданный и инициированный однажды раздел подкачки будет "подкачивать", до тех пор пока вы не подадите команду swapoff. А описываемая ниже процедура установки предложит вам еще раз отформатировать и установить раздел подкачки. Так вот этого делать не надо! Категорически не надо!

Дело в том, что если у вас мало памяти, вы не сможете запустить программу установки, не инициализировав раздел подкчки. А если попытаетесь установить раздел второй раз, можете развалить всю систему - ведь страницы подкачки на одном и том же разделе будут распределяться двумя независимыми механизмами.

Поэтому, после запуска программы setup необходимо отказаться от предложения выполнить команду mkswap, но не стоит возражать против включения swapon в сценарий загрузки. В противном случае вам придется самостоятельно выполнять эту команду при каждом запуске системы.

Теперь необходимо установить источник, откуда будет осуществляться загрузка системы на винчестер. Конечно, с оптического диска! Затем уточните тип привода, на этом этапе система поддерживает все перечисленные в списке и переходим к следующему пункту.

А следующим пунктом мы должны определить, куда устанавливать Linux и какие разделы винчестера мы будем использовать. Вот еще один повод вспомнить состояние таблицы разделов. Предположим, что у нас имеется два раздела MS-DOS: /dev/hda1 и /dev/hda2, а также раздел типа Linux native - /dev/hda3. Давайте ка включим их в систему.

Вначале программа setup попросит указать, какой раздел использовать для файлов Linux. Без вариантов - раздел /dev/hda3. После этого вам предложат выбрать тип файловой системы. Не вчитывайтесь в различные мудрстовавния, а выбирайте ext2fs. Как сказало бы покойное АО "МММ" - "Это лучше, Леня!" После этого спокойно соглашайтесь на форматирование раздела, не стоит возражать и против проверки на наличие плохих блоков.

После завершения форматирования вам предложат включить в состав файловой системы разделы DOS. Не стоит отказываться, подключите хотя бы один из разделов. Тогда вы сможете передавать файлы в DOS и обратно путем простой команды cp (аналог copy из MS-DOS). Единственный тонкий момент - выбор точки монтирования. Под этим в Unix понимается название каталога, который ставится в соответствие с тем или иным дисковым устройством. Так вот, к моменту запроса системы на подключение разделов винчестера у вас на диске есть только один корневой каталог, обозначаемый как "/".

Следовательно ваши каталоги, связывающие Unix с DOS должны быть потомками основного каталога, например /dos-c для /dev/hda1 или /dos.d для /dev/hda2. Но я бы советовал Вам подключить в Linux только второй раздел, не содержащий самой DOS - все-таки береженого Бог бережет!

Теперь, при желании, Вы можете распечатать каталог файлов DOS, находящиеся в каталоге D:\F117, с помощью команды: dir /dos.d/* . А вот при обратном копировании нужно помнить что длина имени файлов в MS-DOS ограничена восемью символами, а расширение - не длиннее трех. Но об этом мы поговорим позже, а сейчас продолжим установку.

Первоначальная установка системы

После установки основных разделов винчестера система предложит список наборов дисков (diskset) для установки на вашем компьютере. Вначале, конечно, глаза разбегаются и хочется установить все по максимуму. Вот этого делать ни в коем случае не нужно. Успеется. А сейчас мы с вами должны получить нормальную работоспособную операционную систему. Поэтому вы выбираете только два набора дисков: A и D и приступаете к установке.

По умолчанию система выбирает режим установки с подсказкой для пользователя. Не возражайте, в этом случае в процессе установки на винчестер вы сможете узнать, что же вы записываете на диск. Сначала идет установка набора A. Это базовый набор и ваше участие в его установке минимально. Есть только один

важный момент. Вам НЕ НУЖНО устанавливать ядро SCSIKERN, если у вас диск с контроллером IDE и наоборот, не нужно ядро IDEKERN, если у вас винчестер с интерфейсом SCSI. Если у вас есть и те и другие диски, устанавливайте ядро только для того винчестера, на который СЕЙЧАС устанавливаете систему. С остальными разберемся позже.

При установке утилит для поддержки принтера обратите внимание, что демон печати работает с протоколами TCP/IP. Не вдаваясь в подробности отметим, что для работы с устройством печати вам потребуется создать локальную сеть, состоящую хотя бы из одной вашей машины.

Второй набор дисков - D, содержит инструментальные средства разработки программного обеспечения в среде Linux. Вам потребуются:

Устанавливать на диск компиляторы C++, Objective C и тем более LISP, PERL, препроцессоры Pascal, Modula, Fortran на этом этапе не нужно. Вы сможете сделать это потом.

Но вот установка выбранного нами программного обеспечения на винчестер завершена. Система предлагает вам выбрать вариант загрузки Linux. На этом этапе генерации системы мы выбираем загрузку с дискеты. Вы устанавливаете чистую дискету (Вы ведь подготовили ее в самом начале процесса, не так ли?) и программа setup устанавливает на нее загрузчик ОС Linux. Конфигурировать модем, мышку, и зональное время не надо. Скоро вы поймете почему.

Прежде всего, перезагрузитесь с полученной дискеты. Если загрузка оказалась неудачной, придется повторить процесс создания образа системы на диске и загрузочного диска, как указано выше. Вот именно поэтому и используется отдельная дискета для загрузки системы - ваши диски root и boot остались целости и сохранности. Поскольку MBR винчестера вы не изменяли, то при включении питания и отсутствии дискеты в окошке A: компьютер так же как и раньше будет загружать MS-DOS. А загрузка Unix будет осуществляться с созданной вами только что дискеты.

После загрузки системы с дискеты вы вновь должны зарегистрироваться с идентификатором root. Это, кстати, единственный доступный вам сейчас идентификатор. Других в системе пока просто нет. А теперь мы приступим к процессу, который должен повергнуть рядового пользователя в священный трепет. А именно - сейчас мы с вами перекомпилируем ядро операционной системы.

Компиляция ядра операционной системы

Не волнуйтесь, ситуация под контролем. Вы переходите в каталог /usr/src/linux. Как перейти в этот каталог? Но ведь MS-DOS заимствовала многие команды пользователя из операционной системы CP/M, которая в свою очередь использовала привычные пользователям начала 80-х годов команды многопользовательских UNIX-систем.

Находясь в этом каталоге вы запускаете следующую команду:


make config

В ответ на это требование вы получите список вопросов, на которые надо отвечать достаточно внимательно. Если в вашей системе есть математический сопроцессор, то эмуляция команд 80387 вам, по всей видимости не нужна. Если вы устанавливаете Linux на компьютер с процессором 80386, то оптимизация под 80486 также окажется бесполезна.

Но это пока безвредные вопросы. А вот когда пойдет речь о файловых системах - будьте бдительны.

Во-первых, именно сейчас вы должны будете сообщить системе, какие типы винчестеров используются в вашем компьютере: IDE и/или SCSI. Создавая свою систему вы можете использовать оба типа контроллеров. Ну например, загрузка осуществляется с обычного винчестера подключенного к IDE-контроллеру, а второй винчестер подключен к плате SoundBlaster ASP 16 SCSI-2. Или у вас установлен контроллер Adaptec 1522 без встроенного ПЗУ с BIOS. Так вот, в отличие от MS-DOS эти контроллеры SCSI поддерживаются ядром Linux! Нужно только предупредить систему об их наличии.

Когда вас спросят, нужна ли вам сетевая поддержка, долго не задумывайтесь и отвечайте "Да!" Во-первых, даже поддержка принтера в Linux реализована через сетевые функции, а кроме того, большинство серьезных приложений, реализующих технологию "клиент-сервер" (например, СУБД Postgress или отечественный (!) сервер баз данных LDBF), также используют функции TCP/IP.

Следующий важный момент - тип привода CD-ROM. Базовая версия системы устанавливаемая по умолчанию не содержит драйверов CD-ROM и не может обслуживать привод какого бы то ни было типа. Поэтому от перегенерации системы вам никуда не уйти. Ваша задача состоит только в том, чтобы корректно указать тип привода.

Звуковая плата, если она у вас есть, также должна быть сконфигурирована на этом этапе. Впрочем здесь ничего сложного нет. А вот с файловыми системами надо держать ухо востро! Поддержка лишних стандартов вам конечно ни к чему. Вот список тех систем, которые вы должны включить при генерации системы:

С дополнительной периферией сложности не возникнет. Единственное предупреждение: bus mouse и serial mouse - суть вещи разные! Если ваша мышка подключается к последовательному порту, не включайте в конфигурацию bus mouse, не надо. Зачем вам лишний код в ядре системы?

После того, как программа make завершит работу и Linux выведет на экран приглашение к вводу команды, повторите вызов make, но уже с вариациями:


make depend

а минут через двадцать, когда программа завершит свою работу, введите make еще раз, вот так:


make zImage

Теперь можете поставить чайник или сходить пообедать. Время трансляции для 80386DX-40/4 МБ составило 1 час 5 минут, а когда появилась возможность нарастить объем оперативной памяти до 8 МБайт, компиляция ядра системы заняла всего сорок минут. При установке Linux на 486DX2-66/8 МБ на трансляцию потребовалось всего двадцать минут. Но как видите, важнее не производительность процессора, а объем оперативной памяти.

Что мы получим в результате трансляции? Всего навсего cкомпилированное и упакованное ядро системы, помещенное в файл /usr/src/linux/arch/i386/zImage.

Активизация скомпилированного ядра

Это ядро пока что не активизировано и хранится как обычный файл данных. Но прежде, чем устанавливать его на винчестер, давайте создадим специальную загрузочную дискету, чтобы проверить, правильно ли мы все сконфигурировали.

Проверяем работоспособность ядра

Для этого скопируйте ядро системы на дискету (обратите внимание, что диск /dev/fd0 рассматривается в приведенной ниже команде как устройство не имеющее файловой структуры!):


cat zImage > /dev/fd0

А затем выполните несколько настроек ядра на дискете:


rdev /dev/fd0 /dev/hda3

rdev -v /dev/fd0 -1
rdev -R /dev/fd0 1
rdev -r /dev/fd0 0

Теперь осталось перезагрузиться с полученной дискеты и убедиться в работоспособности нового ядра системы.

После того, как вы выяснили, что новая версия загружается без каких лмбо ужасных сообшений об ошибках имеет смысл научить Linux загружаться без дополнительной дискеты. При этом хотелось бы конечно, чтобы и MS-DOS также не потерял своей способности к загрузке. Сделать это совсем не сложно, поскольку вы можете установить в MBR Linux Loader с ветвлением путей загрузки операционной системы. Вообще-то эта возможность присутствовала и в первых выпусках, но начиная с Volume 3 появилась приятная диалоговая оболочка помогающая решению этой проблемы. Итак начнем.

Установка начального загрузчика

Во-первых, вы копируете скомпилированный образ ядра поверх уже существующего на винчестере:


cp /usr/src/linux/zImage /vmlinuz

После этого вы повторяете приведенные выше четыре заклинания "rdev", заменив /dev/fd0 на /vmlinuz.

А теперь вы вводите команду Setup и выбираете пункт меню Set LILO. Вначале вы создаете новый сценарий для LILO (команда BEGIN). Затем добавляете в него два раздела - для DOS и для Linux. Тот раздел, который будет упомянут первым будет загружаться автоматически. Для второго вас придется вводить запрос.

При этом вы можете определить временной интервал, в течение которого компьютер будет ожидать ввода пользователя после чего будет осуществлена загрузка первой операционной системы, или же можно заставить LILO выходить на запрос типа системы, которую вы хотите загрузить. По завершении установки всех опций LILO вам остается выбрать пункт end и в MBR будет помещен новый загрузчик.

Имейте в виду, что если вам вздумается еще раз перекомпилировать ядро, то простого копирования его поверх уже существующего будет недостаточно. Вам нужно будет обязательно четыре раза повторить заклинание "rdev" и еще раз создать ЗАНОВО и переустановить загрузчик LILO.

Причина хоть и не лежит на поверхности, но достаточно проста. Файловая система Linux гораздо сложнее, чем кажется пользователю. В частности ядро системы /vmlinuz находится в специальном суперблоке, размещаемом в служебных областях винчестера. Если вам не жалко потерять несколько чаосв уже проделанной работы - можно провести следующий эксперимент.

Трудоемкий и убедительный эксперимент

Загрузите MS-DOS (Если вы забыли какой идентификатор у DOS, а какой у Linux - нажмите клавишу [Tab] и на экран будет выведен список загружаемых разделов. Теперь запустите программу fdisk из MS-DOS. Удалите все разделы Linux, назначьте освободившееся место для раздела DOS, а затем, вернувшись в DOS отформатируйте новый раздел. А теперь попробуйте выбрать в начальном загрузчика раздел Linux и загрузить его.

И к изумлению зрителей "неубиенный" Linux будет загружен в оперативную память. Работать вы конечно же не сможете, поскольку все каталоги и файлы уже уничтожены, но сама система при этом не пострадала!

Но хватит абстрактных экспериментов, давайте продолжим настройку системы. Что мы уже получили? Система поддерживает свой собственный раздел и раздел MS-DOS, теоретически работает с гибкими дисками и приводом CD-ROM. Одна беда, при поытке установки с привода CD-ROM мы получаем сообщение, что он недоступен! В чем же дело?

И вновь все не так страшно, как кажется. Ранее мы упомянули о том, что файловые системы надо монтировать и немного сказали о точке монтирования. Так давайте смонтируем системы для дисководов и привода CD-ROM!

Монтирование файловых систем

Самое время познакомиться с одной из команд Unix - man. Это система управления справочной информацией по операционной системе, языкам программирования, прикладным программам и так далее. Так вот для практики попробуйте вызвать справку по теме ftab:


man ftab

А теперь перейдите в каталог /etc (в котором хранятся все конфигурационные файлы системы) и вызовите на редактирование файл ftab:


vi ftab

Да, кстати, чтобы не заставлять вас искать описание vi, я попробую сказать,

что делать.

Нажмите клавишу <Ins> и вы перейдете в режим редактирования. Переведите курсор в конец любой строки и нажмите <Enter>. Появится новая строка.

Заполните ее следующими данными:


/dev/fd0     /A    msdos   defaults

а затем создайте еще две строки


/dev/fd1    /B     msdos    defaults

/dev/cdrom  /rom   iso9660   ro

После этого нажмите клавишу <Esc>, а затем наберите три символа (они будут показаны в левом нижнем углу экрана:


:wq

После этого новый файл ftab будет записан на диск.

Но это еще не все. Теперь вы должны создать три новых каталога, которые будут являться точками монтирования:


mkdir /A

mkdir /B
mkdir /rom

Как вы вероятно уже догадались, дисководы A и B будут поддерживать доступ к дискетам в стандарте MS-DOS, а CD-ROM - в стандарте iso9660.

Ну с дисководами вроде понятно. Если вы хотите поддерживать файловую систему Linux - замените msdos на ext2fs и все! А вот для привода CD-ROM файловую систему менять нельзя! Ведь даже DOS обращается (через драйвер mscdex.exe) именно к этим структурам данных.

Ну ладно, теперь мы для чистоты эксперимента перезагрузим компьютер (используйте только комбинацию из трех пальцев - ctrl-alt-del, нажатие кнопки reset может погубить все данные!) и попробуйте просмотреть содержимое каталога /rom.

Увы там пусто! А все потому что файл ftab содержит только информацию о точках м параметрах монтирования файловых систем, но самого монтирования не выполняет. А поэтому попробуйте ввести команду:


mount /dev/cdrom

Теперь можно и повторить команду ls. Как видите, пустой каталог /rom

вдруг наполнился новым содержанием! Это и есть содержимое оптического

диска. Обратите внимание на два каталога, наывающихся, с использованием той или иной транскрипции slackware, например:


/rom/slakware

/rom/slackware.120

В этих каталогах находятся две версии дистрибутивов операционной системы, и именно оттуда программа setup должна устанавливать файлы.

Ну что же продолжим! Вызывайте программу setup, а затем выберите пункт source. А теперь вы должны указать в качестве источника дисковых наборов не какой-то абстрактный привод CD-ROM, а уже смонтированный каталог, например /rom/slackware.120. Теперь вы указываете все те дисковые наборы, которые хотите установить, и в путь...

Конечно, это далеко не все. В частности мы пока не подключили принтер, не настроили конфигурацию графической оболочки XWindows и не создали комфортной среды для пользователя. В общем у вас пока больше вопросов, чем ответов.

Отвечу только на один. Как сменить дискету или CD-ROM? Для этого вы должны сначала размонтировать каталог - точку монтирования:


umount /rom

установить новый диск и повторить команду монтирования


mount /dev/cdrom

То же относится, конечно и к дискетам.

Установка дистрибутива Red Hat

Хотя диски фирмы Red Hat в России "в чистом вид" достать не так то просто, вы можете познакомиться с этим дистрибутивом приобретя вполне доступный компакт-диск "Открытое ядро". На диске имеется руководство по установке системы, однако, как и большая часть Linux-документация, оно ориентировано на людей уже знакомых с особенностями установки UNIX из Среды DOS. Поэтому в этой главе мы рассмотрим процесс настройки дистрибутива Red Hat более подробно.

Общая структура дистрибутива

Дистрибутив Red Hat Linux 2.1 содержится в нескольких каталогах, организиваонных следующим образом:

Вот что находится в каталоге Red Hat:

Для того, чтобы установить систему вам, так же, как и для дистрибутива Slackware потребуется вначале создать загрузочные диски, используя данные в каталогах \sets\images\ и \sets\updates.

Требования к аппаратным средствам

Для того, чтобы инсталлировать дистрибутив Red Hat в полном объеме, вам потребуется как минимум следующая аппаратная конфигурация:

Если Вы имеете только 4 Мб RAM, тогда вместо Red Hat Вам следует установить Slackware Linux. Если же на Вашем диске есть менее 150 Мб свободного пространства, то Вы сможете установить Red Hat, но в ограниченном объеме. После первоначальной инсталляции у Вас будет возможность установить с CD-ROM дополнительные пакеты. При попытке установить сразу слишком много пакетов, может возникнуть проблема переполнения диска и текущую инсталляцию придется прекратить и начать все с самого начала.

Выбор ядра системы

Первым Вашим шагом будет создание трех дискет с образами дисков: одна для boot диска и две для ramdisk. ramdisk дискеты одинаковы для любой аппаратной конфигурации и не зависят от того, какую аппаратуру вы конкретно имеете. Однако, это не так для boot диска, вариантов которого существует большое количество и нужно выбрать один из них в зависимости от Вашей аппаратной конфигурации.

В Таблице 5 содержится информация, которая поможет Вам выбрать подходящий boot диск.
Код ядра SCSI-контроллер Ethernet-контроллер Привод CD-ROM
0000 Нет Нет IDE/ATAPI или SCSI
0001 НетНет Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0002 НетНет Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0003 НетSMC IDE/ATAPI или SCSI
0004 НетSMC Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0005 НетSMC Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0006 НетWestern Digital IDE/ATAPI или SCSI
0007 НетWestern Digital Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0008 НетWestern Digital Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0009 Нет3c503, 3c509, 3c579 IDE/ATAPI или SCSI
0010 Нет3c503, 3c509, 3c579 Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0011 Нет3c503, 3c509, 3c579 Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0012 НетAMD LANCE и PCnet (AT1500 и NE2100) IDE/ATAPI или SCSI
0013 НетAMD LANCE и PCnet (AT1500 и NE2100) Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0014 НетAMD LANCE и PCnet (AT1500 и NE2100) Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0015 НетПрочие IDE/ATAPI или SCSI
0016 НетПрочие Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0017 НетПрочие Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0018 Adaptec, Buslogic Нет IDE/ATAPI или SCSI
0019 Adaptec, Buslogic Нет Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0020 Adaptec, Buslogic Нет Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0021 Adaptec, Buslogic SMC IDE/ATAPI или SCSI
0022 Adaptec, Buslogic SMC Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0023 Adaptec, Buslogic SMC Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0024 Adaptec, Buslogic Western Digital IDE/ATAPI или SCSI
0025 Adaptec, Buslogic Western Digital Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0026 Adaptec, Buslogic Western Digital Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0027 Adaptec, Buslogic 3c503, 3c509, 3c579 IDE/ATAPI или SCSI
0028 Adaptec, Buslogic 3c503, 3c509, 3c579 Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0029 Adaptec, Buslogic 3c503, 3c509, 3c579 Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0030 Adaptec, Buslogic AMD LANCE и PCnet (AT1500 и NE2100) IDE/ATAPI или SCSI
0031 Adaptec, Buslogic AMD LANCE и PCnet (AT1500 и NE2100) Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0032 Adaptec, Buslogic AMD LANCE и PCnet (AT1500 и NE2100) Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0033 Adaptec, Buslogic Прочие IDE/ATAPI или SCSI
0034 Adaptec, Buslogic Прочие Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0035 Adaptec, Buslogic Прочие Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0036 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Нет IDE/ATAPI или SCSI
0037 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Нет Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0038 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Нет Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0039 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 SMC IDE/ATAPI или SCSI
0040 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 SMC Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0041 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 SMC Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0042 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Western Digital IDE/ATAPI или SCSI
0043 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Western Digital Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0044 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Western Digital Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0045 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 3c503, 3c509, 3c579 IDE/ATAPI или SCSI
0046 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 3c503, 3c509, 3c579 Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0047 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 3c503, 3c509, 3c579 Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0048 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 AMD LANCE и PCnet (AT1500 и NE2100) IDE/ATAPI или SCSI
0049 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 AMD LANCE и PCnet (AT1500 и NE2100) Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0050 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 AMD LANCE и PCnet (AT1500 и NE2100) Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0051 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Прочие IDE/ATAPI или SCSI
0052 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Прочие Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0053 EATA-DMA, UltraStor, Future Domain, NCR5380, NCR53c7,8xx, IN2000 Прочие Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0054 ПрочиеНет IDE/ATAPI или SCSI
0055 ПрочиеНет Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0056 ПрочиеНет Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0057 ПрочиеSMC IDE/ATAPI или SCSI
0058 ПрочиеSMC Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0059 ПрочиеSMC Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0060 ПрочиеWestern Digital IDE/ATAPI или SCSI
0061 ПрочиеWestern Digital Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0062 ПрочиеWestern Digital Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0063 Прочие3c503, 3c509, 3c579 IDE/ATAPI или SCSI
0064 Прочие3c503, 3c509, 3c579 Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0065 Прочие3c503, 3c509, 3c579 Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0066 ПрочиеAMD LANCE и PCnet (AT1500 и NE2100) IDE/ATAPI или SCSI
0067 ПрочиеAMD LANCE и PCnet (AT1500 и NE2100) Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0068 ПрочиеAMD LANCE и PCnet (AT1500 и NE2100) Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes
0069 ПрочиеПрочие IDE/ATAPI или SCSI
0070 ПрочиеПрочие Mitsumi (не IDE/ATAPI), Sony CDU31A/CDU33A/CDU535
0071 ПрочиеПрочие Matsushita/Panasonic, Sound Blaster, Aztech/Orchid/Okano/Wearnes

Выберите аппаратную конфигурацию, соответствующую Вашей системе. Поскольку существует несколько различных дисков с 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 как экспортируемую.

Выбор интерфейса: текстовый или X-Window

Одна из приятных особенностей дистрибутива 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

Для того, чтобы обновить уже установленную на вашей машине версию Red Hat Linux 2.0 до 2.1, запустите скрипт в текущем каталоге командой:


./upgrade

(у Вас должен быть инсталлирован Perl для этой цели.) Если Вы перед выполнением настоящей инсталляции предпочитаете посмотреть, что из программных продуктов подлежит замене, запустите команду:


./upgrade-test

Перед запуском скрипт-файла неплохо выкинуть по возможности как можно больше приложений. Вы может быть даже захотите перевести систему в однопользовательский режим с 'telinit 1'. После оконачания обновления версии системы вы можете снова вернуться в многопользовательский режим с 'telinit 3'.

Предостережение: Ваши /etc/password и разные другие конфигурационные файлы могут быть переименованы, например в etc/password.orig.

Установка дистрибутива Linuxware

Установка графической оболочки X-Window

Теперь, после того, как базовое ядро системы установлено, рассмотрим, как же устанавливается графическая оболочка X-Windows.

Linux поставляется со всеми библиотеками и инстументальными средствами,необходимыми для разработки приложений для X-Windows. Хотя одна задача уже решена! Г-н Вакуленко разработал пакет xcyr для русификации X-windows, который поддерживает различные кодовые таблицы и раскладки клавиатуры. Возможно, кому то покажется относительно бедным набор шрифтов, но как вы догадываетесь, здесь есть к чему приложить руки.

Но для того, чтобы заняться программированием в X-Windows, оболочку надо по крайней мере установить. Вот этим мы сейчас и займемся.

Прежде всего, необходимо установить на винчестер все пакеты, связанные с X-Windows. Конечно же, к ним относятся X и XAP, но не забудьте и библиотеки и вспосогательные средства, как например OI. Самое важное - не скупитесь, ставьте по максимуму! Но не забывайте о тонкостях, которые нигде не описаны.

Тонкость N1 - X-сервер

При установке ядра системы вам будет предложено установить один из семи уже скомпилированных серверов:

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-сервер).

Тонкость N2 - конфигурирование системы.

После того, как вы запустите 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. Пора взглянуть на нее внимательнее.

Virtual 1024 1024