Первый шаг: от «чайника» – в Unix

Кто отказался от излишеств,
тот избавился от лишений.

И. Кант

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

Собственно говоря, предпосылок у этой статьи немного — переполненный простыми (более точно — типовыми) вопросами об установке той или иной версии бесплатного клона Unix почтовый ящик, предыдущий выпуск "Компьютерного Обозрения", посвященный freeware для ОС MS Windows, недавнее публичное выступление Мигеля Иказа (Miguel Icaza) на симпозиуме по Linux в Оттаве и оставшаяся в прошлом статья об операционной системе Plan9. На первый взгляд, трудно связать эти разрозненные события, однако все они объединены в той или иной мере двумя важными вопросами: очевидной необходимостью использования лицензионного ПО и пригодностью альтернативных систем к повседневным нуждам. Многие пользователи "пиратских" программ мотивируют вынужденную необходимость пиратства, с одной стороны, огромным разрывом между стоимостью ПО и уровнем доходов, с другой — трудностью освоения альтернативных, легально бесплатных ОС. И действительно, начинающий пользователь Windows "подкреплен" массой книг "для чайников", в которых с высокой степенью детализации описан процесс инсталляции системы "в картинках", что дает возможность безболезненно перейти к непосредственному освоению системы. Новичок в Unix, увы, такой информацией обделен — сказываются и присущая этой ОС сегментация (даже в пределах одного семейства, например — Linux), и высокая динамика развития, и концептуальная сложность (с точки зрения начинающего) ОС Unix. Но даже преодолевший первые трудности "начинающий юниксоид" неизбежно сталкивается с серьезными проблемами на этапе освоения системы — из огромного количества разработанного для Unix ПО надо выбрать то немногое, что позволит как можно быстрее перейти к эффективной эксплуатации системы.

Самая важная деталь компьютера

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

Субъективный реализм

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

Первый и самый важный вопрос — выбор операционной системы. Выбирать есть из чего — множество дистрибутивов Unix-совместимых ОС доступно по более чем приемлемым ценам (фактически, по цене носителя). Даже короткий перечень уже способен поставить в тупик: огромное семейство Linux (Slackware, RedHat, BlackCat, Debian…), FreeBSD, NetBSD, OpenBSD, Solaris, SCO UnixWare. В принципе, все современные реализации этих ОС очень хороши, однако у каждой "ветви" есть свои особенности и широко пропагандируемые достоинства. О недостатках как-то говорить не принято, но их знание как раз и помогает в трудном вопросе выбора. Так, семейство Linux "страдает" хроническими болезнями сегментации и непредсказуемости развития, предопределенными как моделью разработки ядра, так и моделью концепции Linux (это все-таки не операционная система, а всего лишь ядро ОС). Семейство *BSD, напротив, часто обвиняют в "келейной" модели развития. "Полукоммерческие" ОС (UnixWare и Solaris) очень сложны в освоении и не слишком хороши для "учебной парты". Если отбросить параноидальное неприятие тех или иных лицензий, допускающих свободное использование этих ОС, то наилучшим выбором окажется семейство BSD-систем: во-первых, это полноценные проекты, в которых существует четко определенная стратегия развития, во-вторых, "келейная" модель проектирования на деле оказывается очень эффективной, что подтверждается практически коммерческим качеством BSD-систем.

Итак, *BSD. Все три проекта (Free-, Net-, OpenBSD), несмотря на общность происхождения, представляют три направления развития ОС Unix вообще. Разработчики FreeBSD концентрируют усилия на поддержке распространенных платформ архитектуры x86, NetBSD являет собой образчик настоящей Unix как "мобильной операционной системы" (NetBSD работает практически на всех архитектурах, включая x86), проект OpenBSD направлен на создание максимально защищенной Unix для сетевых приложений.

С точки зрения автора, если речь идет о Unix, то единственно правильным выбором можно было бы считать NetBSD — именно эта ОС воплощает одну из главных идей Unix — мобильность (для достижения которой, к слову, используются очень красивые решения). Но NetBSD не слишком распространена в Украине, поэтому задача выбора сокращается до двух вариантов. Так как речь идет о фактически персональной рабочей станции, созданной на основе недорогого ПК архитектуры x86, особенности OpenBSD, более важные для серверных приложений, нас не слишком интересуют. Остается один-единственный вариант — FreeBSD.

