IZONE - http://www.izcity.com/ - бесплатный софт, вэб-сервисы, ресурсы для раскрутки, свежие номера журнала "Internet Zone".

Демоны, пингвины и пользователи. Вызываем демонов.

Продолжается цикл заметок рассказом о BSD-системах: OpenBSD и FreeBSD. Об установке, локализации и составе этих операционных систем.

Алексей Федорчук

Разобравшись в первом приближение с пингвинами, вызываем демонов. Поскольку они, согласно замечанию на одном из сайтов, "круче".

В этой заметке речь пойдет об обоих известных мне представителях линии *BSD - FreeBSD и OpenBSD (с NetBSD мне ознакомиться так и не удалось и, видимо, уже не удастся, ввиду неактуальности). Хотя собственно демон - это эмблема FreeBSD. Я, честно говоря, затрудняюсь классифицировать "существо (возможно, вещество)", избранное эмблемой OpenBSD: то ли это рыба, прикинувшаяся батискафом, то ли батискаф, замаскировавшийся под рыбу. Так что, да простят меня изобретатели эмблем, пусть уж демон с вилами будет собирательным символом всей этой линии...

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

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

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

Следующее отличие, бросающееся в глаза, - в файловых системах. Хотя, если вдуматься, физически файловая система у них едина (ffs, Fast File System, именуемая также UFS), Однако родство это старательно замаскировано соврешенно различной терминологией (сравните, пожалуйста, slices во FreBSD и partitions - в OpenBSD, и то, и другое примерно соответствует primary partition в DOS и Linux). Не говоря уже о совершенно различной системе номенклатуры логических разделов. Да и структура каталогов различается, хотя и не столь сильно, как в семействе Linux.

Двигаемся дальше. Следующее различие - в формате пакетов. Хотя и в той, и в другой ОС они именуются packages и представляют собой простые компрессированные tar-архивы, напрямую бинарный пакет для FreeBSD в OpenBSD установить не удастся (как и наоборот). Поскольку конфигурационные и инсталляционные скрипты в них различны, что естественным образом вытекает из отличия файловых систем.

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

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

Несколько различен подход к интернационализации (по крайней мере, на примере ее частного случая - русификации). Обе системы не признают в качестве языка инсталляции никакого иного, нежели английский. Однако во FreeBSD на стадии установки (или позднее, при конфигурировании, но в той же среде sysinstall) можно не только установить русские шрифты для консоли и X Window, не только определить русские раскладки клавиатуры, но и предписать перекодирование экранных консольных шрифтов (из KOI8 в CP866). Правда, некие действия руками все же необходимы (изменение типа терминала в соответствующем файле конфигурации).

Локаль во FreeBSD - один из атрибутов пользователя, и устанавливается заданием для него соответствующего поля в учетной записи - Class (для русской локали значение его, соответственно, russian). Хотя не возбраняется и задание соответствующих переменных окружения в конфигурационных файлах используемой командной среды, но это, очевидно, менее удобно.

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

Следует также самому озаботиться установкой кириллических шрифтов для X Window и соответствующей раскладки клавиатуры (Xmodmap), которая, мало того, что не вполне стандартна, еще и отсутствует в штатном комплекте. Как ни странно, стандартные приемы русификации графического режима через настройку Xkb в OpenBSD не срабатывают.

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

Следующее бросающееся в глаза различие - в консольных драйверах, sysconsol во FreeBSD и pcvt - в OpenBSD. Что, помимо отмеченных различий в приемах русификации текстового режима, обуславливает также иные методы работы с виртуальными консолями, экранными буферами и т.д.

Таким образом, коренные различия Free- и OpenBSD можно свести к

  • файловой системе,

  • формату пакетов,

  • программам установки,

  • комплектации дистрибутивов и

  • консоли.

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

Близость Free- и OpenBSD (и их отличие от Linux) особенно подчеркивается т.н. системой портов. Если в Linux основной метод распространения программ - бинарные пакеты различных форматов (аналог packages из *BSD), то и во Free-, и в OpenBSD главным является сборка из исходников. Однако не простых, а специальным образом оформленных в виде коллекции портов, позволяющей производить как установку программ (в том числе и системных), так и их актуализацию в автоматическом режиме. Для чего, правда, очень желательно иметь постоянное подключение к Сети.

Как и в разговоре о дистрибутивах Linux, я не буду обсуждать здесь вопросы быстродействия, стабильности, защищенности и т.д. Хотя вкратце и затрону их - но уже в следующей заметке, где попробую сравнить семейства Linux и *BSD как системные целостности. Поскольку все сказанное выше свидетельствует, что, если отвлечься от деталей архитектуры, с точки зрения пользователя представители линии *BSD могут рассматриваться как некая системная целостность, равномасштабная Linux-семейству. Что и делает такое сравнение правомерным.

Источник - SoftТерра, http://www.softerra.ru

 


Copyright © "Internet Zone", http://www.izcity.com/, info@izcity.com