FreeBSD: физика файловой системы. Операционные системы на основе OpenBSD. Порты и пакеты

Установка FreeBSD 10 за пару минут (пошаговая установка)

FreeBSD - бесплатная операционная система. Современная модификация UNIX. Одна из самых надёжных систем, прекрасно подходит для администрирования локальной сети, как сервер доступа, почтового сервера, файлового сервера, сервера имён и остальное. Не даром на её базе со временем была создана Mac OS. Так же есть возможность установить графическую оболочку или использовать готовое решение проекта PCBSD.

1. Выбор дистрибутива, подготовка установочного носителя
2. Начало установки, разметка диска
3. Выбор компонентов и установка

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

И когда Вы настроите систему под свои нужды, она Вас не подведёт. Лично я в процессе работы с ней (2 года), не наблюдал никаких сбоев, глюков и нагрузки на оборудование.

Выбор дистрибутива, подготовка установочного носителя

На официальном сайте можно выбрать версию операционной системы, разрядность, а также платформу (amd64, i386, powerpc, sparc)

После выбора платформы, откроется список вариантов установки (CD, DVD, FTP сервера, MS DOS, дискет и даже магнитных лент).

Конечно лучше не "играть с бубном" и скачать дистрибутив для CD или DVD дисков и записать установочный диск с помощью программ: Alcohol120%, UltraISO или любой другой программой для записи установочного диска.

Начало установки, разметка диска

Загружаемся с установочного диска и запускается меню загрузчика FreeBSD. Можно подождать 10 секунд для автоматического запуска программы установки или нажать кнопку Enter или 1.

На экране отобразится много строк определённого оборудования. Просмотреть его можно нажав кнопку Scroll Lock , прокручивать страницы кнопками PageUp и PageDown.

После определения и тестирования оборудования, появится приветственное окно установки FreeBSD. Нажимаем Install


В окне выбора раскладки клавиатуры, оставьте по умолчанию или выберите подходящую раскладку.



doc - документация на систему

games - игры

ports - порты для установки программ

src - ядро системы

Обычно я оставляю только src, так как документация мне не нужна, игры тоже, порты установим и обновим после установки системы, так как самая актуальная сборка обновляется через интернет. Ядро также можно потом доустановить.


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


Автоматически редактор разделов создал три области:

ada0p1 512KB freebsd-boot - область загрузчика. Этого вполне достаточно, больше не надо

ada0p2 19GB freebsd-ufs / - корневой раздел операционной системы. Всё оставшееся место под систему и файлы, с которыми будете работать. По сути её нужно всего 1GB памяти, с условием что будут созданы другие разделы и только на них будет проводиться работа.

Для экспертов: Принято помимо одного корневого раздела создавать другие разделы:

/var - содержит временные и постоянно меняющиеся файлы, логи.

/usr - содержит файлы с установленными программами и остальное.

/data - в этом разделе у меня находились файлы сайта, например.

ada0p3 1.0GB freebsd-swap none - файл подкачки. Размер его зависит от количества оперативной памяти. Если её мало, допусти 1GB, то целесообразно выставить файл подкачки в два раза больше. Если оперативной памяти много, то файл подкачки можно выставить равным объёму оперативной памяти, а то и меньше.


Жмём кнопку Finish , подтверждаем принятые изменения Commit и начинается установка системы FreeBSD.


После установки предлагается дважды ввести пароль. Вводимые символы не отображаются.


Выбор компонентов и установка

После этого предлагается настроить сетевую карту(ы), для доступа к сети. В отличии от Linux, где любая сетевая карта называется eth , в FreeBSD сетевая карта может называться по разному, в зависимости от производителя.


Выбираем версию интернет протокола, четвёртая версия IPv4 или шестая IPv6. Потом настраиваете сеть по DHCP или прописываете ip адрес, маску подсети и шлюз.


Настраиваем время, по времени локальной машины или выбираем свой часовой пояс.


Выбираем сервисы, которые будут запускаться при загрузке FreeBSD. Оставьте по умолчанию.


Можно добавить дополнительного пользователя(ей), назначить им права и их директории. Можно сделать всё это потом.


Установка приближается к завершению и Вы можете перед завершением перенастроить или донастроить некоторые параметры.

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

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

Примечание : Статья сосредоточена на FreeBSD, но многие из перечисленных ниже пунктов касаются и других BSD-систем.

Что общего между FreeBSD и Linux?

Для начала нужно выяснить, чем эти системы похожи друг на друга.

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

FreeBSD и дистрибутивы Linux являются Unix-подобными по своей природе. FreeBSD имеет много общего с системами Unix предыдущих поколений, а система Linux была создана с нуля как открытая альтернатива Unix.