И наконец, для полной определенности на этом этапе необходимо решить последний вопрос — выбор версии, с которой вам предстоит работать. На сегодняшний день проект FreeBSD поддерживает и развивает три "ответвления" — семейства версий 3.x, 4.x и 5.x. С пользовательской точки зрения многие тонкие различия между этими семействами незначительны (точнее, пока незначительны, на этапе освоения системы вы сами их узнаете), но есть один очень важный момент, заслуживающий отдельного рассмотрения. Версия основного системного компилятора — термин совершенно незнакомый "пришельцам из настольных систем в мир Unix". Во FreeBSD используется компилятор gcc (способный формировать исполняемые программы из исходных текстов на языках C, C++, Objective C), один из самых новых стабильных релизов которого (2.95.2, с хорошей реализацией C++) является основой версий семейства 4.x. Соответственно многие программы, доступные в исходных текстах C++, лучше всего "собирать" (запомните этот термин — он обозначает компиляцию и генерацию исполняемой программы с помощью редактора связей, или линкера) посредством gcc 2.95.2. Кроме того, если вы собираетесь изучать C++, наличие этого релиза компилятора окажется практически необходимым. Ну и, наконец, последний довод — FreeBSD семейства 4.x стабильна и хорошо поддерживает современные аппаратные средства.

Итак, выбор сделан — FreeBSD 4.x. Каким будет этот "x", зависит от времени, — сегодня существует релиз 4.0, в ближайшем будущем ожидается 4.1 (в принципе, торопиться с установкой 4.0 не обязательно, но и переход с 4.0 на 4.1 серьезного труда не составит).

Легкие проблемы тяжелого металла

К счастью, FreeBSD весьма нетребовательна к "железу". Для вашей рабочей станции подойдет и старенький Pentium, и Celeron. Даже у отслужившей свое древней 486-й скорее всего откроется "второе дыхание". Емкость жесткого диска может быть практически любой: от 1 GB до… уровня финансовых возможностей. Не гонитесь за дорогими видеокартами, а если вы в состоянии приобрести старенький и дешевый сегодня акселератор на чипсете S3 868 (или 968) с отдельным DAC от IBM (микросхема цифроаналогового преобразователя в характерном синем керамическом корпусе), считайте, что вам повезло. Видеопамяти много не понадобится (2—4 MB более чем достаточно). Объем оперативной памяти зависит от ваших аппетитов и ресурсоемкости установленного ПО, все последующие рекомендации ориентированы на самый широкий спектр параметров компьютера без ущерба функциональности. Вполне успешно можно работать и со скромными 32 MB, но дополнительные 32 MB лишними не покажутся. Звуковые карты, TV-тюнеры и прочие "свистульки" поддерживаются, но этим целесообразно заняться "после того, как". Немаловажная деталь — монитор: чем он качественнее, тем лучше, но и на 15-дюймовом "середнячке" более чем неплохо можно работать при физическом разрешении 1152 x 864. И наконец, самое важное (и не надо смеяться) — мышка: желательно, чтобы она была трехкнопочной и "честной" (о "копеечных" китайских трехкнопочных поделках лучше забыть, наиболее предпочтительны Logitech, Microsoft и Genius).

Базис

Мы подошли, пожалуй, к самому важному моменту нашей беседы — к "насыщению" системы. Этот вопрос надо решать именно сейчас, пока рабочая станция существует только в вашем воображении. Почему? За 30 лет развития ОС Unix написано такое изобилие программ, что новичку угрожает очень неприятное заболевание с симптомами "рябь в глазах, постоянная бессонница, забитый винчестер". Проще говоря — "дорвавшийся" до бесплатного изобилия "юный юниксоид" начинает пробовать все подряд, теряя время и приобретая устойчивые навыки по удалению пакетов до момента их изучения.

