FreeBSD — свободная UNIX-подобная операционная система, потомок AT&T Unix по линии BSD, созданной в университете Беркли. FreeBSD работает на PC-совместимых системах семейства Intel x86 (IA-32) (включая Microsoft Xbox), а также на DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC, NEC PC-98, ARM. Готовится поддержка архитектуры MIPS.
FreeBSD разрабатывается как целостная операционная система. Исходный код ядра, драйверов устройств и базовых пользовательских программ (т. н. userland), таких как командные оболочки и т. п., содержится в одном дереве системы управления версиями (CVS до 31 мая 2008, сейчас SVN). Это отличает FreeBSD от GNU/Linux — другой свободной UNIX-подобной операционной системы — в которой ядро разрабатывается одной группой разработчиков, а набор пользовательских программ — другими (например, проект GNU), а многочисленные группы собирают это все в единое целое и выпускают в виде различных дистрибутивов GNU/Linux.
FreeBSD хорошо зарекомендовала себя как система для построения интернет- и интранет-серверов. Она предоставляет достаточно надёжные сетевые службы и эффективное управление памятью. FreeBSD широко представлена в списке веб-серверов с наибольшим временем непрерывной работы (согласно исследованию компании Netcraft).
История
Разработка FreeBSD началась в 1993 году с большой скоростью, в качестве отправной точки были взяты исходные тексты 386BSD. Однако, из соображений законности использования исходных кодов 386BSD, команда разработчиков FreeBSD переработала большую часть системы ко времени выпуска FreeBSD 2.0 в январе 1995 года используя 4.4BSD-Lite. Руководство FreeBSD содержит более подробную историческую информацию о происхождении FreeBSD.
По состоянию на 17 июля 2008 года текущий релиз FreeBSD имеет номер 7.0.
После выпуска релизов создаются дополнительные ветви разработки для их поддержки, но в них вносятся лишь самые необходимые изменения, исправляющие серьёзные ошибки или проблемы с безопасностью системы. До четвёртой версии FreeBSD у стабильной и текущей веток был один и тот же старший номер версии. Затем текущей ветви был присвоен номер 5, а у стабильной остался номер 4. В настоящее время стабильная версия имеет номер 7, а текущая — 8. Существует также ветвь 6-STABLE для поддержки тех пользователей, которые ещё не обновили FreeBSD до версии 7.
FreeBSD 5 включает несколько новых функций, в том числе относящихся к безопасности. С целью повысить безопасность FreeBSD был сформирован проект TrustedBSD, в рамках которого были разработаны, в том числе: расширяемая система принудительного контроля доступа MAC, списки доступа ACL для файловых систем и новая файловая система UFS2. Некоторые функции TrustedBSD были интегрированы также в операционные системы NetBSD и OpenBSD. FreeBSD 5 также поддерживает шифрование файловых систем посредством системы GDBE, которую написал Пол-Хеннинг Камп, один из ведущих разработчиков. Другие важные возможности FreeBSD 5 относятся к внутриядерным блокировкам для улучшения производительности на многопроцессорных SMP-системах и многопоточности, реализованной системой KSE, которая являлась поточной библиотекой по умолчанию начиная с версии 5.3. Позже libkse в этом качестве была заменена на libpthread, однако до сих пор поддерживается в -STABLE.
Модель разработки FreeBSD
Существует около 4000 разработчиков, которые работают на добровольной основе. Все они могут читать дерево репозитория. Но не могут вносить изменения. Вместо этого разработчик обращается к коммитеру, который имеет право вносить изменение в код. Существует около 400 коммитеров. Разработчик может вырасти по социальной лестнице проекта и стать коммитером, а затем членом основной команды. Нового коммитера избирают другие коммитеры. Основная команда является ядром проекта и состоит из 9 человек, которые выбираются на 2 года. Основная команда решает конфликты между коммитерами.
Участники проекта разрабатывают две ветки «CURRENT» и «STABLE».
Новый код для тестирования помещают в ветку CURRENT (нестабильная, тестовая). Новые функции, добавленные в CURRENT, могут остаться в системе или от них могут отказаться, если реализация окажется неудачной. Иногда эта версия может оказаться в непригодном для использования состоянии.
STABLE (стабильная или производственная) версия содержит только те нововведения, которые прошли проверку в CURRENT. Тем не менее, эта версия тоже предназначена, в основном, для разработчиков. Не рекомендуется обновлять ответственные рабочие серверы до STABLE, предварительно её не протестировав. На основе STABLE регулярно создаются тщательно протестированные разработчиками RELEASE версии.
Варианты установки
Операционная система FreeBSD может быть установлена с различных носителей, таких как:
- DVD-ROM.
- CD-ROM.
- Дискета.
- Магнитная лента.
- FAT-раздел жёсткого диска.
- Удалённый сервер (по протоколу FTP или NFS).
Порты и пакеты
Система портов FreeBSD обеспечивает механизм установки сторонних программ, распространяемых как в исходных кодах (обычный способ в мире UNIX) так и в бинарных файлах (для проектов с закрытым исходным кодом). Порт включает в себя файлы, необходимые для правильной компиляции, установки и работы приложения под FreeBSD. В настоящее время коллекция портов насчитывает около 18000 приложений самого разного назначения.
О талисманах
Основным талисманом системы является красный демонёнок, известный также как Beastie:
Кроме него, талисманом также считается Devilette, девушка в красном костюме демона:
Производные
BSD лицензия позволяет сохранять коммерческую тайну при модификации FreeBSD для встраиваемых систем и производить другие производные проприетарные системы, что делает FreeBSD привлекательной для промышленности. Вместе с тем остаётся неизвестным, в какой конкретно технике применяют FreeBSD. Ниже приведены свободные производные операционные системы:
- DragonFlyBSD — ответвление от FreeBSD 4.8, созданное как логическое продолжение 4-й ветви. Она включает систему потоковой обработки сообщений, похожую на ту, которая используется в системах с микроядром.
- FreeSBIE — LiveCD-дистрибутив FreeBSD, похожий на дистрибутив GNU/Linux под названием Knoppix.
- Frenzy — другой проект по созданию LiveCD на основе FreeBSD, ориентированный в первую очередь на русскоязычных системных администраторов.
- TrueBSD — белорусский LiveDVD-дистрибутив на основе FreeBSD.
- BSDeviant — ещё один LiveCD.
- PicoBSD — версия FreeBSD, умещающаяся на одну дискету.
- Debian GNU/kFreeBSD — производная версия, базирующаяся на наборе инструментов GNU, разрабатывается группой пользователей Debian.
- Darwin — ядро Mac OS X, многие команды взяты от FreeBSD 4/5, разрабатывается компанией Apple.
- m0n0wall — встраиваемый межсетевой экран, основанный на FreeBSD.
- pfSense — ответвление от проекта.
- FreeNAS — основанное на m0n0wall сетевое хранилище NAS.
- PC-BSD — дистрибутив с графическим инсталлятором и настольной средой KDE по умолчанию.
- DesktopBSD — ещё один дистрибутив для домашнего использования.
- РУС-BSD — российский дистрибутив для рабочих станций.
Ссылки
Официальный сайт проекта FreeBSD (англ.)
Официальный Форум проекта FreeBSD (англ.)
Официальный сайт русского дистрибутива PC-BSD-RU (русск.)
Русская версия официального сайта (русск.)
Проект русской документации FreeBSD (русск.)
Обзор дистрибутивов BSD (русск.)
Краткая история FreeBSD (русск.) — написана одним из основателей FreeBSD Джорданом Хаббардом (Jordan Hubbard)
Различная информация и статьи по BSD системам на OpenNET (русск.)
FreeBSD Software — свежая информация о изменениях в коллекции портов (англ.)
FreshPorts.org — свежая информация о изменениях в коллекции портов (англ.)
FreeBSDwiki.net — wiki-сайт, посвящённый FreeBSD (англ.)
Lissyara.su — сайт посвящённый FreeBSD, большое кол-во статей по настройке (русск.)
bsdportal.ru — форум посвящённый вопросам использования ОС FreeBSD (русск.)
seteved.ru — книги и статьи по FreeBSD (русск.)