• BSD для нетерпеливых: LiveCD и десктопные варианты BSD-систем. Linux или FreeBSD? Без гнева и пристрастия Bsd системы

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

    В отличие от мира Linux, где ежедневное появление нового дистрибутива уже
    давно стало нормой, а общее число различных редакций операционной системы
    перевалило за десятки тысяч, количество BSD-систем можно пересчитать буквально
    по пальцам. Существует несколько форков когда-то вышедшей из стен Беркли
    оригинальной BSD, которые по праву считаются совершенно разными и в большинстве
    случаев несовместимыми между собой операционными системами. Имя им – FreeBSD,
    NetBSD, OpenBSD и, как бы странно это ни звучало, DragonFly BSD. Каждая из них
    представляет собой полноценную ОС, занимает определенную нишу и разрабатывается
    независимой командой энтузиастов. До недавнего времени на этом разнообразие
    вселенной BSD и заканчивалось, однако времена меняются, и BSD-системы все больше
    становятся похожи на операционки общего назначения, которые могут применять для
    повседневного использования и те, кто с ними совершенно незнаком. Время от
    времени на свет появляются различные редакции BSD, призванные упростить процесс
    вливания новых пользователей.

    Самый простой путь "показать народным массам BSD" заключается в
    распространении LiveCD. В свое время было разработано несколько редакций
    BSD-систем, выполненных в этом формате. Наиболее известным их представителем
    стал Frenzy, основанный на FreeBSD (хотя, как будет сказано ниже, цель его
    разработки была совсем иная). Вслед за ним были созданы Jibbed и BSDAnywhere,
    аналогичные системы на базе NetBSD и OpenBSD. Также почти в одно время (с
    разницей в три месяца) независимыми командами были созданы десктопные редакции
    FreeBSD под названием PC-BSD и DesktopBSD, которые, хоть и не позволяли
    загружать ОС прямо с диска, но были укомплектованы простыми в использовании
    графическими инсталляторами и утилитами для настройки и сопровождения системы.

    Инструмент сисадмина Frenzy

    Домашняя страница:
    frenzy.org.ua (frenzy.bspu.ru)
    Последний релиз: 1.3 (26 июля 2010)

    В отличие от всех остальных систем, описанных в данном обзоре, смысл
    разработки Frenzy состоял вовсе не в том, чтобы показать новичкам все чудеса
    мира BSD, Сергей Можайский (к слову, один из авторов ][) делал LiveCD для себя и
    всего лишь хотел иметь инструмент системного администратора всегда под рукой.
    Однако то, во что вырос этот инструмент спустя годы, вполне можно назвать
    системой для быстрого ознакомления с FreeBSD. Frenzy содержит не только все
    необходимые программы сисадмина, включая различные снифферы, порт-сканеры,
    утилиты мониторинга, но и стандартный набор программ повседневного
    использования, среди которых есть Firefox, Opera, Chrome, XMMS, MPlayer, Psi,
    Sylpheed.

    Загрузка Frenzy занимает совсем немного времени, но два раза на своем пути
    она будет прервана на 5 и 15 секунд. В первом случае это будет меню загрузчика
    FreeBSD, используя которое, можно отключить ACPI, загрузиться в
    однопользовательском режиме и произвести любые другие настройки ядра. Во втором
    на экран будет выведено уже собственное меню Frenzy, с помощью которого можно
    изменить некоторые параметры загрузки системы, включая возможность выбора языка
    интерфейса, загрузки всей ОС в память (что сделает ее гораздо более быстрой),
    отмены монтирования жесткого диска и т.д. Через несколько секунд после этого
    система будет полностью готова к работе, на экране появится стандартное
    приглашение командной строки.

    После ввода команды startx произойдет запуск X-сервера с оконным менеджером
    Fluxbox, монитором Conky внизу рабочего стола, программой для размещения иконок
    на рабочем столе idesk и переключателем раскладки клавиатуры xxkb (ее иконку
    можно увидеть в трее). Стоит сказать, что запускается и работает все это очень
    быстро, а выглядит стильно. Какого-либо конфигурирования иксов не требуется,
    разрешение экрана выбирается как раз под монитор. Звук работает из коробки, сеть
    придется настраивать руками, но эта операция не должна вызвать проблем, так как
    правильный драйвер уже активирован. Совместимость с каким-либо нестандартным
    оборудованием не предусмотрена, поэтому если обычная FreeBSD умеет его
    подхватывать, должна и Frenzy, иначе – возня с консолью и танцы с бубном.

    Как и в стандартном Fluxbox, правая кнопка мыши открывает меню, наполненное
    огромным количеством софта на все случаи жизни. Приведу лишь краткий список
    того, что есть на диске:

    • Шесть браузеров: Opera, Firefox, Chrome, Dillo, Elinks, Lynx.
    • Почтовые программы Sylpheed и Mutt.
    • Редакторы Leafpad и Vim.
    • Программы для общения Psi, Irssi, CenterIM.
    • Утилита для анализа и взлома беспроводных сетей aircrack-ng.
    • VPN-клиенты openvpn, pptp-client и vpnc.
    • Сетевые мониторы trafshow, bmon, darkstat, iftop.
    • Программы для туннелирования 3proxy, stunnel и другие.
    • Сетевой анонимайзер TOR.
    • Программы для удаленного управления telnet, rdesktop и vnc.
    • Сетевой сканер nmap.
    • Сканеры безопасности nessus и nikto.
    • Сниферы wireshark и ettercap.
    • IDS Snort.
    • Антивирус ClamAV с графическим интерфейсом ClamTK.
    • Виртуальная машина VirtualBox.
    • Архиваторы для всех типов архивов.
    • Множество утилит для работы с жестким диском и
      восстановления/уничтожения данных.
    • Множество утилит для отладки и работы с различными протоколами.

    Кроме такого разнообразного набора программ, Frenzy включает в себя программу
    настройки системы FrenzyConf (команда frconf, также доступна из меню), которая
    позволяет настроить консоль (выбрать шрифты, настроить мышь и т.д.), выбрать
    метод подключения к сети (ADSL, LAN, VPN) и настроить его, активировать
    различные сетевые сервисы. Также в пункте меню "Настройка" есть две программы,
    которые устанавливают Frenzy на жесткий диск или USB-Flash. Во всем остальном
    это стандартная FreeBSD, которая умеет сама подстраиваться под оборудование,
    наполнена первоклассным софтом и обладает отличным графическим интерфейсом. Если
    ты хочешь опробовать FreeBSD в качестве основной системы, я бы рекомендовал
    остановиться именно на Frenzy, которая, хоть и не имеет предустановленного KDE,
    работает из коробки и снабжена почти всем, что нужно гику.

    BSDAnywhere – безопасность превыше всего

    Домашняя страница:
    Последний релиз: 4.6 (5 ноября 2009)
    Операционная система: OpenBSD 4.6

    BSDAnywhere – это LiveCD на базе OpenBSD. Загрузка дистрибутива начинается с
    нажатия в ответ на приглашение загрузчика. В OpenBSD не предусмотрено
    какого-либо загрузочного меню, поэтому если появится необходимость в отключении,
    например, ACPI, это придется делать руками, с помощью ввода команд и изменения
    соответствующих переменных (boot -c; disable acpi; quit). После загрузки ядра и
    начальной инициализации системы на экран будет выведено несколько вопросов, на
    которые придется ответить, чтобы выполнить первоначальную настройку OpenBSD.
    Вопрос первый: выбор раскладки клавиатуры. Эта настройка касается только
    консоли, поэтому можно смело жать единицу, чтобы выбрать стандартную английскую
    клавиатуру. Вопрос второй: выбор временной зоны. Нет большого смысла в выборе
    временной зоны во время первой загрузки LiveCD, поэтому можно просто ввести GMT,
    что означает время по Гринвичу. Вопрос третий: автоконфигурирование сети. Если в
    сети есть DHCP-сервер, имеет смысл нажать , иначе – набираем "no" и
    вводим настройки вручную.

    После ответа на все вопросы на экран вывалится стандартный getty с
    приглашением к вводу логина. На LiveCD активно два аккаунта: live и root, о чем
    сказано в предупреждающем сообщении. При входе с именем live будет запущен
    X-сервер с любимым многими старожилами менеджером окон IceWM и весьма стильной
    обоиной с логотипом проекта в качестве фона. Набор доступных приложений невелик:
    терминал xterm, файловый менеджер xfe, просмотрщик изображений xfi, музыкальный
    плеер xmms, браузер Firefox, почтовики Thunderbird и Mutt, IRC-клиент irssi,
    программы удаленного доступа к рабочему столу OpenNX и VNC.

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

    Jibbed – NetBSD в кармане

    Домашняя страница:
    www.jibbed.org
    Последний релиз: 5.0.1
    Операционная система: NetBSD 5.0.1

    Уж не знаю, почему разработчики этого LiveCD назвали его именно Jibbed (что в
    переводе с английского означает "упрямились"), но нужно быть действительно
    упрямым человеком, чтобы заставить его работать. Дистрибутив наотрез отказался
    запускаться под VirtualBox и qemu, но это не сильно испортило впечатление,
    поскольку систему все равно пришлось бы испытывать в полевых условиях на
    настоящем железе. Но с наскоку загрузить ОС на ноутбуке также не удалось, потому
    как с включенной подсистемой ACPI ядро просто вываливалось в дебаггер. Во время
    повторной загрузки ACPI пришлось принудительно отключить, выбрав третий пункт
    меню. В такой конфигурации ядро благополучно прошло все этапы инициализации и
    передало эстафету стартовым скриптам, которые включили и настроили сеть,
    используя DHCP, а затем сгенерировали конфиг для X.org. После этого система
    передала управление командному интерпретатору ksh и начала приветливо мигать
    курсором.

    Попытка запустить иксы из консоли также не увенчалась успехом. Команда startx
    вежливо сообщила, что не может найти подходящую конфигурацию для нестандартного
    широкоформатного дисплея, и завершилась. Пришлось открывать вторую консоль
    (кстати, это делается с помощью комбинации , а вовсе не ,
    как в Linux и FreeBSD), чтобы зайти под именем root и добавить в /etc/X11/xorg.conf
    необходимые строки (благо, vim есть из коробки). Только после этого иксы
    запустились, и на экране появился стандартный рабочий стол Xfce.

    Каких бы то ни было, конфигураторов и LiveCD-утилит в дистрибутиве нет. По
    сути, это самая обычная NetBSD, на которую установлена графическая среда Xfce и
    небольшой набор дополнительного софта, такого как редактор AbiWord, шеллы bash и
    zsh, редактор emacs, просмотрщик pdf-документов epdfview, вьювер изображений feh,
    браузер Firefox3, IM-клиент pidgin, мультимедиа-проигрыватель xfmedia, а также
    rdesktop, squid, screen, joe, mc, mpg321 и wget. Для беглого ознакомления с
    NetBSD этого вполне достаточно, тем более, что все наиболее интересные
    особенности ОС находятся на уровне командной строки.

    PC-BSD – FreeBSD для домохозяек

    Домашняя страница:
    www.pcbsd.org
    Последний релиз: 8.1 (20 июля 2010)
    Операционная система: FreeBSD 8.1

    PC-BSD – это десктопный вариант FreeBSD, разработанный с целью сделать
    BSD-систему близкой обычным пользователям операционкой, которую просто
    установить и начать использовать. Дистрибутив включает в себя удобный
    графический инсталлятор, основанный на BSD Installer, оригинальную систему
    управления пакетами PBI, упрощающую процесс установки пакета в систему, а также
    несколько утилит для настройки установленной системы.

    Дистрибутив распространяется в виде ISO-образа размером 3,5 Гб, который
    включает в себя саму FreeBSD, KDE4 и языковые файлы для нескольких стран. При
    загрузке диска система проводит стандартную инициализацию, скрытую за стильным
    темным splash-скрином, запускает X-сервер с менеджером окон FluxBox и программой
    установки, выступающей в качестве графического фронт-энда к BSD Installer.

    В отличие от прародителя, установка PC-BSD действительно очень проста и
    состоит из нескольких шагов: выбор языка установщика и самой операционной
    системы (среди вариантов есть и русский), выбор раскладки клавиатуры (но его
    лучше пропустить из-за одного неприятного бага, о котором будет сказано ниже),
    выбора типа установки (новая или обновление), устанавливаемой системы (PC-BSD
    способна установить и FreeBSD в ее чистом виде) и источника установки (DVD или
    сеть). Далее следует выбрать раздел жесткого диска или создать его (PC-BSD сама
    разделит раздел на слайсы, поэтому неподготовленный пользователь легко пройдет
    этот шаг), добавить пользователей, выбрать временную зону и опциональные
    компоненты (среди которых есть удобная графическая утилита для управления Jail),
    после чего начнется копирование файлов на диск.

    Загрузка установленной ОС происходит быстро, а по ее окончании запускается
    KDE4 с модифицированным окном загрузки. Никаких дополнительных настроек, кроме
    предварительного подтверждения конфигурации монитора, делать не требуется, все
    работает, как часы, включая звук и сеть (если, конечно, в локалке есть
    DHCP-сервер). Единственная проблема заключается в том, что при выборе
    альтернативной раскладки во время установки инсталлятор оставляет ее единственно
    доступной, так что придется самому настраивать переключение через "Параметры
    системы". Сам KDE выглядит привычно, разработчики PC-BSD ничего кардинально не
    меняли, а только исправили некоторые иконки (включая меню запуска приложений) и
    применили другой стиль графического оформления.

    Установка пакетов производится с помощью специальной программы Software
    Manager, иконка которой размещена прямо на рабочем столе. По принципу действия
    она очень похожа на менеджер deb-пакетов synaptic: ты выбираешь программу из
    соответствующего раздела, нажимаешь кнопку "Установить", и пакет скачивается и
    устанавливается в автоматическом режиме. Сами пакеты распространяются в виде
    специальных архивов с расширением pbi, которые включают в себя программу вместе
    со всеми зависимостями. Установка программы происходит не в каталоговую
    структуру /usr/local, как это принято во FreeBSD, а в обособленный подкаталог
    внутри каталога /Programs (вспоминаем Windows и Mac OS X). Это действительно
    удобно – используя PC-BSD, ты никогда не встретишься с проблемой
    неудовлетворенных зависимостей или их конфликтов, а для удаления пакета сможешь
    просто стереть каталог программы из /Programs. Обновление пакетов происходит в
    полуавтоматическом режиме, так же, как это сделано в большинстве дистрибутивов
    Linux (когда в репозитории появится обновление пакета, на экране будет
    отображено сообщение).

    В программе настройки KDE (пункт меню "Параметры системы") ты найдешь
    несколько элементов, свойственных только PC-BSD. Во-первых, это пункт "Настройка
    сети", через который можно выбрать используемый сетевой драйвер, назначить
    машине IP-адрес и настроить другие параметры. Во-вторых, пункт "System Manager",
    отображающий конфигурацию машины и позволяющий произвести такие действия, как
    загрузка дерева портов и исходных текстов FreeBSD. В-третьих, пункт "Services
    Manager", предназначенный для управления фоновыми сервисами. ОС включает в себя
    множество скриптов и доработок системы инициализации FreeBSD, так что с
    нестандартным оборудованием система работает гораздо лучше.

    DesktopBSD – и вновь FreeBSD для домохозяек

    Домашняя страница:
    www.desktopbsd.net
    Последний релиз: 1.7 (7 сентября 2009)
    Операционная система: FreeBSD 7.2

    У проектов PC-BSD и DesktopBSD много общего. Обе операционные системы
    рассчитаны на применение рядовыми пользователями, обе оснащены графическим
    инсталлятором, основанным на BSD Installer, в обеих ОС применяется графическое
    окружение на базе KDE. Отличие заключается в том, что разработчики DesktopBSD не
    стали заново переизобретать систему управления пакетами, а просто включили в
    дистрибутив графические инструменты управления системой портов.

    DesktopBSD распространяется в виде загрузочных ISO-образов, размером чуть
    меньше двух гигабайт. После запуска диска на экране появляется уже знакомое меню
    загрузчика FreeBSD, которое лучше не трогать и нажать . После завершения
    загрузки появится текстовое сообщение, предупреждающее, что выбранная
    конфигурация может не подойти для имеющегося монитора, и в этом случае следует
    нажать комбинацию для перехода к следующему разрешению.
    Сразу за ним возникает окно с выбором типа загрузки (live или install), что
    весьма радует, так как в PC-BSD такого варианта не было.

    После выбора пункта Install появляется главное окно инсталлятора, с одной
    стороны очень похожее на аналогичное окно PC-BSD, но с другой – более приятное
    глазу. Шаги установки все те же: выбор языка, напутственное сообщение,
    информация об оборудовании, выбор типа установки (апдейт или обычная), вариант
    установки (с диска или сетевой), установка загрузчика, разметка диска (в том
    числе в автоматическом режиме). Далее начинается процедура копирования файлов,
    по окончании которой происходит перезагрузка.

    После ребута DesktopBSD встречает пользователя бодрым "Добро пожаловать!" и
    предлагает провести начальную конфигурацию, которую нельзя отменить. Первый шаг
    конфигурации: установка дополнительных языковых пакетов. Их нужно выбрать из
    предлагаемого списка, при этом конфигуратор оказался достаточно умен, чтобы
    запомнить выбор, сделанный во время установки системы, и самостоятельно отметить
    русский язык в списке. Второй шаг: добавление новых пользователей и установка
    пароля администратора. Третий шаг: включение BSDStats, что приведет к отправке
    данных об установленной ОС и аппаратной конфигурации на сервера одноименного
    проекта. BSDStats – безобидный проект, который занимается сбором статистики
    установок BSD-систем, поэтому о конфиденциальности можно не беспокоиться, тем
    более, что все данные отправляются анонимно.

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

    Из ПО, установленного по умолчанию, можно отметить офисный пакет OpenOffice
    3.1.1, окружение Java SE 6, проигрыватель Amarok, браузер Firefox и графический
    редактор Gimp. Также есть поддержка GRUB в качестве основного загрузчика и
    графическая программа для его конфигурирования.

    Выводы

    Несмотря на славу операционок "для своих", BSD могут быть и хорошими
    десктопными системами, для установки которых необязательно читать документацию и
    иметь постоянный доступ в интернет. Даже если брать в расчет очевидное
    отставание LiveCD-вариантов NetBSD и OpenBSD в плане интуитивного использования,
    Frenzy, PC-BSD и DesktopBSD красноречиво доказывают, что BSD – это не только
    хорошая серверная ОС, но и прекрасный десктоп, который может быть даже проще и
    понятней многих дистрибутивов Linux.

    INFO

    В октябре 2006 года разработка PC-BSD перешла под крыло компании
    iXsystems, которая полностью оплачивает работу лидера и основателя проекта
    Криса Мура, а также занимается коммерческой поддержкой дистрибутива.

    PBI-пакеты PC-BSD создаются на основе дерева портов FreeBSD с помощью
    автоматизированной системы, поэтому в качестве и актуальности ПО можно не
    сомневаться.

    После выпуска версии 1.7 Питер Гофер, единственный активный разработчик
    дистрибутива DesktopBSD, заявил о своем уходе из проекта. Однако 20 мая 2010
    года к проекту подключилась команда из четырех немецких разработчиков,
    которая намерена заниматься дальнейшей разработкой и усовершенствованием
    дистрибутива.

    В декабре 2009 года Сергей Можайский выпустил свой последний релиз Frenzy
    – 1.2-Lite. Еще ранее он заявлял, что не собирается продолжать развитие
    FreeBSD. Версии 1.2 и 1.3 были выпущены Егором Вершининым.

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

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

    И еще: далее ни слова не будет говориться о применении Linux или FreeBSD в качестве серверов, узлов локальной сети и тому подобных сисадминских материях. А исключительно – о пользовательских, сиречь десктопных, их качествах. Предвидя реакцию некоторой категории читателей, последнюю фразу готов выделить тэгом и повторить дважды и трижды:–) Субъективное вступление

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

    В периоды, когда на моей машине одна FreeBSD, рабочее время мое распределяется примерно так: 90% – практическая работа (абсолютно не важно, какой характер она носит в данный момент), и 10% – более или менее нездоровые эксперименты над системой. Стоит же угнездиться в уголке винчестера какому–никакому Linux–у – и временная доля экспериментов сразу подскакивает до 50%. А в периоды, когда я занимался сборкой Linux–а с нуля, экспериментальный режим фактически становился перманентным.

    И я задал себе вопрос – почему? И – для себя же – ответил: FreeBSD – цельная и стройная система, в которой после комплекса начальных настроек не возникает желания ни прибавить чего, ни убавить. Не случайно движение , время от времени охватывающее широкие слои Linux–пользователей, в мире FreeBSD фактически не получило развития: известное сочинение Йенса Швайкхардта (существующее и в ) – это скорее описание автоматизированной альтернативы sysinstall, нежели ручного построения собственной системы с нуля.

    Linux такую внутреннюю стройность продемонстрировать не может. И потому желание что–то изменить в уже установленной системе, усовершенствовать, добавить, почистить, а то и просто пересобрать все заново, возникает постоянно, и преодолевается только дефицитом времени.

    Однако это не значит, что я однозначно считаю FreeBSD лучшей системой для работы. Потому что работа моя, в том числе, состоит и из создания различных околокомпьютерных заметок. Сюжеты, которым поставляют те самые нездоровые эксперименты над системой, проведению которых столь благоприятствует Linux – и к которым так не располагает FreeBSD.

    Однако повторяю, все это – сугубо субъективно, ведь далеко не все занимаются сочинением околокомпьютерных заметок. И потому попробую провести более объективное сравнение.Первая попытка объективизма: «железо»

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

    Бытует мнение, что Linux поддерживает более широкий спектр оборудования, нежели FreeBSD. Действительно, для последней мы не найдем, скажем, принтерных драйверов от производителя. Полноценная поддержка современных видеокарт реализована только в том случае, если они от NVIDIA (да и то, по отзывам, существенно худшая, нежели для Linux–а). Вероятно, возникнет в этой ОС напряженка и с т.н. win–модемами. Это с одной стороны.

    А с другой: всем счастливым обладателям контроллеров ATA RAID и Serial ATA в Linux до недавнего времени приходилось прибегать ко всякого рода ухищрениям. К тому же не всегда удачным, особенно если присоединенные к таким контроллерам диски предполагалось использовать в качестве загрузочных устройств. Собственно, ситуацию можно считать нормализовавшейся только в последних ядрах ветки 2.6.X...

    Во FreeBSD же 5–й ветки более или менее параллельно, на каком контроллере IDE–семейства сидит жесткий диск: благодаря CAM (Common Access Method) как–то работать с ним можно будет в любом случае, а если он еще и корректно опознан, то не будет препятствий и для загрузки с него. Да и в 4–й ветке – я ни разу не сталкивался с проблемами для «одновозрастных» контроллеров ATA RAID.

    Другой пример – звуковые карты. Все те из них, что основаны на более–менее распространенных чипах, работали во FreeBSD без малейшего напряжения (рук или мысли). То же можно сказать и о «чипсетном» звуке. В Linux–е же аналогичные устройства часто требовали не вполне тривиальных манипуляций с ALSA–драйверами, благо ныне они встроены в ядро. Однако даже и в последнем случае без кое–каких настроечных действий не обойтись. Но это уже предмет второй попытки объективизма.

    А итог «железного» объективизма я сформулировал бы так: может быть, Linux поддерживает более широкий круг всяческого оборудования (в том числе, и кое–какой экзотики), но все «железо», что поддерживается FreeBSD (а это практически все стандартное и распространенное «железо»), использовать, в большинстве случаев, проще. И тут мы плавно переходим ко второму волнительному для юзера, особенно начинающего (а не начинающие давно сделали свой выбор) моменту, имя которому –Настройка

    Устоявшее (и тщательно культивируемое) мнение, будто бы FreeBSD сложнее в установке и настройке, нежели Linux, я не могу объяснить ничем иным, как недоразумением. Потому что ничего общего с действительностью оно не имеет.

    Начнем с установки. Инсталляция FreeBSD штатными средствами (с помощью утилиты sysinstall) выполняется за полчаса, не требует непременного доступа к Сети (хотя таковой лишним не будет) и дает в итоге полностью работоспособную систему с кириллической консолью, функционирующим dial–up (или, по ситуации, включением в локалку), запускаемыми Иксами и необходимым для начала практической деятельности минимумом пакетов (из прекомпилированных бинарников). Все настройки, и общесистемные, и для прикладных пакетов, разумны (пусть и не идеальны с точки зрения конкретного юзера).

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

    Большинство известных мне инсталляторов из разных дистрибутивов Linux отличаются от Free"шного sysinstall в две противоположные стороны:

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

    Наравне с Free–шным sysinstall я поставил бы (из всех мне известных) только установщик из Archlinux. Написанный, как свидетельствует его разработчик, под влиянием первого, он обеспечивает почти такое же сочетание простоты и гибкости.

    Однако (и это уже специфика Linux как системной целостности) даже в этом случае законченной работоспособной системы на выходе не получается. Без ручной доводки обойтись не удастся.

    Конечно, постинсталляционная доводка не возбраняется и во FreeBSD. Однако здесь она направлена на достижение идеала, а не обеспечение базовой функциональности. Что я проиллюстрировал бы серией примеров.

    Начнем с той же русификации. Сразу после установки FreeBSD пользователь, при желании, получает полностью кириллизованную консоль. Правда, в одном–единственном варианте, с внутренней кодировкой kOI8–R, вводом в ней же и экранным выводом в кодировке DOS, да еще и с не вполне идеальными шрифтами. Но никаких дальнейших действий по базовой русификации от него в обязательном порядке не требуется. А привести раскладки и шрифты в соответствие со своим идеалом он может и позднее. В дистрибутивах же Linux, не очень напирающих на дружественность пользователю ручной правки пары конфигов, пожалуй, не избежать. На причинах этого останавливаться не буду (для тех, кто представляет разницу между консолью в Linux и FreeBSD, они очевидны).

    Конечно, в user–ориентированных дистрибутивах Linux отечественного происхождения пользователь получает стопроцентно русифицированную консоль «из коробки». Однако выполненную в соответствии с представлениями разработчиков. Каковые отнюдь не обязаны совпадать с представлениями (и, главное, потребностями) данного конкретного пользователя. И в этом случае на коррекцию ему придется затратить существенно больше сил, нежели при русификации с нуля какого–либо дистрибутива из числа Source Based. В подтверждение чему – вспомним многочисленные статьи, посвященные откату в Red Hat (и Fedore"ном Core) с «прогрессивной» кодировки UTF на KOI8, пусть «бомжовскую», но вполне устраивающую многих и многих...

    Русификация консоли тесно связана со стилем инициационных файлов, принятых в данной системе. И тут линейный BSD–стиль с позиций пользователя выглядит более простым, нежели принятая в Linux инициация в стиле System V, основанная на понятии runlevels , перевод которого как «уровни выполнения» способен окончательно запутать начинающего пользователя.

    Господа админы промышленных серверов возразят мне, что стиль System V позволяет гибко подключать и отключать различные стартовые сервисы. Не буду спорить. Однако часто ли такая задача встает перед настольным пользователем? Гораздо чаще его целью является убиение раз и навсегда многочисленных служб, которые майнтайнеры дистрибутива посчитали жизненно необходимыми для его счастья...

    Не случайна тенденция многих современных дистрибутивов Linux к использованию BSD–стиля загрузки, примерами чему, кроме классической Slackware, и CRUX, и Gentoo. А в Archlinux понятие runlevels вообще утрачивает значение, хотя соответствующие слова в файле /etc/inittab найти можно, на практике уровни выполнения при старте системы никак не играют. А вот попыток внедрить в BSD–системы «прогрессивный» стиль System V что–то не наблюдается. Не считать же таковым группировку скриптов различных служб в едином подкаталоге в /etc во FreeBSD 5–й ветки.

    Что до русификации Иксов – X, как известно, он и в Африке X. И действия по вписыванию путей к файлам с кириллическими шрифтами, коррекция клавиатурной раскладки и установка переключателя с латиницы на кириллицу окажутся неизбежными, поверх какой операционки Иксы бы ни стояли.

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

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

    В Linux: начинаем с того, что то же самое чипсетное аудио (а с постепенным вымиранием карт типа SB AWE128 оно становится предпочтительным для всех пользователей без претензий на меломанию или композиторство) непременно требует драйверов ALSA. Благо, что ныне они встроены в ядро и в большинстве дистрибутивов включены в умолчальные ядра в качестве модулей. Если нет, то перекомпиляция ядра большого труда не составит.

    Однако перекомпиляцией ядра дело не ограничивается. Нужно еще поставить соответствующий ALSA–инструментарий (да еще, как правило, средства совместимости ее со старой звуковой системой OSS), активизировать соответствующего демона и с помощью не вполне очевидных средств обеспечить его «самовосстановление». И после всего этого опять столкнуться с неожиданностями. Например, с нежеланием мирного сосуществования ALSA и arts (звуковой системы KDE). Конечно, мне могут возразить, что это проблемы KDE, однако во FreeBSD их не возникает вовсе.

    Кстати, о доустановке инструментария (и прочих программ)... Для этого ведь необходимаСистема управления пакетами

    Здесь до недавнего времени первенство, безусловно, принадлежало FreeBSD. Система портов ее обеспечивала несравненное сочетание простоты и гибкости, всегда оставляя возможность выбора – собирать ли пакеты из исходников, или устанавливать их из бинарников. Не возбраняя и комбинацию этих методов. Из всего Linux–ового богачества по этой части с портами мог сравниться только Debian–овский apt, ассимилированный в недрах многих rpm–based дистрибутивов. Однако, хотя apt и предполагает возможность сборки собственных пакетов, основным методом при нем является использование прекомпилированных бинарников, собранных в соответствие с представлениями майнтайнера о зависимостях оных.

    Ныне положение изменилось и в Source Based дистрибутивах Linux широко используются портообразные системы, развившиеся под сильным влиянием своего FreeBSD–прототипа: портежи Gentoo, Sorcery из Sorcerer"а, порты CRUX, Archlinux Building System из одноименного дистрибутива. Они подчас превосходят своего прародителя по универсальности, гибкости, глобализации настройки или прозрачности устройства, использования и модернизации. К тому же, за десятилетие своего развития порты FreeBSD стали весьма громоздким и труднообозримым сооружением, поддержание которого в актуальном состоянии представляет собой отдельную задачу. Далеко не всегда решаемую с помощью дополнительных средств типа portupgrade (которая сама по себе является уже частью не базовой системы, но системы портов).

    И тут уместно сказать пару слов еще об одной широко распространенной легенде – будто бы сборка из исходников посредством портообразных управляющих комплексов всегда приводит к более «чистой» (то есть свободной от лишних компонентов) системе. Это далеко не всегда так.

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

    Что меня всегда удивляло в портах FreeBSD, так это ситуация со сборкой моего любимого редактора joe. Каковой в качестве зависимости непременно требовал GNU make версии 3.80, хотя собственный make входит в состав FreeBSD Distributions и собрать с его посредством joe руками не составляет никаких проблем.

    А вообще «чистота» установки пакета очень зависит от конкретной реализации порта. Недавно обнаружил я в новостях сообщение о новом оконном менеджере под названием edo – небольшом, как говорилось, компактном и быстром. Обнаружился он и в портах FreeBSD, откуда я решил его собрать. В итоге этот маленький:–) WM потянул за собой (как зависимость зависимости) не что иное, как MySQL...

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

    Каждый, кому доводилось собирать Linux from Scratch, знает, что некоторые версии пакетов Base Linux имеют обыкновение собираться только с определенными (отнюдь не обязательно самыми свежими) версиями таких утилит, как autoconf и automake, категорически отказываясь делать это с другими их версиями (пусть даже более свежими и прогрессивными).

    Разработчики Source Based дистрибутивов Linux подчас обходят эту сложность тем, что принудительно вносят в список зависимостей таких «склизких» пакетов autoconf и automake «прошлогоднего» розлива, притом, что сам по себе базовый комплект включает уже текущие на данный момент их версии. В результате чего, например, в Gentoo при выполнении бутстраппинга или emerge system можно с удивлением наблюдать, как система лезет в Интернет за бородатым, как Карл Маркс, autoconf хотя свежая его версия только что была развернута из тарбалла stage1. А если вспомнить, что многие полагают, будто по настоящему стабильное ядро Linux может быть собрано только с gcc версии 2.9.X, результатом чего оказывается присутствие в системе двух компиляторов, то о какой «чистоте» сборки можно еще говорить?

    Впрочем, достижение разумного баланса между развертыванием прекомпилированных пакетов, установкой их из портообразной системы и самостоятельной «штучной» сборкой – тема совершенно отдельного разговора. А пока рискну сформулировать еще пару «объективок»:

    • FreeBSD, вопреки устоявшемуся мнению, существенно проще в настройке и локальном администрировании. Даже без учета того факта, что она одна, а Linux–ов – много;
    • напротив, система портов FreeBSD в настоящее время (в отличие от недавнего прошлого), не имеет значимых преимуществ перед аналогичными инструментами из Source Based дистрибутивов Linux.

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

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

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

    Ибо такой пользователь большую часть времени проводит в Иксах, и ему абсолютно без разницы, поверх какой операционки эти самые Иксы крутятся. Ему только кажется, что он работает в Linux или FreeBSD (NetBSD, OpenBSD – рискну расширить я этот список). На самом деле работает он в KDE (Gnome, XFce, WindowMaker – нужное дописать). И если бы ему не пришлось предварительно устанавливать и настраивать свою операционку, он имел бы шанс никогда не узнать, в какой именно из POSIX–совместимых систем он работает: перед ним будут одни и те же интерфейсные элементы, одни и те же средства настройки и приложения.

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

    И тут я не могу не произнести оду текстовой консоли FreeBSD и средствам управления ею. Каковые включают в себя всего две команды: vidcontrol и kbdcontrol, назначение которых однозначно вытекает из названий. И которые позволяют настроить в консоли абсолютно все – от плотности символов на экране (т.н. разрешения) до цвета бордюров, своих для каждого виртуального терминала.

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

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

    Конечно, и Linux располагает тем же самым набором классических Unix–утилит (точнее, как и FreeBSD, их аналогами). Однако это именно разобщенные пакеты, разрабатывавшиеся в рамках проекта GNU, в сущности, независимо от операционной системы. И уже в силу этого не столь тесно интегрированные с ней и между собой.

    Так что же, в консольном режиме первенство остается за FreeBSD? По моему мнению – безусловно. Но только если речь идет именно о чисто текстовой консоли. Если же обратить свой взгляд на т.н. графическую консоль (реализуемую посредством Frame Buffer), то все видится несколько иначе.

    Начать с того, что графическая консоль FreeBSD (т.н. Raster Mode) ограничена одним–единственным разрешением 800x600 (тут речь идет именно о настоящем пиксельном разрешении, а не плотности символов). Да и то на некоторых чипах этот режим не работает вообще, на других имеет вполне скверный вид. Собственно, нормального результата в Raster Mode мне не удавалось добиться ни на одной из имевшихся в моем распоряжении видеокарт.

    В Linux же графическая консоль просто радует глаз. Даже при поддержке Frame Buffer для абстрактных VESA–совместимых карт, можно варьировать разрешения от 640x480 до 1280x1024, с изменением глубины цвета в стандартном диапазоне. Что обеспечивает не только комфортный просмотр изображений, но и весьма приличное (на мой взгляд – более чем приличное) воспроизведение видео. Для карт, имеющих хорошо реализованные собственные драйвера в ядре Linux (Matrox, ATI, чипсетное видео от Intel) к этому добавляется возможность установки нестандартных разрешений экрана.

    Естественно, никто не использует консоль для работы с изображениями, и очень немногие для просмотра видео. Почему же я придаю графической консоли такое значение? Да потому, что незаметно, но наступает эра жидкокристаллических дисплеев, знаменующая собой смерть чисто текстового режима (но не консольного режима как такового). Почему – легко поймут те, кто видел стандартный текстовый режим 80x25 символов на 18–дюймовом LCD–мониторе с физическим разрешением матрицы 1280x1024. А как это смотрелось бы на экране с соотношением сторон 16:9 я боюсь себе даже представить...

    Наконец, остается еще один вопрос, важный для пользователя –О производительности

    Представление о большем быстродействии FreeBSD по сравнению с Linux–ом столь же традиционно, как и мнение о большей сложности ее настройки. Однако так ли все однозначно?

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

    Во–вторых, даже если считать скорость загрузки одним из критериев быстродействия, то превосходство перед Linux–ом обнаруживает только FreeBSD 4–й ветки. Пятая ветка грузится ровно столько же, сколько и любой дистрибутив Linux, задействующий файловую систему устройств devfs. Конечно, в благородном Linux–семействе можно подобрать таких представителей, которые грузятся еще дольше, но это очень дружественные к юзеру системы, отягощенные... изобилием стартовых сервисов (в частности, автоопределителем оборудования kudzu).

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

    Очевидно, что на производительность файловых операций каждой ОС влияют два фактора – реализация взаимодействия с дисковой подсистемой (для десктопа – конкретно с интерфейсом ATA) и организация поддерживаемой файловой системы (систем). И вот тут–то FreeBSD оказывается в невыгодном по сравнению с Linux положении.

    Выше упоминалось, что за счет CAM во FreeBSD (речь идет о 5–й ветке) достигается универсализм в работе с дисковыми контроллерами – у меня сложилось впечатление, что ей вообще безразлично, на каком конкретно контроллере сидит диск (лишь бы он опознавался BIOS"ом – но и это необходимо только для загрузки с него ядра). Однако за универсализм приходится платить. И, похоже, что в данном случае расплата наступает в виде снижения быстродействия дисковых операций – хотя достоверной информации по данному вопросу я не нашел, исходя из общих соображений, это выглядит похожим на правду.

    Такова первая сторона вопроса. Вторая – файловая система FreeBSD, каковыми являются UFS и (по умолчанию в 5–й ветке) ее усовершенствованная модернизация UFS2. Традиционно в этой ОС обе используются в частично синхронном режиме (noasync mode), когда изменения метаданных файлов записываются на диск немедленно, а изменения блоков данных – кэшируются в оперативной памяти.

    В Linux принята другая модель работы с ATA–дисками: разные типы контроллеров имеют (или не имеют) собственную поддержку в ядре. Что исключает использование явно не поддерживаемых устройств, зато для поддерживаемых, судя по всему, обеспечивает большее быстродействие. Файловые системы (а Linux поддерживает в качестве нативных несколько их разновидностей) по умолчанию все (кроме, возможно, JFS) используются в полностью асинхронном режиме (async mode), когда и данные, и метаданные кэшируются в оперативной памяти.

    В результате сочетания указанных факторов файловые операции осуществляются в Linux существенно быстрее, нежели во FreeBSD. Собственно, я всегда это подозревал, но только показало, насколько отставание FreeBSD 5–й ветки в этом плане существенно – положение не спасает даже механизм SoftUpdates, призванный повысить и надежность, и производительность манипуляций над файлами. К слову сказать – во FreeBSD 4–й ветки такого отставания ранее не наблюдалось, что косвенно подтверждает негативное влияние работы с дисковой подсистемой (усугубляющее деградацию именно синхронных операций) – в ней модель CAM не используется (по крайней мере, не использовалась, когда я ею пользовался). А вот в Linux с его исключительно асинхронным использованием файловых систем, по моим наблюдениям, зависимости скорости работы с файлами от производительности дискового железа почти нет.

    Второе из обещанных исключений относится к операциям своппинга. Каковые в Linux и FreeBSD выполняются существенно по разному. Для установления чего достаточно посмотреть на вывод команды top в той и другой ОС при среднепользовательской нагрузке. В Linux можно видеть, что при достаточном количестве оперативной памяти процент использования swap–пространства стремится к нулю. Например, на моем ноутбуке с Linux (512 Мбайт памяти) в момент сочинения этих строк, при загруженном KDE, html–редакторе Quanta, konsole, двух экземплярах konqueror и работающем mplayer (воспроизводство mpeg и RealAudio), swap не задействован вообще. На десктопе с FreeBSD (1 Гбайт памяти) при той же нагрузке задействованная область подкачки меньше 10% почти не опускается.

    Это связано с тем, что Linux прибегает к своппингу только при переполнении оперативной памяти, во FreeBSD же на диск в любом случае (даже при избытке RAM) выгружаются страницы памяти, к которым не было обращений в течение некоего промежутка времени. В сущности, оперативная память в этой ОС выступает в качестве своего рода кэша для области подкачки (точнее, для виртуальной памяти вообще). Что эффективно при ограниченном ее объеме и было оправдано в стародавние времена, когда процессоры были медленными, а памяти – мало. Ныне такая модель использования своппинга в некоторых ситуациях приводит к замедлению работы. Пример – KDE с большим количеством рабочих столов и периодическим переключением между ними, где такое замедление видно невооруженным глазом.

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

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

    Чем подкупает FreeBSD – так это а) простотой установки, б) логичностью настройки и в) легкостью администрирования в локальном масштабе. Однако те же особенности (по крайней мере, большая их часть) характерны ныне и для лучших (по моему мнению) современных представителей Linux–семейства (CRUX и Archlinux, в какой–то степени – Gentoo). Хотя ожидать от них внутренней стройности и целостности FreeBSD, по понятным причинам, в ближайшее время не приходится.

    В то же время я отдаю себе отчет в архаичности файловой системы FreeBSD, особенно отчетливо проступающей в сравнении с современными реализациями ReiserFS и XFS для Linux. И почти месячная эксплуатация FreeBSD–десктопа и Linux–ноутбука – машин с практически равным номинальным быстродействием, – что называется, лицом к лицу, убеждает меня в большем быстродействии последней. А вот что имеет больший вес для пользователя – это каждый должен решать для себя. Хотя, как это ни прискорбно, Linux в настоящий момент кажется лучшим выбором для настольного применения.

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

    Демон с пингвином – братья навек!

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

    Когда вы решили выбраться из экосистемы Windows, вы сразу же обратите внимание на macOS. Вряд ли вы ее установите, так как придется купить компьютер Mac. Конечно, можно установить Hackintosh, но для раскрытия ее потенциала вам понадобится специфичное "железо". Многие сомневаются в GNU/Linux как в ОС, что было темой для споров на протяжении долгого времени.

    Таким образом, некоторые люди называют операционную систему Linux как GNU/Linux.
    Вскоре вы начинаете понимать, насколько разнообразна экосистема Linux с многочисленными дистрибутивами и их производными. Не думайте, что операционные системы на базе ядра Linux - единственные в своем роде ОС с исходным кодом. Есть и менее известное семейство операционных систем, известное как BSD (Berkeley Software Distribution), которое также считается одной из главных в сообществе открытого исходного кода.

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

    И Linux, и BSD семейства имеют своего маскота или талисмана. Как вы догадались, для Linux это Такс (пингвин), а для BSD-мультяшный демон.

    Выбор Linux и BSD

    Для пользователей Linux существует бесчисленное количество дистрибутивов. Все они являются производными некоторых популярных дистрибутивов Linux, включая Debian, Gentoo, Red Hat, Slackware и т.д. В дополнение к этому, существует множество отдельных дистрибутивов Linux как Solus, Puppy Linux и т.д.

    BSD как самостоятельная ОС больше не существует, но она используется для обозначения существующего семейства производных BSD. В настоящее время BSD представляют три основные ОС, а именно FreeBSD, OpenBSD, NetBSD, наряду с DragonFly BSD и другими дистрибутивами. FreeBSD нацелен на обычных пользователей, на долю которого приходится около 80%.

    Программы для Linux и BSD

    Пакеты для Linux систем поставляются в готовом (бинарном) виде. Существует два наиболее популярных формата: DEB и RPM, для установки которых требуется наличие APT/yum соответственно.

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

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

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

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

    Связь UNIX и BSD

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

    BSD (с закрытым исходным кодом) и ее производные являются прямыми потомками UNIX. В отличие от своих предков, FreeBSD, NetBSD и другие BSD - подобные являются системами с открытым исходным кодом.

    Ядро Linux было написано Линусом Торвальдсом, который до сих пор контролирует весь процесс разработки ядра.

    Linux vs BSD: поддержка "железа"

    Операционные системы с открытым исходным кодом лишены нормальный поддержки оборудования. В плане поддержки "железа" лидируют Windows и MacOS. Будь это новейший процессор или видеокарта, эти закрытые ОС предоставляют хорошую поддержку, оставляя GNU/Linux и BSD позади.

    Если речь идет о редких устройствах, то по сравнению с Windows, дистрибутивы Linux имеют преимущество, так как разработчики сотрудничали с производителями устройств. BSD в этом плане далеко позади, и далеко не факт, что ваш, к примеру, китайский Wi-Fi модуль тут же "заведется".

    GPL и BSD лицензии

    Еще одно большое отличие между Linux и BSD это вид лицензии, которыми они защищены. GNU/Linux поставляется c GNU GPL (General Public License)

    Операционные системы, что основаны на BSD, поставляются с BSD лицензией, так же известной как FreeBSD лицензией.

    GPL олицетворяет мировоззрение Ричарда Столлмана, что программное обеспечение должно быть свободным, доступным для всех. Именно поэтому при использовании GNU GPL разработчик обязан опубликовать исходный код в свободном доступе.

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

    Работает - не трогай

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

    Именно поэтому BSD системы считаются наиболее стабильными и надежными.

    Подведем итоги

    Что касается спора об целесообразности установки Linux или BSD, Linux наиболее распространен на ПК, нежели FreeBSD. Это обусловлено тем, что для использования BSD необходимо быть более "технически подкованным", а к тому же GNU/Linux имеет намного лучшую поддержку оборудования. Еще одним фактором в споре Linux vs BSD может являться поддержка сообщества Linux.

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

    На завершение видео с обзором NetBSD:

    Здесь я дам небольшой обзор систем, о которых пойдет речь. Заметьте, что представленные истории не претендуют на всестороннее и авторитетное мнение, и не было предпринято ни одной попытки сделать их таковыми.
    Прошу!

    Unix

    Unix - на самом деле, не операционная система.Ну, и да, и нет.В конкретном применении, Unix - это операционная система, разработанная в конце шестидесятых в Bell Labs Кеном Томпсоном (Ken Thompson) и Деннисом Ричи (Dennis Ritchie). Всё последующее время она разрабатывалась и распространялась как коммерческая ОС и исследовательская ОС такими компаниями, как Bell Labs, USG, USDL, ATTIS, USL, Novell, SCO и всеми, кто мог бы выступить с акронимом.Наверное, не будет большим преувеличением сказать, что Unix оказала наибольшее влияние на современную компьютерную индустрию. Любое устройство общего применения и многие специфические устройства использует идеи и концепции и зачастую код систем из родословной Unix.Когда мы произносим слово «Unix», мы чаще всего имеем в виду «общую форму», а не конкретную ОС под названием Unix. Общая форма означает «любую операционную систему, которая дизайном, исполнением и вкусом значительно похожа на систему Unix». То есть все BSD, Linux, SunOS, Tru64, SCO, Irix, AIX, HP/UX и еще сотни и тысячи других.Мне неинтересно вступать в философские дискуссии на тему «сколько ангелов могут танцевать на секущихся концах волос». Пусть этого будет достаточно для понимания того, что когда я говорю «Unix-системы», я имею в виду именно то, о чем вы думаете, когда я произношу эту фразу.
    Город Педантов → в той стороне.

    Linux

    Под словом Linux также кроется несколько вещей. Это ядро, изначально написанное Линусом Торвальдсом (Linus Torvalds) в студенческие годы в Финляндии. С тех пор его перетрясли, выбили, взломали, перекрутили, разогнали, разрубили, причесали, вытоптали и совершали другие манипуляции (порядок неважен, конечно) столько людей, сколько сложно себе представить.Linux - это также семейство операционных систем. В то время как в эту секунду по всему миру ведутся блестящие метафизические дискуссии (я гарантирую это) относительно того, что «Linux - это не операционная система, а просто ядро», или «Правильно говорить GNU/Linux» и так далее, я хочу отмежеваться от этой семантической помойки. Когда я говорю «Linux», я имею в виду Red Hat . Я имею в виду Slackware . Я имею в виду Mandrake . Я имею в виду Debian . Я имею в виду SuSe . Я имею в виду Gentoo . Я имею в виду каждый из 2 кадзиллионов дистрибутивов, в основе которых лежит ядро Linux c аналогичным пользовательским окружением, в большинстве своём построенном на инструментах GNU, мигрирующих по Сети.

    BSD

    BSD означает «Berkeley Software Distribution». Изначально, это был набор патчей и утилит для официальной Bell Unix, которые разрабатывались группой CSRG в Калифорнийском Университете в Беркли. С течением времени он развивался, заменяя и/или меняя всё больше и больше частей системы до тех пор, пока на каком-то неопределенном этапе не превратился в свою собственную ОС, просто поделившись кусками кода с Bell Unix.Конечно, это всё равно требовало наличие лицензии Bell на использование системы, хотя бы потому, что большая часть кода была написана в Bell. Весь код, написанный в Беркли, тем не менее, был выпущен под лицензией, которая впоследствии стала известна как BSD-лицензия, вольный перевод которой звучит так: «Делай с кодом всё, что тебе взбредёт в голову, просто дай нам об этом знать». Итак, путь почти всего кода BSD в конечном итоге вёл обратно в «официальные» системы Unix: в System III и System V. А обе эти ветви прокладывали свой путь к различным коммерческим форкам Unix.После того, как CSRG (в большинстве своём) распалась и разработка BSD прекратилась, несколько групп подхватили знамя. Одной из них был проект 386BSD, портировавший код BSD на платформу Intel i386. Когда проект 386BSD сошёл на нет, образовались две другие группы, которые поддержали и развили код 386BSD; одной из них был проект FreeBSD, другой - NetBSD. С течением времени некоторые внутренние разногласия внутри проекта NetBSD привели к образованию проекта OpenBSD.Когда я говорю «BSD», я имею в виду несколько вещей. Я имею в виду общий дух BSD и подход к системам. В общем смысле, под вышесказанным понимается 3 находящихся на сегодня в свободном доступе BSD системы (на 2005 год. - прим. перев. ):
    • FreeBSD изначально была нацелена на достижение наилучшей возможной производительности на 386-й платформе. Позже к i386 присоединился ряд других платформ, включая Alpha и SPARC, наряду с наследниками i386: Intel Itanium и AMD Opteron. Главная цель проекта - это максимальная надежность и эффективность работы на этих платформах, как в роли сервера, так и в роли десктопа.
    • NetBSD нацелена на работу на максимально возможном числе платформ. Её цель - стать самой портируемой ОС на планете, и кажется, для этого честно стараются.
    • OpenBSD направлена прежде всего (кто-то скажет «исключительно») на безопасность и тому подобное. Тесная интеграция безопасности, аудита, криптографии и связанные с этим вопросы являются первичными задачами.
    Все эти цели, конечно, взаимозаменяемы. Каждая BSD заботится о безопасности и работает над ней. Каждая BSD заботится о производительности и работает над ней. Каждая BSD заботится о портируемости и работает над ней. Внутри группы делятся большими кусками кода. Многие разработчики работают более чем над одной системой.Проницательный читатель заметит, что я не упомянул Mac OS X или лежащий в её основе . Хотя они и построены в большей степени на BSD, верхние слои OS X - это всё-таки чистый Apple. Работая в OS X, как пользователь, вы используете её как MacOS, а не как BSD. Поэтому, несмотря на то, что чисто академически некоторые вещи можно отнести к OS X, особой практической ценности в их понимании нет. Darwin ближе к стандартному понятию BSD, но так как большая часть его пользователей пришли из BSD, можно сказать, что это вне контекста моего эссе. Однако, большая часть общей информации, скорее всего, будет лёгкой для понимания.При обсуждении специфики в моём эссе, я, в основном, буду ссылаться на FreeBSD, потому как с ней я работаю и знаю её лучше всего. В некоторых специфичных аспектах будут существенные различия. Общие стороны, скорее всего, будут одинаковыми для всей группы. С философской точки зрения, все BSD очень похожи, в отличие от методологии Linux. Как бы то ни было, это эссе в первую очередь философское.

      Список файловых систем - Это список файловых систем (ФС) и сетевых протоколов, эмулирующих работу файловой системы, с небольшим описанием. Чтобы узнать более, вы можете пройти по соответствующей ссылке. Некоторые старые системы поддерживали только одну файловую систему,… … Википедия

      Список операционных систем - Это список известных операционных систем. Операционные системы могут быть классифицированы по базовой технологии (UNIX подобные, пост UNIX/потомки UΝΙΧ), типу лицензии (проприетарная или открытая), развивается ли в настоящее время (устаревшие или … Википедия

      BSD - У этого термина существуют и другие значения, см. BSD (значения). BSD (англ. Berkeley Software Distribution) система распространения программного обеспечения в исходных кодах, созданная для обмена опытом между учебными заведениями.… … Википедия

      Список LiveCD-дистрибутивов - Это служебный список статей, созданный дл … Википедия

      Список Live CD-дистрибутивов - Это служебный список статей, созданный для координации работ по развитию темы. Данное предупреждение не ус … Википедия

      BSD (значения) - BSD: BSD семейство операционных систем. Лицензия BSD BSD/OS коммерческая версия BSD. Демон BSD логотип операционных систем BSD. BSD Installer компьютерная программа установщик BSD … Википедия

      Список CMF - Это список CMF каркасных систем для управления содержимым (в основном, содержимым сайтов). Как правило, на основе CMF создаются CMS готовые системы управления содержимым, а те, в свою очередь, служат основой для создания полноценных… … Википедия

      Список ПО для резервного копирования - … Википедия