В решении задачи "насыщения" рабочей станции существует несколько негласно признанных подходов, условно называемых минималистическим, ортодоксальным и модернистским. Минималисты считают "все эти графические возможности" глупостями и настаивают на "чистой", терминальной Unix. Ортодоксы в полном согласии с Экклезиастом призывают в поисках нового почаще оглядываться назад. Ну и, наконец, модернисты утверждают, что рабочая станция Unix должна быть похожа на все остальные современные пользовательские системы (и подтверждают эти утверждения соответствующими разработками). Минимализм на начальном этапе мы исключим сразу — ему вы непременно обучитесь (и, может быть, в конце концов к нему и придете). Модернизм в мире Unix имеет четко определенные имена — пользовательские оболочки Gnome, KDE и XFCE. Об их достоинствах уже неоднократно рассказывалось, но… Если вы собираетесь "в мир Unix", то модернизм не для вас — к сожалению, эти разработки направлены на максимальное отдаление вас от ОС, что в случае с инструментальной ОС Unix выглядит, по меньшей мере, нелепо. Так что по модернистскому пути мы не пойдем.

Остался один вариант — ортодоксальный. Заранее не пугайтесь — ортодоксы тоже люди, и ничего в этом страшного нет. И здесь опять необходимого минимума предварительных сведений для совсем "новичков" не избежать. Во-первых, в Unix существует графическая подсистема, по большому счету, никакого отношения к Unix не имеющая. X Window (не следует "X" обзывать "X Windows" — это признак дурного тона и неграмотности) — платформенно-независимая, сетевая, клиент-серверная система управления растровым дисплеем-терминалом. С пользовательской точки зрения, самые важные особенности X заключаются в способности работать в сети (это означает, что вы можете без дополнительных программных средств запускать на удаленном компьютере любую задачу, разработанную для X, а на своей локальной рабочей станции оперировать пользовательским интерфейсом данной задачи, что позволяет как использовать ресурсы более мощных компьютеров в сети, так и организовывать, например, конференционную работу с ПО) и в отсутствие в базовой X Window каких-либо встроенных примитивов пользовательского интерфейса. Если первое свойство — неоспоримое достоинство, то о втором ведутся непрекращающиеся споры: для создания элементов интерфейсов X Window написано огромное количество библиотек, облегчающих программистам решение задач рисования всех этих "кнопочек" (называются такие библиотеки тулкитами), и программ, облегчающих пользователям взаимодействие с X Window (так называемые оконные менеджеры). Естественно, что есть удачные тулкиты (удачность которых определяется качеством и количеством прикладного ПО, созданного на их основе) и удачные оконные менеджеры (здесь критерии менее явные, но все же они есть).

К вопросу о "наполнении" ортодоксальной рабочей станции эта информация имеет непосредственное отношение — спектр доступного прикладного ПО и удобство работы с вашим компьютером будут определяться правильным выбором надежных, стабильно работающих и проверенных временем тулкитов и оконного менеджера. К счастью всех Unix-ортодоксов, с недавних пор этот выбор упростился: освобожденный с очень либеральной лицензией тулкит Motif — классический в мире Unix праотец всех новомодных "цацек" — теперь доступен всем желающим для использования на бесплатных платформах. Концентрировать внимание "новичка" на достоинствах Motif нет смысла — просто примите на веру весь этот волюнтаризм (в недалеком будущем вы убедитесь, что автор не вводил вас в заблуждение). Второй обязательный технологический элемент "наполнения" — гибрид тулкита Tk и интерпретируемого языка Tcl. С использованием Tcl/Tk создана масса программ-шедевров, а концепции этого "гибрида" являются лучшим примером настоящего ПО Unix.

Motif – несмотря на все легенды о ненадежности остается лучшим тулкитом с уникальными возможностями и обеспечивает когерентность приложений

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

