Однако еще важнее, что дистрибутив определяет ближайший круг общения и стиль общения, в которое неизбежно вступает конечный пользователь. Большая часть литературы, в которой различные дистрибутивы сравниваются между собой[11], сосредоточена на технических различиях, однако, гуманитарные и «коммунитарные» (относящиеся к жизни сообщества) аспекты представляются более важными.
   Наилучший способ выбора «своего» дистрибутива заключается, видимо, в том, чтобы познакомиться с информацией, приводимой на сайте разработчика или издателя, почитать архивы списков рассылки или форумов (обращая внимание на стиль общения, отношение к новым и менее опытным участникам обсуждений), найти нескольких пользователей с определенным опытом в близкой к вашей сфере приложения и пообщаться с ними напрямую. Полезным может оказаться набор критериев, изложенный в следующих двух разделах.
   Критерии для выбора дистрибутива.
   Общая пользовательская аудитория и срок существования дистрибутива. Общее правило: чем более широка аудитория, тем быстрее исправляются ошибки и тем проще найти помощь в решении той или иной задачи. По большому счету, это самый важный параметр дистрибутива, хотя и с нюансами, касающимися специфической сферы применения и языковой среды (см. следующие два пункта).
   Пользовательская аудитория в сфере применения. Чем больше конечных пользователей применяют дистрибутив в вашей сфере деятельности (например, в школьной практике), тем проще найти помощь в решении специфических для этой сферы задач.
   Пользовательская аудитория в языковой среде. Воспользоваться преимуществами развитого пользовательского сообщества может помешать языковой барьер. Важным, таким образом, является наличие достаточного количества пользователей с родным (или хорошо знакомым) для вас языком. Ее наличие (и присутствие в команде людей, пользующихся или хотя бы знакомых с родным для вас языком) также важно в плане отсутствия проблем (или легкости их решения) с локализацией.
   Местная (в географическом смысле) пользовательская аудитория. Распространение электронной почты и других приложений Интернет сделало «местный» фактор менее значимым, но не отменило его. Если рядом с вами (особенно в учебном заведении, расположенном в том же городе) накоплен серьезный опыт пользования тем или иным дистрибутивом, это серьезный довод в пользу его выбора.
   Документированность. Значение имеет также документированность особенностей дистрибутива и наличие свежих переводов документации.
   Консервативность/склонность к экспериментированию. Некоторые составители (такие, как «Дебиан») более склонны к консервативным, проверенным временем решениям, а некоторые (например, «РедХэт») более смелы в экспериментах. Что вам важнее: иметь самые свежие версии программ или меньшую вероятность ошибки? — Не торопитесь с ответом, для него нужны опыт и приходящая только с опытом мудрость, и ответ не будет однозначным.
   Спектр поддерживаемого оборудования (HCL). Наличие формального списка поддерживаемого оборудования или (hardware compatibility list, HCL) — серьезный довод в пользу дистрибутива, особенно, если ваш парк оборудования комплектуется на случайной основе. Если у вас постоянный поставщик оборудования и он сотрудничает с кем-либо из составителей дистрибутивов — это еще более серьезный довод в пользу последнего.
   Поддержка необходимых программ (состав дистрибутива в прикладной части). Как ни странно, это гораздо менее значимый параметр, чем перечисленные выше. Легче самому дополнить несколькими программами дистрибутив, в остальном удовлетворяющий вышеперечисленным критериям.
   Критичность несвободных компонентов. Большинство популярных дистрибутивов (кроме Debian GNU/Linux), по крайней мере, в наиболее полном варианте, включает, помимо свободных, и несвободные программы. Правильная политика заключается в том, чтобы отделять свободное от несвободного и исключать зависимость основной функциональности от несвободных программ (например, в текущем (2.2) выпуске дистрибутива ALT Linux Master все несвободное сосредоточено на девятом диске). Важным является также свободное лицензирование (или, по крайней мере, лицензия на свободное распространение в неизменном виде) документации, каковой политики придерживаются не все разработчики.
   Информационная и ценовая политика разработчика. При прочих равных, преимущественно стоит входить в отношения с поставщиком, придерживающимся полной прозрачности разработки дистрибутивов. Технически это означает свободный доступ (на чтение) к дереву разработки через cvs или ftp или, по крайней мере, простую регистрационную процедуру для получения такого доступа. Разработчики, закрывающие процесс и лишь периодически сбрасывающие его результаты в релизы, скорее всего, готовят сюрпризы своим пользователям, и редко такие сюрпризы оказываются приятными
   Цена изданий на дисках обычно не играет большого значения (поскольку приобретается один-два комплекта на десятки компьютеров) и варьирует незначительно из-за конкуренции между промышленно тиражированными дистрибутивами и альтернативой самостоятельного переписывания с одолженных дисков или через Интернет. Цена «компактного» (один-три диска плюс брошюрка) дистрибутива в России — порядка 200-300 р., «обширного» (шесть-десять CD плюс несколько томов документации) — от одной до трех тыс. р. Публикация дистрибутивов на DVD, возможно, уничтожит феномен «компактного» малодискового дистрибутива и приведет к дальнейшему снижению цен[12].
   Альтернативным способом получения дистрибутива является его полная или попакетная загрузка через Сеть (на сайтах разработчиков практически всегда они есть), что может оказаться дороже, но оперативнее приобретения дисков. Чаще всего пользователи сочетают приобретение комплектов дисков по мере выхода очередных релизов и загрузку по Сети исправлений и обновлений в периоды между релизами.
   Технические параметры дистрибутивов.
   Бинарная установка или установка из исходников? В сообществе «БСД» в качестве штатной процедуры установки принято «портирование», т.е. автоматизированная компиляция и сборка пакетов для целевой машины из исходников. В сообществе «ГНУ/Линукс» в качестве штатной процедуры установки принята распаковка бинарных (прекомпилированных) пакетов, и до недавнего времени (появления так называемых source-based дистрибутивов) все дистрибутивы технически поддерживали именно этот способ установки (хотя, разумеется, администратор мог и пересобрать любой пакет).
   Преимущество установки из исходников — оптимизация под конкретную машину и меньший объем пакетов. Преимущество бинарной установки — более высокая ее скорость. Следует иметь в виду, что сборка некоторых пакетов на компьютере персонального класса может длиться более десяти часов, и пересборка всех часто использующихся программ может занять несколько суток.
   Программа установки, управление пакетами и утилиты настройки. Как уже замечено, большинство дистрибутивов «ГНУ/Линукс», включая самые популярные, предусматривают установку с первоначальной настройкой и обновление с использованием прекомпилированных программ, собранных в пакеты. Пакет, который может включать одну или более программ, файлы конфигурации, документацию и т.п. является минимальной единицей установки или обновления штатными для дистрибутива средствами. В отдельные пакеты составителями собираются также исходные коды, соответствующие прекомпилированному пакету. Процедуры установки, удаления, обновления пакетов называются управлением пакетами.
   Стандарта на пакетирование и управление пакетами не существует. Распространение получили три формата пакетов: rpm (впервые появившийся в дистрибутиве RedHat и применяемый сегодня большинством составителей дистрибутивов), deb (применяемый Debian) и tgz (применяемый Slackware). На формат пакета завязаны программа установки и управления пакетами («rpm» для rpm, «setup» для tgz и «dpkg» для deb), способная отслеживать зависимости между пакетами (ситуации, когда для нормальной работы программы из одного пакета требуется программа (возможно, определенная версия) из другого пакета, или, наоборот, когда программы из разных пакетов являются взаимоисключающими в рамках одной системы).
   В последние годы развиваются усовершенствованные средства управления пакетами, позволяющие преодолевать некоторые ограничения, свойственные «rpm» и «dpkg» (в частности, отслеживать ситуацию смены имени (в отличие от номера версии) пакета). В качестве примеров таких средств можно назвать «apt» (дистрибутивы Debian, ALT Linux и Conectiva) и «yum» (дистрибутив ASPLinux).
   Различные системы пакетирования и управления пакетами примерно равномощны, но используют отличающийся синтаксис. Начинающему администратору проще перейти от администрирования одной системы к другой, если в них применяется одна и та же программа управления пакетами, чем к системе с другой программой управления пакетами.
   Одно время среди составителей дистрибутивов было модно создавать различные «утилиты настройки», обычно с графическими интерфейсами, позволяющие выполнять некоторые административные задачи альтернативным способом. По большей части этот опыт следует признать неудачным, так как попытки администрировать систему такими утилитами обычно рано или поздно приводят ее в неуправляемое или даже неработоспособное состояние.
   Аппаратные платформы. Наконец, следует обратить внимание на аппаратные платформы, на которые ориентирован дистрибутив. Более половины существующих дистрибутивов ориентированы исключительно на IA-32 (IBM PC-совместимые компьютеры), большинство остальных поддерживает две-три аппаратные платформы, а «Дебиан» — целых десять, включая достаточно экзотический. Поддержка даже ненужного вам «железа» при прочих равных, тем не менее, является признаком зрелости дистрибутива.
   Обзор самых популярных дистрибутивов.
   Скорее всего, реальный выбор будет идти между дистрибутивами, либо входящими в «высшую лигу» по популярности в мире (Debian, RedHat, Mandrake и SuSE), либо разрабатывающимися в России (ALT Linux и ASPLinux)[13].
   ALT Linux разрабатывается международным коллективом ALT Linux Team и публикуется одноименной московской компанией. Сильной стороной ALT является достаточно структурированное русскоязычное сообщество пользователей (включающее списки рассылки, справочные серверы, деловые связи ALT Linux и пр.), слабой — отсутствие на сегодня сколько-нибудь серьезной аппаратной базы для тестирования (и, как следствие, отсутствие формального HCL). ALT неплохо документирован[14]. Дистрибутив выходит с 2001 г., хотя следует учитывать и ранний опыт той же команды, выпускавшей до того русскую версию Linux-Mandrake
   ASPLinux — в значительной мере остается производным от Red Hat, причем заявляется бинарная и аппаратная совместимость с последним. ASPLinux более консервативен, чем RedHat, поставка его включает неплохую документацию на русском. Сохраняя лучшие черты RedHat, он, в большинстве случае является более интересным, чем RedHat, вариантом, по крайней мере, для начинающего российского пользователя. Выпускается с 2001 г., хотя следует иметь в виду и более ранний опыт влившейся в коллектив ASPLinux украинской команды Black Cat Linux.
   Debian GNU/Linux. «Образцово-показательный» Debian — единственный из популярных дистрибутивов, принципиально разрабатываемый в некоммерческих рамках. Официальные дистрибутивы Debian содержат пакеты исключительно со свободным софтом. У Debian наиболее формализованные и прозрачные правила взаимодействия в сообществе, причем многие процедуры технологизированы. Debian поддерживает самый широкий спектр аппаратных платформ. «Коробочные» продажи этого дистрибутива невелики, но он является самым популярным среди разработчиков ПО (около половины активных раработчиков свободного ПО пользуются именно им). В России Debian GNU/Linux издается московской компанией ALT Linux, являющейся также разработчиком собственного одноименного дистрибутива (см. выше). Debian GNU/Linux существует с 1993 г.
   Linux-Mandrake. Этот дистрибутив, выпускающийся французской компанией MandrakeSoft, «отпочковался» в свое время (1996 г.) от RedHat и в какой-то момент даже догнал его по количеству коробочных продаж. Парадоксальным образом достаточно высокое качество разработки не помешало компании попасть в затруднительное положение, но компания продолжает выпуск своего дистрибутива, текущая версия которого оценивается пользователями как весьма удачная и сохраняет популярность.
   RedHat Linux. Этот дистрибутив, выпускаемый американской компанией RedHat Software, наиболее популярен в мире среди непрофессиональных пользователей «ГНУ/Линукс», и является лидером по «коробочным» и OEM-продажам. Для RedHat собирается наибольшее количество несвободного софта, что важно для пользователей приложений, не имеющих удовлетворительных свободных реализаций. RedHat Linux существует с 1994 г. В России выходит «кириллическое издание» RedHat, издающееся питерской компанией Linux-ink.
   SuSE Linux. С вхождением SuSE в группу аутсайдеров «ГНУ/Линукс»-дистрибуции UnitedLinux, стремящихся за счет объединения усилий отвоевать часть рыночной доли RedHat, перспективы дистрибутивов SuSE, имеющих, несомненно, свои преимущества, становятся весьма туманными, хотя текущее состояние проекта достаточно стабильное[15].
   Среди неназванных неплохие шансы стать по-настоящему популярным имеет также относительно новый дистрибутив Gentoo. В отличие от перечисленных — это дистрибутив, предполагающий установку из исходников (source-based, см. выше).
   Любой из перечисленных дистрибутивов (также, как и многие из неперечисленных) может быть использован для знакомства с «ГНУ/Линукс» примерно с равным успехом. Любой из них, даже в минимальной (одно-трехдисковой) поставке содержит почти все из описанных в книге пакетов.
   На случай прочих равных (и настоятельной необходимости немедленно выбрать дистрибутив для первого знакомства с «ГНУ/Линукс») лектор рискнет порекомендовать Debian GNU/Linux. Категорически не рекомендуются (в любой ситуации) Lindows и Caldera OpenLinux, а также дистрибутивы, разработка которых прекращена (Corel Linux, Storm Linux, Stampede, HP Secure Linux).
   Рекомендуется также избегать «экзотических» дистрибутивов, хотя, как отмечалось выше, такие факторы, как, например, наличие «под боком» организации или группы с большим опытом в использовании даже относительно слабораспространенного (в мире или стране) дистрибутива, могут перевесить соображения популярности.