Также оба семейства в основном совместимы с POSIX . Общие функции и дизайн систем стандартизированы и используют аналогичные шаблоны. Иерархия файловой системы строится одинаково, основным методом взаимодействия с обеими системами является среда оболочки, API-интерфейсы программирования имеют сходные функции.

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

Теперь пора разобраться, чем же отличаются FreeBSD и Linux.

Различия в лицензировании

Одно из самых фундаментальных различий между системами FreeBSD и Linux – вопрос лицензирования.

Ядро Linux, приложения на основе GNU и многие программные продукты из мира Linux лицензируются по GPL (или GNU General Public License). Эта лицензия часто называется свободной (copyleft). По сути, это форма лицензирования, которая позволяет свободно просматривать, распространять и изменять исходный код при условии, что любые производные продукты будут поддерживать эту же лицензию.

FreeBSD (включая ядро и все инструменты, созданные разработчиками FreeBSD) распространяет свое программное обеспечение под лицензией BSD. Этот тип лицензироавния более либеральный, чем GPL, поскольку он не требует, чтобы производный продукт поддерживал условия этой лицензии. Это означает, что любой человек или организация может использовать, распространять или модифицировать программу без необходимости делать вклад в ее развитие или открывать исходный код. Единственное требование заключается в том, что в исходный код или документацию производной программы (в зависимости от метода выпуска) должны быть включены авторские права, копия лицензии BSD и отказ от обязательств. Сама лицензия очень короткая, ее можно найти .

Преимущества каждого из этих типов лицензирования почти полностью зависят от философии и потребностей пользователя. Лицензии GPL ратуют за совместное использование кода и открытую экосистему. Закрытое программное обеспечение не должно основываться на программах с лицензией GPL. А лицензионное программное обеспечение BSD можно свободно включать в закрытые приложения. Это делает лицензирование BSD более привлекательным для многих компаний и частных лиц, надеющихся монетизировать свое программное обеспечение – оно позволяет продать программное обеспечение и сохранить исходный код закрытым.

Понимание лицензирования систем FreeBSD и Linux поможет вам лучше разобраться с их философией.

История развития FreeBSD

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

Linux – это ядро, разработанное Линусом Торвальдсом как средство замены ограничительной системы MINIX, которую он использовал в Хельсинском университете. В сочетании с другими компонентами, многие из которых поступают из набора GNU, операционная система на ядре Linux имеет много уникальных свойств Unix, несмотря на то, что она не была непосредственным ответвлением системы Unix. Поскольку Linux была запущена с нуля, не наследует дизайн и некоторые из устаревших соображений, она может значительно отличаться от систем с более тесными связями с Unix.

FreeBSD имеет множество прямых связей с Unix. BSD (или Berkeley Software Distribution) – это дистрибутив Unix, созданный в Калифорнийском университете в Беркли, который расширил набор функциональных возможностей AT&T Unix и имел приемлемые условия лицензирования. Позже было принято решение попытаться заменить исходную операционную систему AT&T, используя альтернативы с открытым исходным кодом, чтобы пользователям не требовалось получать лицензию AT&T для работы с BSD. В конце концов, все компоненты оригинальной системы AT&T были переписаны под лицензией BSD и перенесены в архитектуру i386 как 386BSD. Система FreeBSD стала форком этой базы с целью улучшить и модернизировать проделанную работу и в конечном итоге была перебазирована в неполный релиз под названием BSD-Lite для решения вопросов лицензирования.

Благодаря длительному и многоэтапному процессу ответвления FreeBSD стала свободной от лицензий, но поддерживала тесные связи с ее прошлым. Разработчики системы по-прежнему реализовали многие функции способами, принятыми в Unix, возможно, потому, что FreeBSD всегда разрабатывалась в качестве клона Unix с открытой лицензией. Это повлияло на дальнейшее развитие и повлекло за собой последствия, речь о которых пойдет ниже.

Базовая операционная система и дополнительное программное обеспечение

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

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

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

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

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

Формирование релизов

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

В предыдущем разделе вы узнали, что:

  • Большая часть операционной системы FreeBSD разрабатывается командой FreeBSD.
  • Базовая операционная система FreeBSD – основной выход.
  • Базовое программное обеспечение FreeBSD считается единым и неделимым набором.

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

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

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

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

Различия в программном обеспечении и системном дизайне

Оставшиеся различия связаны с самим программным обеспечением и общими качествами системы.

Установка поддерживаемых пакетов и исходного кода

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

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