Существуют несколько потенциальных претендентов на роль вашего будущего "любимца": MWM, WindowMaker, AfterStep, BlackBox, IceWM, VTWM, PWM. А дальше вам опять придется поверить автору (пока, в скором будущем вы сможете все утверждения проверить): MWM (входящий в поставку тулкита Motif) очень хорош, но слишком ресурсоемок; AfterStep — просто замечательная разработка (это вообще один из лучших оконных менеджеров), но катастрофически неудобный в конфигурировании; BlackBox — красивое детище здравого минимализма, но иногда способен "выбрасывать" самые неожиданные "фокусы"; IceWM — очень симпатичный, легковесный и удобный, но требует установки тулкита GTK, который за несколько лет существования третий раз непредсказуемо изменяется и очень плохо документирован (поэтому и его установка, и установка IceWM при всех достоинствах не выглядят заманчивыми); WindowMaker — "честный", удобный "середнячок" с исключительно простыми и мощными настройками и общим стилем NextStep, единственные недостатки — отсутствие "пейджера" и "прожорливость"; PWM — весьма стабильная молодая разработка с несколько неожиданной, но удачной концепцией "склеивания" окон в "пакеты"; VTWM — суперклассика, с прекрасным пейджером, очень легковесная, обладающая сбалансированной функциональностью/сложностью конфигурирования, но не слишком впечатляющим внешним видом.

Ортодоксальный оконный менеджер VTWM – 15 лет истории, разработка сотрудников Evans&Sutherland

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

И надстройка…

Теперь совсем немного о тех программах, которые стоит установить на диск вашей рабочей станции. Начнем с библиотек — они должны быть установлены в первую очередь (фактически сразу после инсталляции системы или даже в ее ходе). Это, во-первых, библиотека xpm (основного пиксельного формата представления графики в X Window), во-вторых, библиотеки, поддерживающие операции с файлами различных графических форматов (jpeg, tiff, png,…). Кроме библиотек, вам будут очень полезны программы xli и ImageMagick, позволяющие просматривать и конвертировать все существующие форматы графических файлов.

Минимально достаточный набор программ растровой графики: xli («обои» формируются с ее помощью) и ImageMagic

Теперь о главном: текстовом редакторе, этом настоящем "пятом элементе". Unix, несмотря на мощную поддержку графики, была, есть и будет текст-ориентированной системой. Поэтому текстовый редактор в Unix кардинально отличается от всего, с чем вы встречались в "настольных ОС": как по выполняемой роли (в "настольных" системах это просто одна из прикладных программ, в Unix — основной интегрирующий элемент), так и по функциональности (хороший текстовый редактор Unix-стиля обязан обладать способностью передавать выделенный фрагмент буфера текста внешней программе и подменять этот фрагмент результатом ее выполнения). Один такой редактор "всех времен и народов" — vi — в вашей системе присутствует по умолчанию (это POSIX-стандартный редактор всех Unix-систем). Второй — Nedit, который фактически является функциональным аналогом vi, но с очень удобным графическим интерфейсом (на основе Motif, естественно) и встроенным языком макропрограммирования, вам придется установить. Это — минимальный комплект, но если вы освоите и vi и Nedit, потребности в чем-то другом у вас, вероятнее всего, не возникнет. Единственным дополнением можно считать оболочку ased для разработки Tcl/Tk-программ: она очень удобна (но не обязательна). Вторая составляющая — инструментальные средства программиста (если вы собираетесь осваивать Unix и не осваивать программирование, то лучше не стоит и начинать). Здесь у вас без всяких дополнительных затрат будет отладчик gdb (мощный, но для начинающего слишком непривычный), компилятор gcc, утилита make для создания многофайловых проектов. Целесообразные дополнения — графический (опять же, созданный на основе Motif) интерфейс к отладчику gdb под названием DDD (это продукт экстра-класса) и отдельный, легковесный, но очень удобный отладчик UPS. Для начала этого набора будет достаточно.

Чтение документации — то, без чего вам не обойтись. А документация в мире Unix существует в разных форматах: nroff (для ее чтения в вашей системе есть утилита man), GNU info (опять же, утилита info присутствует обязательно), ps (PostScript), pdf и html. Последние три формата исключительно важны — в них представлена масса очень интересных и полезных документов. ps- и pdf-документы можно просматривать и печатать с помощью комбинации из двух программ: GhostScript и MGV (это, собственно, пользовательский интерфейс на основе Motif к программе GhostScript). Так что наличие этих двух программ будем считать обязательным. Также целесообразна установка текстового броузера links, даже в том случае, если вы не собираетесь работать в Internet.

MGV и GhostScript – этого набора достаточно для чтения и печати pdf- и ps-документов

