What Is GhostBSD, and Should You Use It on Your PC?

Сегодня я расскажу об одном из самых долгих «крестовых походов» в мире Unix — попытке сделать из FreeBSD полноценную настольную систему, способную потягаться с тройкой лидеров: Windows, Linux и macOS. Эта история началась еще с конца 90-х, когда KDE и GNOME стали делать Linux дружелюбным для обычных пользователей, а не исключительно для гиков.

Многие представители комьюнити FreeBSD тогда подумали: «А чем мы, собственно говоря, хуже? У нас есть всё то же самое, что и в Linux, только стабильнее и надежнее». А значит, превратить его в десктоп будет вполне разумным решением. Но суровая действительность быстро вернула энтузиастов с небес на землю. Об этом и поговорим.

Идея, прошедшая сквозь время

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

Такой подход очень ценился профессионалами, но ставил непреодолимый барьер перед обычными пользователями. Именно это обстоятельство сводило на нет усилия отдельных энтузиастов в последующие два десятка лет. Попытки начались еще с момента выхода первой версии KDE в 1998 году:

KDE 1.0 (источник изображения)

На тот момент KDE выглядел настоящим чудом. Рабочий стол, информативный трей, стартовое меню, единообразие элементов оформления, Drag & Drop — это было очень красиво, но не считалось стабильным в среде FreeBSD-разработчиков. Впрочем, это не мешало некоторым пытаться собирать KDE через родную систему портов /usr/ports/x11/kde.

Хотя слово «собирать» плохо описывает процесс. Порой это превращалось в полноценное переписывание больших кусков кода. Не стоит забывать, что QT еще был проприетарным для Unix, библиотеки собирались частями, а каждый make install превращался в шаманский танец с камланием на консоль. 

Сборка такого Франкенштейна занимала 8–12 часов. Порт тянул сотни зависимостей, и было очень больно, когда какая-нибудь из них падала, умножая все усилия на ноль. Кстати, именно в те годы появилось знаменитое «пропатчить KDE2 под FreeBSD».

Время перемен

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

Установщик DesktopBSD
Установщик DesktopBSD

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

Вид рабочего стола DesktopBSD 1.7
Вид рабочего стола DesktopBSD 1.7

Второй проект, PC-BSD, стал добиваться цели иначе. Вместо консервативного подхода его автор Kris Moore (Крис Мур) решил не просто создать десктопную версию FreeBSD, но и сделать ее максимально удобной для изучения начинающими пользователями. 

Установщик PC-BSD
Установщик PC-BSD

Майкл Лукас, автор книги «FreeBSD. Подробное руководство», отзывался о PC-BSD как о системе, «которой могут пользоваться даже бабушки», а портал OSWeekly.com в августе 2006 признал ее наиболее дружелюбной для начинающих.

Внешний вид рабочего стола PC-BSD 1.5.1
Внешний вид рабочего стола PC-BSD 1.5.1

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

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

Ложка дегтя

Общей проблемой обоих проектов стали драйверы. В отличие от Linux, который на тот момент вполне успешно распознавал звуковые карты и беспроводные Wi-Fi-адаптеры, FreeBSD исповедовал очень консервативный подход. Есть документация от производителя и более-менее разрешительная лицензия — драйверы включали в состав ОС. А вот если с чем-то из этого были проблемы, никто не пытался прикручивать всё подряд.

Даже если вам повезло и звук на ноутбуке с каким-нибудь Intel HDA определился, в процессе работы могло всплыть множество неприятных сюрпризов. Например, звук воспроизводился только через динамики, а на подключение наушников система никак не реагировала. В некоторых случаях полностью отсутствовала регулировка громкости. Отдельное удовольствие в том, что звуковая подсистема PCM FreeBSD никак не связана с привычным в Linux ALSA/PulseAudio.

Правда, со временем ситуация со звуком стала улучшаться. FreeBSD 8 уже включал в себя универсальные драйверы для HDA, а с 12-й версии даже стал поддерживать HDMI-аудио через GPU. В более же старых релизах настройка была и остается испытанием на терпение.

Поддержка Wi-Fi — еще одна ахиллесова пята мира BSD. Проблема в том, что наиболее популярные чипы от Intel, Realtek и Broadcom не публиковали спецификации, вынуждая прибегать к весьма странным и порой плохо работающим костылям. Например, была такая забавная прослойка ndisulator. Она представляла собой эмулятор Windows NDIS и позволяла загружать виндовые драйверы, созданные, к примеру, для Windows 2000/2003/XP.