Система портов FreeBSD – это коллекция программного обеспечения, которое умеет собирать FreeBSD. Организованная иерархия, представляющая это программное обеспечение, доступна в каталоге /usr/ports, где пользователи могут развернуть каталоги для каждого приложения. Эти каталоги содержат несколько файлов, в которых указывается, где можно найти исходные файлы, а также инструкции для компилятора о том, как отладить исходный код для корректной работы с FreeBSD.

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

Стандартное ПО vs пользовательское ПО

Одним из аспектов, который может показаться пользователям Linux немного странным, является тот факт, что FreeBSD обычно предоставляет программное обеспечение upstream по возможности без изменений.

Многие дистрибутивы Linux вносят изменения в программное обеспечение, чтобы упростить подключение к другим компонентам и попытаться упростить управление. Хорошими примерами этой тенденции являются перестройка общих иерархий конфигурации веб-сервера.

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

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

Общие инструменты FreeBSD

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

Команда FreeBSD поддерживает собственную версию большого количества обычных инструментов. Многие из инструментов в Linux-системах можно найти в пакетах GNU, а FreeBSD часто использует свои собственные варианты программ для своей операционной системы.

Для этого есть несколько причин. Поскольку команда FreeBSD отвечает за разработку и поддержание основной операционной системы, контроль разработки этих приложений и размещение их под лицензией BSD является необходимым и полезным моментом. Некоторые из этих инструментов также имеют тесную функциональную связь с инструментами BSD и Unix, на основе которых они были созданы, в отличие от пакетов GNU, который в целом не имеет тенденции к обратной совместимости.

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

Стандартная оболочка

Следующее отличие, которое может вызвать путаницу, связано с предыдущим и заключается в том, что FreeBSD не использует bash по умолчанию. Вместо этого FreeBSD использует tcsh.

Эта оболочка является улучшенной версией csh – оболочки C, разработанной для BSD. Оболочка bash является компонентом GNU, а потому она не может быть оболочкой по умолчанию в FreeBSD. Хотя обе оболочки обычно работают аналогично в командной строке, в tcsh не выполняются сценарии. Базовая оболочка Bourne sh более надежная и позволяет избежать некоторых ошибок, связанных с сценариями tcsh и csh.

Конечно, можно также очень просто настроить bash как оболочку FreeBSD.

Структура файловой системы

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

Это влияет на то, как FreeBSD организует компоненты в файловой структуре. В Linux исполняемые файлы обычно находятся в каталогах /bin, /sbin, /usr/sbin или /usr/bin в зависимости от их назначения и того, насколько важны их основные функции. FreeBSD распознает эти различия, но также накладывает еще один уровень разделения между компонентами базовой системы и компонентами, установленными из портов. Программное обеспечение базовой системы находится в одном из вышеперечисленных каталогов. Любые программы, установленные через порт или пакет, помещаются в /usr/local/bin или /usr/local/sbin.

Каталог /usr/local содержит структуру каталогов, которая в основном отражает структуру каталогов / или /usr. Это основной каталог для программного обеспечения, установленного через систему портов. Почти вся конфигурация портов выполняется через файлы, расположенные в каталоге /usr/local/etc, в то время как базовая конфигурация системы хранится в /etc (как обычно). Это позволяет легко распознать, является ли приложение частью базовой системы, и помогает поддерживать файловую систему в чистоте.

Заключение

FreeBSD и Linux имеют много общего и еще больше различий. Обе системы имеют свои преимущества.

FreeBSD следует воспринимать как отдельную операционную систему и не пытаться подогнать ее под восприятие Linux.

Если вы окончательно решили отдать предпочтение UNIX, а не Windows, Мас OS или другой системе, то встает следующий вопрос какую разновидность UNIX выбрать? FreeBSD -- один из нескольких доступных вариантов, и нужно понимать, чем эта система отличается от других аналогичных систем. Во многих случаях любая UNIX-система вполне подходит для решения поставленных задач, но бывают ситуации, когда FreeBSD лучше (или хуже) справляется с конкретной задачей.

Как правило, в различных UNIX-системах используется одно и то же программное обеспечение. Например, во всех системах работают популярные серверы sendmail и Apache, а также Х Window System. Ниже перечислено то, что действительно отличает UNIX-системы друг от друга.

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

Аппаратная поддержка. UNIX-системы работают не только на платформе х86. Производительность процессоров х86 ставит их на нижнюю ступень, по крайней мере в семействе процессоров универсального назначения. Некоторые UNIX-системы ориентированы на суперкомпьютеры, и обычные операционные системы, такие как FreeBSD, не могут с ними конкурировать. Поддержка конкретных аппаратных устройств (модемов, сетевых и звуковых плат и т.д.) зависит от ядра и вспомогательных программ.