Наконец, немаловажная составляющая — векторный графический редактор. Причем не просто редактор, а настоящая Unix-программа, также способная выполнять интегративную роль. Претендент здесь один, значительно превосходящий всех конкурентов из freeware-мира функциональной насыщенностью и удобством, — Tgif. В этой программе можно "привязывать" к графическим объектам командные фрагменты и даже создавать схемы-графики-чертежи с гиперссылками.

Схемы, документация на программы, рисунки и даже… графическая среда программирования – Tgif

Файловый менеджер — программа, в Unix совершенно необязательная. Можно даже сказать — вредная, потому как скрывает от пользователя замечательные способности командных оболочек. Но начинающему без файлового менеджера будет трудно. Выбор программ такого назначения огромен, но, учитывая наш "базис", наиболее подходящим окажется менеджер FileRunner. Он не просто удобен и ортодоксален (двухпанельная a-la Norton конфигурация), но и исключительно надежен, а также хорошо демонстрирует возможности Tcl/Tk.

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

Великий и могучий

Вопрос локализации Unix — сложный даже в формулировке. Ортодоксальное отношение к этой системе требует признания факта необходимости сквозной общесистемной поддержки только одного языка — увы, английского. И причина такого категорического утверждения — коллективная модель создания ПО для Unix. Представьте себе совместный удмуртско-корейско-испанский проект, в котором разработчики не знают "единого" языка — такой проект уже был и назывался Вавилонской башней. Чем он закончился — известно хорошо. Поэтому у автора отношение к локализации абсолютно утилитарное: так как за рабочей станцией 99% времени проводишь в X Window, то и кириллизацию только этой подсистемы можно считать более чем достаточной.

Курс Молодого Бойца

Такие простые задачи, как-то: где приобрести дистрибутив FreeBSD и как установить систему (а это действительно очень просто), мы рассматривать почти не будем. В "Hot Line" в разделе "Операционные системы" FreeBSD предлагается часто, а установке можно уделить буквально несколько строк. Если у вас есть доступ к Internet, загрузите и тщательно изучите html-руководство (с картинками) по установке этой ОС, почитайте внимательно FreeBSD Handbook, раздел "Инсталляция системы") и только потом принимайтесь за процедуру установки. Сразу, несмотря на все желание добиться быстрых результатов, согласитесь с хорошим радиолюбительским принципом (пока не знаешь передатчик и не уверен в его настройках — в эфир не выходишь), что в вашем случае означает — вы пока "в эфир", т. е. в сеть, рваться не будете. Поэтому при установке не спешите конфигурировать сетевые устройства — это вы еще успеете сделать.

Когда в процессе инсталляции вы дойдете до процедуры задания пользователей, обязательно опишите одного-двух обычных пользователей (указав в поле "Group" слово wheel и выбрав в качестве shell-программы csh — для начала вам с этой командной оболочкой будет легче).

Итак, система установлена, и вы осуществляете свой первый login. Первый login — процедура важная еще и тем, что вы должны на время "очистить" свою машину от всех программ-демонов, работа которых предусмотрена по умолчанию. Итак, login и пароль введены, и вы попали в свой "домашний", персональный каталог (это даже можно проверить: введите имя команды pwd и передайте его shell нажатием клавиши Enter — вы увидите полный путь в файловой системе вашего текущего "местоположения", затем — введите whoami и опять же передайте это слово shell с помощью Enter — вы должны увидеть свое login-имя). Теперь ответственная процедура: вам предстоит на время стать суперпользователем, для чего надо ввести строчку su root (su — имя команды, root — параметр для этой команды), передать ее на выполнение командной оболочке нажатием клавиши Enter, ввести пароль суперпользователя и опять же передать его команде su с помощью Enter. Внешне почти ничего не изменится — разве что приглашение командной строки, прежде обозначавшееся как %, изменилось на #, но повторите эксперимент с командой whoami. Теперь вы — root (cуперпользователь). Подтверждая первую часть этого термина ("супер-"), ничего не боясь, попробуйте проделать следующие манипуляции, используя помощь shell: в командной строке наберите vi /e и нажмите Esc — строка автоматически приведется к виду vi /etc, и вы можете продолжать в нее ввод, нажмите / и d последовательно (строка примет вид vi /etc/d) и нажмите комбинацию клавиш Ctrl и D (такие комбинации обозначаются Ctrl-D). Вы увидите следующую картину