Установщик TrueOS
Установщик TrueOS

PC-BSD прекратил свое существование в 2016 году, переродившись, как птица Феникс, в TrueOS. Развиваться новая ОС стала под крылом американской iXsystems, подарившей миру TrueNAS (бывш. FreeNAS). Первые пару лет разработка велась в том же ключе, что и раньше, — удобный графический интерфейс для установки, множество сред рабочего стола (KDE / Lumina / LXDE / Xfce / MATE), официальные бинарные драйверы для трехмерных ускорителей Nvidia и Intel.

Но с 2018 года концепция поменялась, и теперь ОС не была направлена на конечных пользователей. Ей отводилась роль платформы, на базе которой в iXsystems планировали создавать другие продукты. Увы, но бизнес есть бизнес, и в 2020 году дальнейшее развитие TrueOS признали нерентабельным. Настольная же версия была выделена в отдельный проект Trident, который прожил немногим дольше, до осени 2021 года. И также был закрыт.

Призрачный GhostBSD

История этой ОС началась вовсе не с желания сделать мир лучше создать десктопный вариант FreeBSD. Просто одному разработчику из Канады Эрику Туржону (Eric Turgeon) в 2010 году понадобилось скрафтить свой LiveCD с FreeBSD и GNOME 2. Первая версия ОС фактически была скриптом автонастройки, который сам настраивал иксы, сеть, звук и стартовал GNOME. Всё это было завернуто в ISO-образ — никаких излишеств, просто избавил себя от рутины.

Некоторым пользователям настолько понравилось, как выглядит система, что они попросили сделать для них инсталлятор. В итоге GhostBSD 2.0 уже имел очень простой графический установщик, созданный на базе GTK и поддерживающий автоматическое разбиение дисков. Вместе с GNOME появилась возможность выбрать более легковесную среду LXDE.

Примерно в то же время позиционирование проекта поменялось — теперь это был самый настоящий FreeBSD для десктопа, но без изменения основы. Ядро и базовая система полностью идентичны оригинальной фряхе. Спустя некоторое время GhostBSD попробовал переехать на GNOME 3, но уже в 2014 году отказался от этого пути развития. Последний был максимально завязан на systemd, которого в BSD по понятным причинам нет, да и сам по себе «гном» показался слишком тяжелым и неповоротливым.

На замену выбран более простой и легкий форк GNOME 2 — MATE Desktop. Это вовсе не был шаг назад, скорее стремление к разумному использованию появляющихся технологий. Вместе с этим проект обрастал целой пачкой инструментов — от инсталлятора GBI (GhostBSD Installer) до утилиты NetworkMgr (аналог из Linux). В качестве рабочей ветки была выбрана FreeBSD-STABLE, что не сильно далеко от апстрима, но позволяло не ломаться с каждым обновлением.

Вывод neofetch после штатной установки
Вывод neofetch после штатной установки

В какой-то момент разработчики GhostBSD решились на смелый шаг — отказаться от традиционной системы инициализации BSD, заменив ее на OpenRC. Штатная rc(8) по факту представляет собой пачку shell-скриптов, выполняющихся последовательно при загрузке системы. Это надежно, предсказуемо и медленно.

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

Отдельного внимания заслуживает оболочка fish, акроним от Friendly interactive shell. Она не является POSIX-совместимой, однако ей можно это простить за две ключевые фичи: очень крутое автодополнение и отличную подсветку синтаксиса. Если бы я был новичком в BSD, эта оболочка позволила бы мне значительно лучше понимать, что делает та или иная команда:

Работа автодополнения в fish
Работа автодополнения в fish

Чтобы упростить установку пакетов и обновление системы, были разработаны две утилиты: software-station и update-station. Первая представляет собой удобную графическую оболочку для pkg:

Software-station на GhostBSD
Software-station на GhostBSD

Да-да — установить KDE можно в два клика мыши, после чего он будет сразу готов к работе. Хочется отметить, что интерфейс не перегружен опциями, но при этом есть всё для эффективного управления пакетами. После установки можно перелогиниться, выбрав в списке появившийся Plasma (X11). Neofetch теперь будет выдавать другую картину:

Вывод neofetch после установки KDE Plasma
Вывод neofetch после установки KDE Plasma

Лично мне MATE тут нравится значительно больше. Работает он шустро, а по внешнему виду слегка напоминает macOS. Этому способствуют Plank Reloaded, создающий простой и удобный док, и стилизованные кнопки управления окнами:

Рабочий стол GhostBSD
Рабочий стол GhostBSD

Я был весьма удивлен, когда обнаружил, что звуковая карта и Wi-Fi заработали сразу, без дополнительных телодвижений. Единственное, что пока вызывает вопросы, — Nvidia Optimus (совместная работа интегрированной и дискретной графики). Насколько я знаю, в чистой FreeBSD до сих пор нет динамического переключения GPU, а это значит, придется выбирать что-то одно. Благо оба видеоадаптера корректно видны в системе:

user@user-ghostbsd ~ [0|1]> pciconf -lv | grep -B3 display

vgapci1@pci0:0:2:0:  class=0x030000 rev=0x06 hdr=0x00 vendor=0x8086 device=0x0416 subvendor=0x1462 subdevice=0x10e6

    vendor     = 'Intel Corporation'

    device     = '4th Gen Core Processor Integrated Graphics Controller'

    class      = display

--

vgapci0@pci0:1:0:0:  class=0x030200 rev=0xa1 hdr=0x00 vendor=0x10de device=0x0fe4 subvendor=0x1462 subdevice=0x10e6

    vendor     = 'NVIDIA Corporation'

    device     = 'GK107M [GeForce GT 750M]'

    class      = display

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

GhostBSD — довольно уникальное явление. Проект не просто выжил, но и стал самым живым десктопным дистрибутивом на базе FreeBSD в 2025 году. Он идет в ногу со временем, подкупая своей простотой и легковесностью. Для новичка это идеальный вариант знакомства с миром BSD и хороший способ вдохнуть жизнь в старый ноутбук на x86_64.

Главная фича GhostBSD — комфорт без потери контроля над системой. Все на своих местах. Та же конфигурация сети живет в /etc/rc.conf, и ее можно без проблем поправить под свои нужды. Но никто не мешает сделать это же самое в несколько щелчков мышью. Хочешь ставить пакеты в консоли — без проблем. А можно и через графический интерфейс Software Station найти и установить что надо.

Система по умолчанию ставится на ZFS, и это дает весьма неплохой буст для сохранности данных. После загрузки ОС занимает примерно 1,77 Гб оперативной памяти и отличается почти мгновенным откликом интерфейса. Она не пытается быть универсальной и угодить всем категориям пользователей, как делает Ubuntu. Чувствуется, что это отдельная ветвь эволюции UNIX-like систем, которая развивалась параллельно и при этом сохранила свою самобытность.

Лично для меня GhostBSD стал настоящей находкой — он остался верен старому духу UNIX и при этом не пытается заставить пользователя страдать. Каждый запущенный сервис тут понятен, а лог — читаем и объясним. Это отличный дистрибутив, который даже если и не сможет завоевать массовую аудиторию, но точно будет продолжать жить, оставаясь отточенным скальпелем в руках опытного системного администратора.

Комментарии (7)


  1. unreal_undead2
    24.10.2025 08:37

    Например, звук воспроизводился только через динамики, а на подключение наушников система никак не реагировала.

    Вот конкретно это для своего ноута и в линуксе до сих пор приходится чинить скриптом при загрузке. Смотрел на MidnightBSD - оно ещё и встроенный WiFi не видит.


  1. MAXH0
    24.10.2025 08:37

    Сильно подозреваю, что возможности работы на разном железе и установки софта сильно меньше, чем в той же Убунту. Зато есть возможность просмотреть любимый форум про Аниме в теплой, ламповой обстановке ;)


  1. Yami-no-Ryuu
    24.10.2025 08:37

    Не понял чем это отличается от FreeBSD + Mate Desktop?

    Нескучными обоями?


  1. svitoglad
    24.10.2025 08:37

    Ностальгический интерфейс windows 95 или 98. :)


  1. checkpoint
    24.10.2025 08:37

    Так и не понял, чем благородных донов не устраивает pkg install xfce после дефолтной инсталляции FreeBSD ? С драйверами Nvidia и WiFi придется попотеть в любом случае.


    1. unreal_undead2
      24.10.2025 08:37

      Например хочется посмотреть на систему в целом (в том числе как железо распознаётся из коробки и управляется из дефолтного GUI) до инсталляции (до которой дело может не дойти).


      1. checkpoint
        24.10.2025 08:37

        Получается, что отличие только в наличие графического инсталлятора запускаемого по умолчанию ?