1.3 Почему командная строка?

   Существует широко распространенное заблуждение, согласно которому графический интерфейс якобы представляет собой высшую и последнюю стадию развития пользовательских интерфейсов, а «командная строка» — это нечто примитивное и малополезное, если не устаревшее.
   На самом деле, эта «иерархия» отражает не что иное, как порядок, в котором с двумя основными метафорами организации пользовательских интерфейсов познакомились пользователи персональных компьютеров. Вплоть до начала девяностых ПК были простыми и маломощными, поддержка графики и возможность комфортной работы с оконными графическими системами появилась на них недавно (даже в масштабе стремительно развивающейся информационно-технологической отрасли).
   Однако за годы до этого графические интерфейсы уже широко применялись на рабочих станциях — конечно, более дорогом, редком и специализированном оборудовании. Если быть точными, то обе концепции в их более или менее современном виде сформировались примерно в одно время.
   В 1967-68 гг. Дуг Энгельбарт представил прототип т.н. WIMP-интерфейса, т.е. интерфейса, использующего понятия окон (windows), пиктограмм (icons), меню (menus) и указателей (pointers), являющихся ключевыми и для сегодняшних графических пользовательских сред.
   В 1968-69 гг. Кен Томсон и Деннис Ричи представили первый релиз ОС UNIX, по сути, явившейся прототипом артикулированной системы современных понятий практической информатики, таких, как процессы и файлы, и содержащей непротиворечивый, логичный и лаконичный язык работы с соответствующими им сущностями, который спустя полтора десятка лет стал стандартным пользовательским интерфейсом ОС.
   Разумеется, как одна, так и вторая метафорические системы появились не на голом месте, и их родословную можно проследить вплоть до истоков вычислительной техники: до коммуникационной панели первых компьютеров, как вещи твердой и весьма графической (или, во всяком случае, живописной) — это конец сороковых, и до языков управления заданиями в первых программных планировщиках, загрузчиках и ОС — это середина пятидесятых, соответственно. Отметим, что идея управления компьютером как «прибором» — с помощью органов управления (неважно, «в железе» или нарисованных на экране) старше идеи «диалога» при помощи слов.
   При этом для большинства пользователей знакомство с «командной строкой» до недавнего времени отягощалось радикальными «кастрацией» и изменением, которым язык стандартной оболочки ОС был подвергнут при разработке упрощенных ОС для ПК (таких, как «СиПи/М», «МС-ДОС» («ПиСи-ДОС») и клонов последней). Ограничиваясь знакомством со средствами «МС-ДОС» и ее командных файлов, о метафоре «командной строки» можно составить лишь весьма превратное и убогое представление.
   Для людей старорежимных, начиная от возраста автора (ему чуть за 30) и старше, компьютер удивителен и страшен своей уникальной способностью к символической активности. Мы выросли в мире «глупых» вещей, пассивных или проявляющих свою активность чисто механически (как автомобиль, который может быстро довезти, или же раздавить, если вовремя не увернешься), и неспособных к диалогу в бытовом окружении. К диалогу способны были вещи культуры (книга, картина, симфония) — но опосредованно, в отдельных, отведенных для этого местах, в назначенное время и при тщательном отборе собеседников.
   Возможно, пирожное и говорило, по Курту Левину, на своем кондитерском языке «съешь меня», но ничего подобного продемонстрированной нам недавно упаковке, говорящей «купи меня» уже обычным человеческим голосом (причем, с учетом физиоантропометрических данных приблизившегося покупателя), не было. Вещи были «глупыми», сколь бы изощренный ум своих создателей они не воплощали, а умными были только люди.
   Автор до сих пор находится под влиянием первого своего опыта в десятилетнем возрасте общения с компьютером, что-то ему ответившим в ответ на введенную строку. Ответившим осмысленно. (Подробностей он не помнит, но, скорее всего, первым ответом было указание на то, что команда содержит синтаксическую ошибку.) Слово страшен выше — не случайно, но, в конце концов, компьютеры были тогда надежно заперты в своих вычислительных центрах.
   Роль клетки для этого зверя для очень многих сегодня играет гладкая поверхность «графических интерфейсов», скрывающая диалог. Компьютер, прикрытый таким образом, уже не демонстрирует пугающую символическую наготу. Он реагирует на нажатую кнопку с картинкой — можно успокаивать себя, что это такая хитрая машинка: пылесос после нажатия кнопки сосет, а компьютер — печатает, связано все чисто механически, и никакого человечка, который с изнанки интерфейса посмотрел, куда же ты нажал и определил, что сделать с картинкой, нет.
   На самом деле призрак маленьких человечков есть — за кулисами гладкой разрисованной поверхности идет обмен такими же — mutatis mutandis — сообщениями, что озадачили автора, когда он был маленьким. От нынешних маленьких их хотят попрятать, как электрический ток за изоляцией, чтобы не стукнуло. Но в шкафу каждого компьютера, будь он трижды персональный, спрятан скелет искусственного разума, при всей условности последнего выражения.
   Существует влиятельная тенденция в современных гуманитарных дисциплинах, получившая распространение в основном в англоязычном мире и связанная с остроумными теориями канадского ученого Маршалла Мак-Люэна, утверждавшего, что письменная («визуальная») культура связана с гипертрофией аналитических функций человеческого интеллекта на определенных стадиях его развития, и что ее сменяет культура «аудиальная», направленная на синтез целого путем рассеивания внимания, и возврат к доиндивидуалистическому, общинному сознанию, от полиса и урба — к «глобальной деревне».
   С этой сменой он связывал рост популярности телевидения (и относительное снижение популярности чтения как досуга) и «клип-культуры», а его последователи указывают и на несомненный рост в девяностые популярности «графических пользовательских интерфейсов» компьютеров, причем не только в быту, но и в деловом окружении.
   Мак-Льюэн, впрочем, в своем «зондировании» (как он именовал свое творчество, весьма последовательно отказываясь называть свои позднейшие произведения «текстами») был достаточно ироничен, что в гораздо меньшей степени наблюдается в творчестве его последователей.
   Разумеется, каждый имеет право, хотя оно особо и не оговорено в Конституции, на персональные фобии, и даже право постфактум рационализировать их в теориях. Однако мы полагаем, что никому не должно быть позволено транслировать эти фобии другим, тем менее — подрастающему поколению.
   Компьютеры (и новая генерация «умных» приборов, машин и механизмов, включая промышленные, канцелярские и бытовые) отличаются от всего, созданного человеком ранее, способностью непосредственно манипулировать символами, воспринимать символы и сообщать символы человеку, т.е., в некотором роде вести с ним диалог.
   Стоит ли называть это свойство компьютеров и программ «искусственным интеллектом» — отдельный вопрос, но сам факт, по нашему мнению, должен занять одно из основных мест в содержании учебного предмета информатики. В этом смысле, наблюдаемая тенденция к вытеснению программного инструментария, являющего это свойство в самой методически и дидактически откровенной форме, из школьных курсов кажется нам крайне неприятной и нуждающейся в коррекции.
   Мы с энтузиазмом относимся к применению графических интерфейсов, как в традиционной сфере компьютерной графики, так и в новых, перспективных приложениях. Картинка часто стоит сотни слов, а энергичный жест способен выразить простую мысль быстро и однозначно.
   Однако мысль о том, что пиктограммами и жестами можно заменить полноценный язык, напоминает нам лишь одну из гениальных идей академии наук в Лагадо, описанной Джонатаном Свифтом в «Третьем путешествии Гулливера»:
   «А так как слова суть только названия вещей, то автор проекта высказывает предложение, что для нас будет гораздо удобнее носить при себе вещи, необходимые для выражения наших мыслей и желаний».
   Глядя на визуально-дизайнерское произведение очередного их последователя, лишь удивляешься: из какого мешка он достал значок, выражающий идею: «Вход с жующими мороженое несовершеннолетними леопардами в темное время суток запрещен»? И почему он думает, что этот значок интуитивно понятен?
   «Мне часто случалось видеть двух таких мудрецов, изнемогавших под тяжестью ноши ... При встрече на улице они снимали с плеч мешки, открывали их и, достав оттуда необходимые вещи, беседовали в течение часа».
   В Лагадо попытка мудрецов осуществить масштабное внедрение своего изобретения закончилась тем, что:
   «Женщины, войдя в стачку с невежественной чернью ... пригрозили поднять восстание, требуя, чтобы языку их была предоставлена полная воля ... так простой народ постоянно оказывается непримиримым врагом науки!»
   График нагляден, лишь пока цифры на нем можно разглядеть, а пиктограммы осмысленны только при выборе из немногих вариантов (даже сотню дорожных знаков выучить уже непросто). Для артикулированного и гибкого выражения идей (далеко не все из которых можно нарисовать) и их связи человечество выработало такой инструмент, как языки (естественные и формальные), и замены им пока не предвидится.

1.4 Сеанс работы и команды

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