Стратегия распространения. Некоторые разновидности UNIX распространяются как коммерческие продукты, но в основном они представляют собой системы с открытым исходным кодом. Это означает, что любой желающий может получить исходный код системы, модифицировать его и распространить дальше. Системы с открытым исходным кодом значительно дешевле в эксплуатации, чем их коммерческие аналоги. Впрочем, в 1990-е годы коммерческие разновидности UNIX упали в цене, а некоторые из них даже стали бесплатными для определенного круга применений.

Стандартный набор и конфигурация программного обеспечения. UNIX существует уже около трех десятилетий, и за это время появилось множество версий популярных утилит, конфигурируемых самыми разными способами. В каждой UNIX-системе свой набор стандартных программ. В одних системах используются конфигурационные сценарии BSD-типа, в других -- сценарии System V. Наиболее распространенным почтовым сервером является программа sendmail, но в некоторых системах работают другие серверы. Подобные различия определяют уникальность каждой операционной системы семейства UNIX. Если сравнивать UNIX и, скажем, Windows, то эти различия несущественны, но в то же время их более чем достаточно для того, чтобы при переходе из одной UNIX-системы в другую приходилось покупать справочное руководство.

Ядро FreeBSD является производным от открытой реализации исходного ядра AT&T UNIX. Изначально система предназначалась для процессоров семейства Intel х86, но впоследствии стала поддерживать родственные семейства процессоров компаний AMD, VIA (Cyrix), Transmeta и других (большей частью не существующих сегодня). Ведутся работы по переносу системы на другие процессоры, например Alpha, но они еще далеки от завершения.

Ядро FreeBSD отличается монолитностью, т.е. имеет единую логическую структуру. Вспомогательные компоненты, например драйверы файловой системы, помещаются в так называемое пространство ядра и потому могут контролировать аппаратные компоненты и структуры данных ядра. В некоторых разновидностях UNIX применяется иная модель, называемая микроядром. В такой схеме ядро имеет меньший размер и взаимодействует с внешними компонентами, реализующими традиционные функции ядра, в частности доступ к файловой системе. У каждого подхода есть свои сторонники.

FreeBSD -- это операционная система с открытым исходным кодом. Большинство ее компонентов распространяется на условиях лицензии BSD . Эта лицензия разрешает модификацию и последующее распространение исходного кода на тех условиях, которые выберет разработчик. Теоретически это означает, что кто угодно может модифицировать код системы и продать его как коммерческий продукт. Другой популярной лицензией для систем с открытым исходным кодом является GPL (GNU General Public License). Она требует, чтобы любые модификации распространялись с соблюдением исходных требований GPL. Такую лицензию имеет ядро Linux, и отсюда проистекают многие различия между FreeBSD и Linux. Во FreeBSD используются программные компоненты, имеющие лицензию BSD, а в Linux больше GPL-компонентов. Это не влияет напрямую на работу операционной системы, но многие утилиты существуют в разных вариантах в зависимости от типа лицензии.

Некоторые разновидности UNIX патентованы. Например, системы Solaris компании Sun и AIX компании IBM являются коммерческими системами. Иногда их можно использовать бесплатно, как в случае Solaris для платформы х86, но чаще всего за лицензию коммерческой версии UNIX приходится платить. Различия между открытыми и коммерческими системами лежат в основном в концептуальной и экономической плоскостях. С функциональной точки зрения FreeBSD во многом эквивалентна своим коммерческим аналогам.

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

Помимо FreeBSD широко распространены следующие разновидности UNIX.

NetBSD. Это одна из трех операционных систем, производных от 386/BSD. Две другие -- FreeBSD и OpenBSD. NetBSD отличается от FreeBSD тем, что перенесена на большее число процессоров. Принципы их лицензирования и общая структура весьма схожи, но FreeBSD остается более популярной, так как активнее рекламируется и чуть проще в инсталляции и применении.

ОрепBSD. Эта система славится своей безопасностью. Ее разработчики потратили немало усилий на то, чтобы создать систему, которую не так просто взломать. Как и NetBSD, OpenBSD схожа с FreeBSD по конфигурации, принципам лицензирования и доступному программному обеспечению.

