LinuxBegin.ru - offline-версия от 26.04.2004
Главная | Все темы | Все статьи | Ссылки | Аналоги Windows-программ в Linux | Top 20

"Вечные истины" POSIX-систем. Истина вторая, или как научиться плавать.
(Что такое Linux и зачем он нужен.)


- Алексей Федорчук, 13.12.2003, Unix4All, оригинал -

...А был он в плаванье сущий король.
Это ложь, что он плавал саженками -
У него был поставленный кроль

Аркадий Аршинов

Вторая моя истина столь же тривиальна, что и первая: чтобы научиться плавать, нужно лезть в воду, чтобы научиться работать в Linux'е - нужно начать это делать. Банальность этой истины осложняется одним моментом. Прежде чем начать работать в Linux, эту систему необходимо установить. Поскольку спасение утопающих - дело рук самих утопающих, то устанавливать ее придется, скорее всего, тому самому пользователю, в планы которого и входит обучение Linux'у. А вот тут - увы - оказывается, что сама по себе установка этой системы предполагает некоторые навыки обращения с ней: все та же уловка 22, о которой уже говорилось ранее.

На самом деле все не так суицидально. И современные user-ориентированные дистрибутивы Linux можно установить столь же просто, как и Windows. Именно для того и предназначены программы-инсталляторы, составляющие специфику каждого дистрибутива и являющиеся предметом гордости для их создателей, объектом восхваления или ругани - для пользователей.

Лучшие установщики из хорошо сделанных дистрибутивов Linux позволяют установить систему буквально десятком кликов мыши, потребовав предварительно лишь ответа на несколько вопросов. А то и на один-единственный - не желает ли пользователь проделать все на полном автомате? Или предлагая варианты ответов, один из которых, умолчальный, считается наиболее подходящим. Известная шутка про Debian: установить его может и цыпленок, достаточно научиться клевать клавишу Enter, - не тау уж и далека от истины...

Но тут возникает другая проблема: эти самые замечательные инсталляторы в своей неустанной заботе о пользователе настолько маскируют от него суть своих действий, что пользователь остается в полном недоумении - а что, собственно, они делают. И каким таким волшебным образом на винчестере, который только что был девственно чист, возникает операционная система, да еще и с многочисленными приложениями. Функции которых также не всегда понятны, взаимосвязи - неизвестны, необходимость - может показаться сомнительной. Это - с гносеологической точки зрения. А с практической - оказывается, что в автоматическом или полуавтоматическом (от поклевывания Enter) режиме система установлена не совсем так, как этого хотелось (а то и совсем не так).

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

Так что выбор в качестве первой пробы пера какого-либо user-ориентированного дистрибутива вполне оправдан. Однако понимание сути действий установщика любой дружественной системы от этого не становится менее важным. Тем более, что все они, в сущности, делают одно и то же. Что именно? А давайте подумаем, что нужно сделать, чтобы установить ОС.

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

Далее, неплохо иметь носитель, на который она будет устанавливаться. Таковым в большинстве случаев выступает жесткий диск (он же винчестер или просто винт). Причем этот носитель нужно подготовить тем образом, доступным для понимания устанавливаемой системой.

Третий шаг - перенос с установочного носителя на диск собственно системы и всего, что ей (и пользователю) необходимо для счастья, - интуитивно понятен. Ну и последнее - это обеспечение загрузки свежеустановленной системы.

Хотя нет, есть еще и пятый шаг - это настройка графического режима работы. Сама по себе она к Linux'у никакого отношения не имеет, однако выступает непременным атрибутом установщика любого дистрибутива, претендующего на роль user-ориентированного.

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

Загрузка и запуск

Загрузка Linux для установки этой системы осуществляется с CD - времена загрузочных дискет, надеюсь, остались в далеком прошлом, а времена DVD-дисков - пока еще в светлом будущем (хотя некоторые дистрибутивы и предлагаются на этих носителях). То есть первый (а иногда - и не только первый) диск любого дистрибутивного набора - загрузочный, и для старта достаточно вставить его в соответствующий привод, перезагрузить машину (тремя пальцами или одним - по ситуации), в ходе перезагрузки выставить в BIOS Setup соответствующую опцию - загрузка с CD, - и ждать завершения процесса (что может занять не одну минуту).

Первое, что делает загрузчик Linux - это загружает Linux:-). То есть ту часть этой системы, которая называется ядром (некоторые считают, что ядро - это и есть Linux, однако, как вы поняли из преамбулы, я с этим не согласен). Ядро ОС отвечает за взаимодействие всех остальных программ с "железом" целевой машины (в самом широком смысле слова) - без такого взаимодействия никакие дальнейшие действия невозможны.

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

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