и сможете продолжать ввод. Добавьте к строке еще одну букву — e — и опять нажмите Esc: ситуация изменилась, и теперь строка выглядит, как vi /etc/defaults, и ввод ее можно еще продолжать. Добавим к ней еще два символа — /r — и опять нажмем Esc — получаем vi /etc/defaults/rc.conf. То, что вы только что проделали, называется автодополнением имен файлов (Esc) и селективным просмотром (Ctrl-D) и здорово облегчает работу с файловой системой Unix — так как здесь могут быть очень длинные имена, запомнить их трудно, а набирать — еще трудней, и autocomplete-функция shell — незаменимый помощник.

А что же набранная строка? Она, как и любая командная строка shell, содержит имя команды (всегда первое слово — в нашем случае vi) и параметр, передаваемый команде (в нашем случае — полный путь файла /etc/defaults/rc.conf). Ну что, ж пора нажимать Enter. Если экран принял такой вид,

то вас можно поздравить — вы уже начали первый сеанс редактирования в vi. Так как цель у нас утилитарная, то о vi много рассказывать не будем: просто введите символ : (он появится внизу экрана приглашением) и фразу s/=”YES“/=”NO“ и передайте ее нажатием Enter редактору vi. Строгий vi вас обругает ответом в левом нижнем углу экрана "No match found", но здесь он прав. Нажмите клавишу N, и vi найдет строку, в которой встречается фрагмент текста =”YES“. Теперь введите символ & (Shift-7) — vi послушно заменит фрагмент =”YES“ на строчку =”NO“. После этого повторяйте команды N и & до тех пор, пока vi не сообщит в нижнем левом углу "Pattern not found". Последнее действие с vi — опять ввести символ : и команду из двух символов x! и нажать Enter. Если все удалось — поздравляю, вы уже научились переводить vi в командный режим ex (команда :) и использовать очень мощную команду замены фрагмента текста s. А заодно вы ознакомились с главным файлом в конфигурации FreeBSD — rc.conf, в котором отключили запуск целой кучи программ-демонов, на этапе освоения вам совершенно не нужных. Теперь пора на время "красиво уйти". Помните, что вы все еще root? Проверьте командой whoami. Скомандуйте exit, и вы снова обычный пользователь, затем — logoff… и настало время второго login.

Второй login осуществите суперпользователем. Только для одной цели — чтобы набрать команду shutdown -r now (перезагрузить компьютер сейчас). После перезагрузки — время третьего login’а.

Память вашей машины девственно чиста — ни один из демонов не запущен. Пора завершить начатое. Итак, третий login — обычным пользователем. Как и в первом случае, su root — теперь вы "временный суперпользователь". Установите в привод CD-ROM диск FreeBSD и введите первую длинную команду: "mount —r —t cd9660 /dev/acd0a /cdrom". CD-драйв "зажужжит" и окажется… в вашей файловой системе, а именно в каталоге /cdrom (эта процедура называется монтированием). Пора знакомиться с имеющимся у вас на диске набором пэкеджей (packadges). Измените ваш текущий каталог командой cd/cdrom/packages/. Посмотрите содержимое командой ls. Попробуйте установить некоторые программы:

pkg_add All/xpm- (нажмите Esc, shell сам дополнит имя)
pkg_add All/jpeg- (опять же Esc-автодополнение)
pkg_add All/png- (…)
pkg_add All/tiff- (…)
pkg_add All/xli- (…)

Получается? Кроме того, вы можете узнать, что содержит пэкедж, командой pkg_info с параметром "путь и имя файла пэкеджа", например pkg_info All/xpm-….

Можно сказать, что самые первые шаги вы сделали. В дальнейшем установите "из пэкеджей" (потому что есть еще один способ установки — из исходных текстов) рекомендованные программы и начинайте читать руководства командой man. Ознакомьтесь с теми командами, которые использовались вами в ходе этого "штурма", со всей информацией, связанной с X Window (подсказка — man xinit для начала достаточно).