Linux. Linux можно считать отдельным семейством операционных систем с открытым исходным кодом. С технической точки зрения Linux -- это лишь ядро; в дистрибутив Linux входят ядро и пакеты программ, составляющие операционную систему. По общим принципам конфигурирования и составу программных средств FreeBSD больше отличается от Linux, чем от NetBSD и OpenBSD. Стоит обратить внимание на то, что пользователи, не знакомые с UNIX, иногда считают FreeBSD дистрибутивом Linux. Это не так. FreeBSD не использует ядро Linux и отличается множеством конфигурационных нюансов. FreeBSD следует считать производной от дистрибутива BSD (Berkeley Software Distribution), тогда как Linux является свободно распространяемой, полностью переработанной реализацией UNIX, гораздо слабее связанной с ранними версиями BSD и AT&T UNIX.

Solaris. Это коммерческая разновидность UNIX, выпущенная компанией Sun и используемая в основном на ее серверных платформах. Серверы Sun, работающие на процессорах SPARC, являются конкурентами высокопроизводительных систем на базе процессоров х86 старших моделей. Операционная система Solaris может работать и на платформе х86, однако набор ее драйверов меньше, чем у FreeBSD. Система Solaris удобна для разработчиков, которые пишут программы для компьютеров Sun. В остальных случаях более предпочтительным выбором для персональных компьютеров являются FreeBSD и Linux.

AIX. Это коммерческая разновидность UNIX, выпущенная компанией IBM для своего специализированного оборудования. Подобно системам компании Sun, AIX нацелена на верхний сегмент рынка серверов, поэтому мало конкурирует с FreeBSD.

IRIX. Большинство рабочих станций Silicon Graphics работает под управлением IRIX -- коммерческой разновидности UNIX. Ранее основным достоинством этих систем была оптимизированная обработка высококачественной графики, с их помощью создавались спецэффекты для кинофильмов. Сегодня в этот сегмент рынка активно вторгаются недорогие компьютеры на базе процессоров х86, но позиции Silicon Graphics и IRIX все еще сильны.

В целом основными конкурентами FreeBSD являются другие BSD-системы и Linux. FreeBSD популярнее своих "родственников" на платформе х86, поэтому активнее поддерживается сторонними разработчиками. Эта система разрабатывалась с акцентом на простоту инсталляции и администрирования; здесь она опережает NetBSD и OpenBSD. Достоинством OpenBSD является улучшенная безопасность, а NetBSD поддерживает не только процессоры х86. Что касается Linux, то у нее больше отличий в плане аппаратной и программной поддержки и ее лицензирование основывается на несколько иных принципах. Для новичков, которым требуется UNIX-система универсального назначения с открытым исходным кодом, FreeBSD и Linux подойдут в одинаковой степени. Но Linux развивается гораздо хаотичнее, и различия между ее многочисленными дистрибутивами часто сбивают с толку неопытных пользователей.

FreeBSD вряд ли можно считать конкурентом коммерческих разновидностей UNIX, ориентированных на компьютеры, которые превосходят по производительности системы на базе процессоров х86. Если в организации используются высокопроизводительные серверы Sun, IBM или SGI в сочетании с недорогими персональными компьютерами, то на последних можно установить FreeBSD, поскольку процедуры администрирования FreeBSD и коммерческих разновидностей UNIX во многом схожи. Иногда системы х86 старших моделей напрямую конкурируют с системами Sun, IBM и SGI младших моделей. Достоинством первых является низкая цена, но для них сложнее заключать контракты на сервисное обслуживание.

  • Перевод

FreeBSD хороша для серверов, но не для настольных компьютеров

У FreeBSD есть полнофункциональная звуковая подсистема c низкой задержкой, а смешивание в ядре позволяет нескольким приложениям воспроизводить звуки одновременно (с независимыми настройками громкости) без дополнительных настроек. Дефолтные настройки включают в себя X.org и настройки рабочего стола, такие как KDE или GNOME, это так же просто как выбрать метапакет в зависимости от того, какой вы предпочитаете.

Если даже это кажется слишком сложным, PC-BSD - полнофункциональная настольная система, созданная поверх FreeBSD с простым в использовании установщиком и опцией коммерческой поддержки.

FreeBSD использует модель закрытого развития

FreeBSD развивают более 400 разработчиков по всему миру, все они имеют полный доступ ко всей системе и данным этой ОС. Третьи лица так же зачастую фиксят родные патчи. Если Вы хотите увидеть количество исправленных патчей, вы можете поискать "Submitted by" в логах фиксации.

Нет никаких жестких рамок для FreeBSD. Решения приняты людьми готовыми сделать работу. Если все же возникают споры, то они разрешаются группой разработчиков, которые избираются каждые два года. Обязательным критерием, по которому избираются разработчики, является обязательное исправление или доработка кода проекта в прошлых годах.

FreeBSD - Просто OS X без красивого GUI интерфейса