Не все оборудование критически важно на стадии установки. Очевидно, что к такому относятся: носитель дистрибутива (то есть CD, вернее, его интерфейс, а еще вернее - контроллер оного), целевой накопитель (рискну предположить, что им будет винчестер), память (как с точки зрения количества - для всех установщиков, как и любых других программ, требуется некоторый минимум под самих себя, - так и качества - часто именно при инсталляции Linux'а выявляются "глючные" модули). Большинство установщиков user-ориентированных дистрибутивов по умолчанию запускаются в графическом режиме - и потому немаловажным моментом диагностики является определение возможностей видеокарты. А поскольку графический режим установки почти немыслим без мыши - это устройство (вместе с клавиатурой) также неожиданно оказывается в списке критически важных.

Какие подводные камни могут встретиться на начальной стадии загрузки? Не так и много. Приводы CD ROM и винчестеры уже давно столь стандартны, что ждать здесь осложнений не приходится (о некоторых я скажу чуть позже). Вопрос недостатка памяти - актуальность практически потерял, ее качество - вопрос к техподдержке фирмы, у которой покупалась машина. Видеосистема? Здесь, конечно, неожиданности возможны. Однако разнообразие видеокарт осталось в прошлом, современные же, как правило, установщиками распознаются нормально (хотя и не всегда идеально). Бывают проблемы с USB-мышами и, особенно, клавиатурами - не все разработчики дистрибутивов усвоили, что PS/пополамные грызуны (не говоря уже о COM'овских) скоро разделят участь динозавров.

Наиболее вероятные в настоящий момент грабли - это ATA RAID-контроллеры. Ныне ими оснащается чуть не половина всех материнских плат, а вот с поддержкой их Linux'ом (и особенно - установочными ядрами) дело обстоит не лучшим образом.

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

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

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

Если же и это не помогло - остается только сменить "железо". Причем, возможно, только на время установки. Потому что всегда следует помнить: отсутствие поддержки какого-либо дивайса на стадии установки - отнюдь не означает невозможность его работы в Linux вообще. И вполне вероятно, что видеокарта, оставшаяся неопознанной инсталлятором, будет благополучно настроена в дальнейшем. Так что главное - установиться, а там видно будет, как говаривал Наполеоне Буонопарте.

Практически единственное непреодолимое препятствие для установки, с которым я сталкивался - те же ATA RAID, не к ночи будь помянуты. Эта проблема имеет давнюю историю, и существуют обходные пути ее решения, однако задача эта - не для начинающего пользователя. Да и труда часто не стоит. Так что возможно, что тут просто уже придется браться за отвертку и перетыкать винчестер в основной IDE-разъем...

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

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

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

Единственная тонкость касается как раз языка. В одних системах (примером - ASPLinux) язык установки (предположим, русский) никак не связан с базовой русификацией системы (последняя настраивается потом и отдельно). В других же, напротив, избежать последующей ручной русификации можно, только выбрав русский язык как используемый при установке (Mandrake, Altlinux). При этом подчас доходит до смешного: выбор русского языка при установке в некоторых ситуациях делает невозможным ввод латиницы сразу после ее завершения (и, как станет ясным из следующего раздела, входа в систему). Так что - читайте документацию, даже и user-ориентированная система может здорово спросить...

Подготовка диска

Как бы то ни было, промежуточная стадия после загрузки рано или поздно заканчивается. И наступает второй этап большого пути - подготовка диска. Это понятие включает три компонента: разбиение диска на разделы, создание на них файловых систем (или, как говорят в DOS/Windows, форматирование), их монтирование в файловую систему. На сути их останавливаться не будем - каждому из этих действий будет посвящена самостоятельная глава. А пока лишь несколько практических рецептов.

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

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

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

Так что пользователям, и особенно начинающим, прибегать к автоматическому режиму следует только в случае "чистого" диска. Да и то, я бы воздержался от него без веских причин (острого дефицита времени, скажем). Потому что именно начинающему пользователю весьма полезно познакомиться с процедурой дисковой разметки даже в том скудном объеме, в каком это допускают заботящиеся о нем установщики. И вообще - по моему скромному разумению, все автоматические режимы инсталляторов (это касается и дальнейшего, например, выбора пакетов), оправданы как раз не для начинающих пользователей, а на весьма искушенных именно в конкретном дистрибутиве сисадминов. Знающих точно, когда на автоматику можно положиться, а когда следует вмешаться руками.

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

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

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

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

Корневой раздел в первом приближении будем считать предназначенным для системы в целом (в дальнейшем мы увидим, что некоторые ее части целесообразно вынести на отдельные разделы. но пока голову на сей предмет ломать не будем). Размер его, собственно говоря, определяется намерениями на следующем этапе установки, однако чисто на вскидку определим его в диапазоне 2-5 Гбайт.

Раздел подкачки (swap-раздел) предназначен для обмена с оперативной памятью - в него выгружаются, фигурально говоря, давно не использовавшиеся фрагменты программ и данных. Рекомендуемый для него размер равен удвоенному RAM. Насколько такая рекомендация оправданна в настоящее время - вопрос спорный, однако и этим пока не будем заморачиваться - если не знаешь, как делать, делай, как приказано.

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

И последнее. Возможно, установщик будет настойчиво рекомендовать небольшой раздел для использования в качестве загрузочного. Если так - соглашайтесь, не пожалеете. И размер его определите в 30-50 Мбайт (хотя, например, Fedora откажется устанавливаться, если этот раздел будет меньше 70 Мбайт).

Большинство установщиков user-ориентированных дистрибутивов тесно сопрягают разбивку диска с форматированием и монтированием. То есть по создании раздела предлагается выбрать для него файловую систему и определить точку монтирования. Первый вопрос - весьма сложен, но в большинстве случаев можно согласиться с тем, что предлагается по умолчанию. А с монтированием - очевидно, что корневой раздел должен быть смонтирован в точку корня (/), раздел для данных - в точку /home, загрузочный - в точку /boot. А раздел подкачки в монтировании не нуждается...

И еще один важный момент: собственно разбиение диска и форматирование разделов (то есть действия необратимые, после которых откат к старому состоянию диска уже невозможен) обычно выполняются не в момент нашего выбора, а несколько позже. И потому при ошибке можно отказаться от сделанных изменений и начать все сначала.

Установка

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

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

Это не значит. что пакеты - маленькие, размер их может быть самым разным. Как и состав - есть пакеты, включающие фактически одну-единственную монофункциональную программу, есть пакеты, образованные набором программ определенной направленности. А есть - и такие, которые сами по себе являются самостоятельной системой. Примером чему - оконная система X (X Windows System) или, в просторечии, Иксы.

В состав дистрибутива пакеты включаются в двух формах:

  • в виде т.н. исходных текстов (sources - "исходников"), которые перед установкой и использованием подлежат определенным действиям - трансформации в исполняемый код (процесс этот называется сборкой);
  • в виде заранее собранных, т.н. бинарников (или прекомпилированных пакетов), которые необходимо только развернуть из архивов и поместить куда нужно.

Дистрибутивы, содержащие исходные тексты программ, именуются Source Based, дистрибутивы с прекомпилированными бинарниками можно назвать пакетными дистрибутивами. Поскольку все user-ориентированные дистрибутивы - пакетные, дальше в этом разделе речь пойдет только о них (к теме SB-дистрибутивов мы вернемся в соответствующей главе).

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

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

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

Кроме того, проблема выбора осложняется еще явлением, известным под названием "зависимости пакетов". На практике это выглядит так, что выбор пакета A автоматически влечет за собой также установку пакетов B и C - количество зависимостей для каждого пакета может быть разным.

Существуют зависимости обязательные, или "жесткие", и опциональные, или "мягкие". Первые - необходимы для установки и запуска инсталлируемого пакета. В большинстве случаев в эту категорию попадают т.н. системные библиотеки. Так, с главной системной библиотекой glibc (или ее ее аналогами) жесткими зависимостями связаны абсолютно все POSIX-программы.

"Мягкие" зависимости в принципе не критичны для установки и работы пакета. Просто они добавляют ему некоторую дополнительную функциональность, которую сборщики дистрибутивов полагают полезной. Что, однако, не значит, будто эта дополнительная функциональность покажется полезной именно вам..

Как же установщики дистрибутивов позволяют решить пользователю проблему выбора и проблему зависимостей? Первая задача облегчается тем, что в большинстве инсталляторов предусмотрены некоторые предопределенные наборы пакетов, собранные в зависимости от целевого назначения системы: графическая рабочая станция, например, офисный или домашний компьютер, рабочее место программиста, web-, ftp- или файл сервер, и так далее (количество и комплектация таких наборов варьирует в очень широких пределах). Ну а для тех, которые с претензиями и не хотят ходить, как все - по камушкам, уважающие себя дистрибутивы предлагают и ручной, попакетный, выбор компонентов.

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

Если же пользователь решается на попакетный выбор - проблема зависимостей встает перед ним в полный рост. Однако и тут его не бросят наедине с длиннющим списком. В подавляющем большинстве пакетных дистрибутивов существует та или иная система контроля зависимостей, которая не позволит установить компонент A без компонента B, если между ними существует "жесткая" зависимость. В своей заботе о пользователе они идут еще дальше, распространяя ту же систему контроля и на зависимости "мягкие". Впрочем, большинство пакетных дистрибутивов не позволяют различать "жесткие" и "мягкие" зависимости: какие из них прописаны в данном пакете его сборщиком (майнтайнером), те и будут установлены, вне зависимости от вашего желания. Однако на эту тему мы еще подробно поговорим, когда дело дойдет (в одной из следующих глав) до систем пакетного менеджмента

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

Я остановился на этом вопросе подробнее, чем здесь следовало бы, и к тому же существенно забежал вперед. И сделал это лишь для обоснования нехитрого тезиса: если вы устанавливаете свой первый в жизни дистрибутив Linux, не следует рассчитывать, что попакетный выбор даст вам какие-либо преимущества - все равно в системе окажется немало лишнего (а чего-то необходимого может и не хватить). И потому по первости проще положиться на один из предопределенных наборов пакетов - сэкономите немало времени и нервов.

Обеспечение загрузки

После того, как пользователь тем или иным образом разобрался с пакетами, наступает четвертый этап установки - обеспечение загрузки новорожденной системы. Он также распадается на несколько моментов.

Первый момент - это средство для последующей загрузки ядра Linux - ведь теперь у нас не будет в распоряжении загрузочного CD (вернее, прибегать к этому средству не очень удобно - оно оправдано только в ремонтно-восстановительных целях). И потому стандартный способ загрузки ядра - это специальная программа, которая незамысловато называется - системный загрузчик. Теоретически рассуждая, можно обойтись и без него, записав в соответствующее место диска (которое так и называется - загрузочным сектором) некий код, позволяющий обратиться к ядру Linux, как говориться, без посредников. Однако на практике так, насколько мне известно, никто не делает: это лишает возможности сосуществования Linux с какой-либо другой ОС (интересно, какой?), ну и кое-чего другого.

И потому в Linux в качестве стандартных принято два системных загрузчика - традиционный Lilo и GRUB, имеющий шансы стать стандартным в мире Open Sources. Оба они - не просто системные, а мультисистемные, то есть позволяют загружать не только Linux, но и многие другие операционки, от Windows до любой BSD. Какой из них используется в данном дистрибутиве - остается на совести его разработчика.

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

Любой из загрузчиков может быть установлен двумя различными способами - в загрузочный сектор диска или в соответствующий же сектор Linux-раздела (корневого или, если таковой создавался - boot-раздела). Первый способ обязателен, если GRUB или Lilo будут основными системными (или мультисистемными) загрузчиками) - что очевидно, ведь тогда другого загрузчика у нас нет. Если же у нас на машине есть уже некий подходящий загрузчик (а Linux в состоянии грузить и NTloader, или как он там нынче называется, и известный Partition Magic, и Acronis OS Selector), то его можно сохранить, а собственно Linux'овый загрузчик записать в boot-сектор раздела.

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

Дело в том, что установкой программы-загрузчика дело не исчерпывается - она должна быть еще должным образом сконфигурирована. В принципе это делается прямым редактированием конфигурационного файла GRUB или Lilo. Однако обычно установщики дистрибутивов избавляют пользователя от этой докуки, и настраивают загрузчик автоматически. От пользователя требуется только ответить на несколько вопросов (типа уже упоминавшегося - куда писать, или нет ли желания вместе с Linux грузить другу операционку, и есть есть - то какая из них должна грузиться по умолчанию, и т.д., и т.п.).

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

Обеспечение работы в графическом режиме

Изложение своих POSIX-максим я начал с того, что Linux - это не Windows. Тем не менее, придать ему "подоконный" образ можно - для этого нужно только обеспечить возможность работы в графическом режиме. Этой цели служит так называемая оконная система X (X Window System), которую мы по ряду причин в дальнейшем будем называть просто Иксами.

Не премину в очередной раз подчеркнуть, что сами по себе Иксы к Linux'у никакого отношения не имеют. Так как создавались изначально для работы поверх почти любой операционной системы (не обязательно Unix-подобной), в принципе способной работать с графикой. В частности, свободная реализация Иксов - Xfree86, принятая в Linux - это точно та же система, работающая на Free-, Net- и OpenBSD, OS/2 и даже, страшно сказать, поверх Windows. Однако другой полноценной графической системы в Linux, и потому Free86 всегда стандартно включается в любой его дистрибутив (за исключением узкоспециализированных).

В большинстве дистрибутивов XFree86 стандартно входит в любой из предопределенных пользовательских наборов пакетов (но не серверных - там она и не нужна, и даже вредна из соображений безопасности). И потому озадачиваться ее установкой пользователю не приходится. Однако Иксы мало установить - их нужно еще и должным образом настроить. В принципе, как это в обычае POSIX-мира, это делается правкой конфигурационного файла. Однако установщики user-ориентированных дистрибутивов Linux обычно имеют собственные средства для такого конфигурирования, обычно успешно с этой задачей справляющиеся.

Настройка Иксов сводится к двум основным моментам - настройке устройств ввода и устройств вывода. С первыми (а это - обычные клавиатура и мышь) проблем обычно не возникает. Для клавиатуры обычно достаточно выбрать более-менее близкий тип из предлагаемого списка (подчас можно воспользоваться и расширенными возможностями таких клав, как Logitech, Microsoft сотоварищи) и, если локализация системы не была предопределена выбором языка инсталляции, ее раскладку и, возможно, клавишу переключения раскладки.

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

С любыми современными мышами - ничуть не сложнее. Если она была не совсем точно определена на автомате - обычно достаточно скорректировать это выбором из предлагаемого списка (например, Microsoft Intellimouse, Genius NetScroll и т.д.). Иногда, правда, требуется отдельно указать протокол и интерфейс нашего "грызуна". И здесь достаточно помнить, что все современные мыши работают по протоколу Microsoft Intellimouse или просто Microsoft (в зависимости от того, есть у мыши колесико или нет); исключением, говорят, являются некоторые Geius'овские модели - но и для них можно подобрать подходящий. А интерфейс - это порт, куда мышь втыкается, и ныне их осталось два - PS/2, постепенно отмирающий, и USB.

С устройством вывода - то есть сочетанием видеокарты и монитора, - несколько сложнее. Для видеокарты необходимо знать производителя чипа (графического процессора), благо их нынче - раз (Nvidia), два (ATI) и обчелся (Matrox'ом), иногда - модель поточнее, а также объем видеопамяти. Точная же настройка монитора (включая оптимальные частотные характеристики) невозможна без документации: необходимы диапазоны строчной и кадровой развертки. Правда, некоторые дистрибутивы предлагают выбрать конкретную модель из своей базы данных оборудования. Однако а) далеко не всегда это дает лучший результат, чем ручное задание параметров. и б) именно вашей модели по закону всемирного свинства в этом списке может не оказаться.

Общая рекомендация при указании параметров монитора в сомнительных случаях - лучше перебдеть, то есть занизить характеристики, чем недобдеть. Хотя леденящие душу истории о сгоревших при неправильной настройке Иксов трубках отошли в область преданий: современные мультичастотные CRT при завышенных претензиях просто вывалятся в черный экран (что неприятно - потребуется ручная правка конфига, но не смертельно). А вот с LCD-мониторами вообще одно удовольствие - для них частотные характеристики практического значения не имеют.

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

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

Просмотров: 1228  |  Рейтинг статьи: 3.71 (Голосов: 7).
3.71
Дата размещения статьи: 2003-12-18 10:39:34



5 последних поступлений в раздел Что такое Linux и зачем он нужен.:

06.03.04: Киберутопия (Кто же эти чудаки, работающие вечерами для того чтобы осчастливить всех желающих своими программами? ...)
01.02.04: Ну и ГНУ! (Сегодня я хочу рассказать о настоящем двигателе прогресса, каковым является лицензия GNU GPL (GNU Gen...)
18.12.03: "Вечные истины" POSIX-систем. Истина третья, или все для блага человека (Лицо у POSIX-систем было человеческим всегда. Ибо одно из краеугольных понятий, на которых стоял, сто...)
18.12.03: "Вечные истины" POSIX-систем. Истина вторая, или как научиться плавать. (Вторая моя истина столь же тривиальна, что и первая: чтобы научиться плавать, нужно лезть в воду, что...)
13.12.03: "Вечные истины" POSIX-систем. Истина первая, или почему Linux не Windows. (Linux - это не Windows, а Windows - не Linux. И те приемы, что хорошо (эффективно) показывают себя в ...)

Комментарии:

LinuxBegin.ru © 2003-2004 Valery V. Kachurov | Условия использования материалов | О проекте