Это такой же миф про OS X, как и про FreeBSD: OS X просто FreeBSD с красивым графическим интерфейсом. Эти две операционных системы действительно совместно используют часть кода, например большинство утилит пользовательского пространства и библиотека C по OS X получены из версий FreeBSD. Часть этого кода развивается в разное время и в разных направлениях, например FreeBSD 9.1 позднее включила стек C++ и компилятор, который первоначально были разработаны для OS X сотрудниками Apple. Так же есть и кардинально разные детали.

Ядро XNU, которое используется на OS X включает в себя несколько подсистем из более старых версий FreeBSD, но в основном считаются независимой реализацией. Но все же за счет своего сходства продукты реализованные на OS X значительно проще адаптировать под FreeBSD. Например libdispatch и libc ++ были записаны для OS X и работали на FreeBSD раньше, чем на любой другой ОС.

В FreeBSD все необходимо компилировать с исходного кода

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

Вы можете установить pkgng из портов (ports-mgmt/pkg) на более старых версиях FreeBSD. Она включена по умолчанию на FreeBSD 9.1 и более поздние версии.

FreeBSD это UNIX из 90-х (или 80-ых)

FreeBSD - линейный потомок исходного UNIX через Распределение программного обеспечения Беркли, но она продолжала развиваться отдельно. За последние несколько лет мы видели, что ZFS становится значительно производительней: поддержка 10 ГБ, 40 ГБ и 100 ГБ канала, улучшеная звуковая подсистема, поддержка 802.11n и других улучшений.

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

Весь хороший код в FreeBSD родом из Solaris

FreeBSD импортировала две функции высокого профиля из OpenSolaris: DTrace и ZFS. Обе теперь хорошо поддерживаются FreeBSD. ZFS, в частности, находится в центре внимания многих разработчиков FreeBSD, в том числе тех, которые используются iXsystems, компанией, которая поддерживает развитие FreeNAS и продает коммерческие NAS устройства на базе FreeBSD. Разработчики FreeBSD также работают в тесном сотрудничестве с разработчиками Illumos, одной из веток с открытым исходным кодом Solaris, для улучшения обеих этих функций.

Несмотря на преимущества ZFS, это по-прежнему относительно небольшая часть общей системы. ZFS и DTrace составляют менее чем 4% кода в ядре, которое равно почти 10% кода в основной системе. Если считать, что только 0.4% FreeBSD хороши, то система не приобрела бы такой популярности.

FreeBSD не имеет драйверов

Это проблема, с которой сталкиваются все операционные системы, - даже новые версии Windows. Большую часть времени пользователи не заботятся об общем количестве драйверов, только если драйверы уже установлены по умолчанию. Есть некоторые упущения с точки зрения поддержки драйверов, но FreeBSD поддерживает широкий спектр сетевых карт (в том числе 802.11n чипсеты), большинство звуковых карт AMD, Intel и графические процессоры NVIDIA.

Поддержка аппаратных средств - это та часть реализации, которая требует постоянной доработки, потому что нельзя просто сказать производителям аппаратных средств, чтобы они подождали пару лет, пока разработчики ПО их догонят. Обеспечение поддержки новых устройства занимает время для настройки, хотя некоторые производители сами обеспечивают драйверы, например Nvidia обеспечивает драйверы для их GPU и Intel для новейших сетевых контроллеров. Другие производители обеспечивают помощь в разработке драйверов FreeBSD, включая Broadcom, JMicron, HP, Mellanox, Chelsio и Solarflare. Если Вы знаете устройства, которые не поддерживаются FreeBSD, лучше сообщить про это разработчикам и производителям устройств. Как правило, лучшим толчком для решения проблемы со стороны производителей - сообщение о том, что их клиенты не могут использовать их продукты.

FreeBSD 4.x лучшее из всего что было

4.x релиз был самым стабильным и FreeBSD гордились тем, что они смогли реализовать такой продукт. Многие пользователи продолжали использовать его на протяжении многих лет. Серия 5.x вышла во время перехода к оптимизации многопоточности. Эта включало замену одной блокировки вокруг ядра с рядом меньших блокировок, которые используются отдельными подсистемами. Это требовало большого куска работы, что не могло не привести к некоторым ошибкам. 5.x поставлялась с двумя реализациями поточной обработки, а это еще больше осложняло ситуацию. Первые два выпуска в серии 5.x были отмечены «только разработчикам», но 5.2 была нацелена на более широкую аудиторию и не оправдала ожиданий пользователей системы FreeBSD. Ряд крупных пользователей решили не менять серию 4.x.

Серия 5.x была болезненным уроком для проекта. В серии 6.x восстановили стабильность выпуска 4.x., а в серии 7.x восстановили производительность одного процессора. Во время выпуска серии 8.x можно было увидеть ряд опубликованных третьими лицами тестов, которые продемонстрировали лучшую масштабируемость FreeBSD на многопроцессорных системах, чем любая другая операционная система.

Все эти релизы имели значительное количество улучшений, такие как улучшенная звуковая подсистема, ZFS, DTrace, ведение журналов UFS и многое другое, но стабильность и производительность остались ключевыми задачами системы FreeBSD.

Недостатки программного обеспечения FreeBSD

Коллекция FreeBSD в настоящее время содержит более 26 000 единиц программного обеспечения. Трудно сравнить это число с другими репозиториями, потому что программы разделены по-другому (например, GCC порт в FreeBSD устанавливает программы и библиотеки, которые разделены между 6-10 пакетами в Debian, в зависимости от версии GCC), но большинство вещей Вы все же можете там найти. Одной из причин, по которой пользователи выбирают FreeBSD является тот факт, что набор портов обеспечивает определенную, относительно неясную часть программного обеспечения, в котором она нуждается, в то время как другие системы этого не делают.

Большая часть программного обеспечения в наборе портов работает исходно на FreeBSD. Большая часть программного обеспечения с открытым исходным кодом - агностик относительно ОС и требует, чтобы минимальная модификация была скомпилирована и работала на FreeBSD. Есть исключения такие как Valgrind, которые требуют детального понимания системы. Проприетарное программное обеспечение может быть более серьезной проблемой. Некоторые разработчики, такие как Opera, обеспечивают FreeBSD своим исходным кодом.

Другое программное обеспечение должно работать в режиме эмуляции. Например, бинарные файлы Linux могут работать на уровне Linux ABI, где системные вызовы Linux переводятся на их эквиваленты FreeBSD. Единственный изъян - немного увеличенная нагрузка системных вызовов; обычно сложно измерить различие в производительности между выполнением программ Linux на Linux и на FreeBSD: в некоторых случаях программы работают быстрее на FreeBSD, чем на Linux из-за более эффективных реализаций базовых вызовов. Например, версия Linux Flash-плагина может работать, используя NSPluginWrapper на уровне Linux ABI с собственным веб-браузером.

Аналогичное решение существует для запуска Windows приложений.

FreeBSD не поддерживает виртуализацию

FreeBSD 9 работает как гость Xen (domU) и на x86, и на x86-64, включая Amazon EC2. Благодаря работе, проделанной совместно с Microsoft, NetApp и Citrix, FreeBSD можно запускать на Hyper-V гипервизора Microsoft. FreeBSD 11 будет включать Dom0 поддержку управления домена.

FreeBSD также поддерживает VirtualBox и в качестве гостя и в качестве хоста. Вы можете найти гостевые дополнения VirtualBox, а затем и сам гипервизор в наборе портов. FreeBSD 10 также работает в качестве хоста операционной системы для гипервизора BSD, давая множество возможностей для запуска FreeBSD виртуальных машин на базе FreeBSD.

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

Лицензия BSD способствует взаимному сотрудничеству

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

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

Рассмотрим в качестве примера случай двух крупнейших интернет-компаний: Google и Yahoo! Прежде их внутренняя инфраструктура основывалась на операционной системе GPL, в то время как более поздние версии уже используют FreeBSD. Поскольку Google не распределяет их измененную операционную систему, они могут сохранить к примеру GoogleFS в частной собственности. В таких случаях как этот, где программное обеспечение разработано для внутреннего использования, по лицензионному соглашению компания не обязана раскрывать свои доработки для разработчиков FreeBSD.

Существуют, однако, некоторые проблемы с соединением: например, нельзя использовать библиотеку с лицензией GPL, если уже используется BSD.

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

Многие Linux пользователи уже слышали про FreeBSD, эта система использует ядро BSD, похожее на Linux, поскольку оба ядра основаны на Unix и поддерживают одни и те же стандарты POSIX. Это такая же свободная, бесплатная операционная система с открытым исходным кодом, разработанная для обеспечения максимальной безопасности и гибкости. Чаще всего она используется на серверах. Основное отличие от Linux в том, что разработкой ядра и программного обеспечения занимается одна команда разработчиков.

FreeBSD поддерживает множество различных процессорных конфигураций, от серверов до микрокомпьютеров, таких как Raspberry Pi. Как и Linux, система поставляется с множеством программ, которые можно очень просто установить с помощью портов. Всего доступно более 20 000 пакетов. В этой инструкции мы рассмотрим как выполняется установка FreeBSD 11 последней, на данный момент, версии на компьютер amd64. Будем устанавливать версию с интерфейсом командной строки, она лучше всего подходит для серверов.

Как обычно, сначала нам нужно скачать установочный образ, и только потом может быть выполнена установка и настройка freebsd 11.

На официальном сайте есть несколько версий для разных архитектур, нам нужна amd64 или x86, в зависимости от количества оперативной памяти, которую вы желаете использовать.

Мы будем устанавливать последнюю версию FreeBSD 11.1, но если позже выйдет более новая версия, то я думаю, что статья будет все еще актуальна и для нее.

Шаг 2. Запись образа на диск

Далее вам нужно записать полученный образ на диск или на флешку. Вы можете использовать один из известных вам методов для этого. Например, в Linux вы можете использовать Unetbootin или Etcher, а в Windows есть Rufus.

Далее вставьте носитель в компьютер и измените настройки BIOS так, чтобы загрузка выполнялась из вставленного носителя. Чтобы войти в BIOS, во время загрузки нажмите одну из клавишей: F2, F11, F12 перед загрузкой операционной системы. Затем перейдите на вкладку "Boot" и поставьте там ваш носитель на первое место.

Установка FreeBSD 11

Шаг 3. Меню загрузчика

В первом меню загрузчика вам не нужно менять никаких параметров. Просто нажмите "Enter" для продолжения работы:

Шаг 4. Выбор действия

Шаг 5. Раскладка клавиатуры

Выберите вашу раскладку клавиатуры, по умолчанию используется английская, в большинстве случаев лучше ее оставить:

Шаг 6. Имя хоста

Введите имя хоста для новой системы:

Шаг 7. Выбор программ

На следующем экране вам предстоит выбрать компоненты системы, которые вы хотите установить FreeBSD 11 на свой компьютер. Для того, чтобы отметить компонент нажмите "Пробел" . Для сервера достаточно оставить библиотеки совместимости lib32 и Ports.

Когда завершите, нажмите "Enter" .

Шаг 8. Автоматическая разметка диска

Дальше нужно выполнить разметку диска. Вы можете довериться установщику и выполнить автоматическую разметку или же сделать все вручную. Если у вас есть несколько жестких дисков, которые необходимо подключить, лучше использовать ZFS. Но мы рассмотрим на примере UFS.

Затем выберите таблицу разделов. Если ваш диск больше 2 Тб или вы используете UEFI вместо BIOS, то вам лучше использовать GPT, в всех остальных случаях более предпочтительно MBR. Даже будет лучше если вы отключите защищенную загрузку и будете использовать MBR:

В следующем окне система покажет вам созданные разделы. В случае MBR будет создано два раздела - корень и раздел подкачки. Используйте "Tab" для выбора кнопки "Commit" , а затем нажмите "Enter" :

Шаг 9. Установка FreeBSD


Шаг 10. Пароль суперпользователя

Когда установка завершится, система предложит вам ввести пароль для суперпользователя. Установщик спросит пароль два раза, но он не будет отображаться на экране:

Шаг 11. Настройка сети

Затем выберите "Yes" , чтобы выполнить настройку ip адреса IPv4:

Вы можете выбрать вариант получения адреса по DHCP или настроить его вручную:

Настройку адреса IPv6 можно пропустить:

Последний этап настройки сети - настройка DNS серверов. Лучше всего добавить, кроме стандартного, DNS сервер от Google - 8.8.8.8:

Шаг 12. Регион

Выберите географический регион, в котором расположен ваш компьютер:

Затем выберите вашу страну:

Шаг 13. Настройка даты

На следующем этапе нужно ввести текущую дату и время, если они были неверно получены из сети:


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

Шаг 15. Дополнительные оптимизации

Эти опции позволяют усилить безопасность вашей системы. Отключите доступ к буферу ядра для непривилегированных пользователей. Отключите отладку, Включите очистку /tmp во время загрузки, отключите сокет Syslogd и Sendmail если вы не планируете использовать почтовый сервер:

Шаг 16. Другие пользователи

Дальше установщик спросит вас не желаете ли вы добавить к системе еще пользователей. Выберите "yes" и введите всю необходимую информацию о пользователе. Безопаснее всего оставить все поля по умолчанию, для этого достаточно нажимать "Enter" :

В качестве оболочки вы можете выбрать Bourne shell (sh) или tcsh. Когда завершите, просто наберите "Yes" :

Шаг 17. Завершение установки

На последнем экране перед вами появится простое меню действий. Если вы не хотите ничего менять, просто выберите первый пункт - "Exit" и ответьте "no" , чтобы перезапустить компьютер:




Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: