FreeBSD - что это? Преимущества FreeBSD перед Linux Windows. Версии системы FreeBSD

В данной статье рассмотрим операционную систему – FreeBSD, чем она привлекает пользователей и какие недостатки имеет. Еще в 1993 году началась разработка операционной системы FreeBSD (Berkeley Software Distribution) , в этом же году вышла первая официальная версия. Последний релиз системы появился в августе 2015. Как видим, ОС FreeBSD стабильно развивается и естественно имеет своих поклонников. Давайте разберемся, за что так пользователи любят FreeBSD и какие недостатки имеет данная система.

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

Главные преимущества системы FreeBSD:

  • Стабильность работы. Несколько лет назад компания Netcraft привела к сведенью результаты анализа работы сайтов. Наиболее долгую непрерывную работу (по календарным дням) имели веб-проекты, которые работали под управлением FreeBSD.
  • Бесплатное скачивание ОС. Большинство пользователей всегда делают выбор в пользу бесплатных систем, и не обременяют себя покупкой дорогих лицензий для ОС. Таким образом скачать и установить FreeBSD Вы можете абсолютно бесплатно.
  • Открытый исходный код. Любой желающий может вносить свои правки в код и выполнять желаемые проверки без проблем, правда, есть некие ограничения, но они слишком минимальны.
  • Качественность. Многие популярные на весь мир веб-сервисы используют данную систему, что есть беспорным подтверждением качества работы. За оценками экспертов почти 40% серверов на рынке СНГ работают именно на данной ОС.
  • Надежность. Данный фактор обеспечивается монолитным ядром и законченной логической структурой ОС, которая по сути является целостной.

Структура системы FreeBSD:

  1. Библиотека С используется в качестве системного интерфейса программирования.
  2. Ядро, которое предназначено для планировки всех процессов, управлением памяти, работы с устройствами и тп.
  3. Разнообразные файловые утилиты, компиляторы, оболочки, редакторы связей, и другие программы для конечного пользователя, некоторые из них основываются на коде GNU.
  4. За графический дизайн отвечает встроенная в FreeBSD X Window.
  5. Огромный выбор системных и прикладных программ.

Разработкой FreeBSD занимаются почти 4 тыс. добровольцев , которые и выпускают оновленные версии. Всего релизов насчитывают десять, последний из которых был выпущен 13 августа 2015 года. Но все-таки система не является столь популярной, как к примеру Linux. Давайте разберемся в причинах, почему FreeBSD имеет небольшое количество пользователей. В превую очередь, это “заслуга” разработчиков, которые занимаются шлифовкой кода системы, и очень мало времени уделяют рекламе своего продукта. Кроме того, они мало заботятся о рядовом пользователи и не упрощают процесс настройки и установки ОС, что для многих является ключевым этапом при выборе операционной системы. Ведь настроить Linux намного проще чем FreeBSD .

Недостатки системы FreeBSD .

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

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

К Вашему сведению, ОС FreeBSD (9,10) уже предустановленна на наших ВПС серверах и Вы сможете ощутить все преимущества данной системы, сделав заказ виртуального сервера в компании Hyper Host™ . ?

6485 раз(а) 12 Сегодня просмотрено раз(а)

Обновление (upgrade) сетевого сервера – дело хлопотное. Я могу справиться с персональным компьютером, зачудившим после обновления, но когда от одной системы зависит целая компания или сотни клиентов, даже мысль о том, чтобы ее тронуть, кажется мне кошмаром. Если даже самого опытного системного администратора поставить перед выбором – обновление системы или пытки каленым железом, он сядет и задумается. Несмотря на то что в некоторых версиях UNIX процедуры обновления просты, для их выполнения требуется несколько часов и известная доля удачи.

С другой стороны, процедура обновления – одно из крупнейших преимуществ FreeBSD. Например, у меня есть несколько серверов с установленными разными версиями FreeBSD, на которые было наложено множество заплаток. Очень немногие администраторы Windows обновляют сервер с Windows 2000 до Windows 2003. (Между прочим, они не зря получают зарплату.) Я списываю системы FreeBSD, только если они настолько устарели, что риск аппаратных сбоев лишает меня сна. На одном из моих серверов изначально была установлена FreeBSD 2.2.5. Затем она была успешно обновлена до FreeBSD 3 и, наконец, до Free- BSD 4. К моменту выхода FreeBSD 4.8 жесткий диск повел себя странно, так что новую систему мне пришлось установить на новой машине. Этот компьютер проработал под управлением FreeBSD 5, а затем Free- BSD 6 до самой своей смерти. 1 Только раз я испытал неудобство – при переходе от одной основной версии к другой, то есть от FreeBSD 5 к FreeBSD 6. Это заняло у меня пару часов. И попробуйте сделать то же самое с другими операционными системами.

«В серверной никто не услышит крик блока питания

Версии FreeBSD

Почему обновлять FreeBSD относительно просто? Все дело в методе разработки FreeBSD. Это постоянно развивающаяся операционная система. Если после обеда вы загружаете определенную версию Free- BSD, она немного отличается от утренней версии. Разработчики по всему миру непрерывно вносят изменения и улучшения, поэтому традиционная система нумерации версий, принятая для менее открытого программного обеспечения, здесь неприменима. В любой момент можно получить несколько различных версий FreeBSD: «выпуск» (release), ветку с исправленными ошибками (errata branch), -current, -stable и моментальную копию.

«Выпуск»

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

«Выпуск» FreeBSD имеет стандартный номер версии, подобно любому другому программному обеспечению: 5.5, 6.3, 7.0. «Выпуск» – это просто копия самой стабильной версии FreeBSD на тот или иной момент времени. Три или четыре раза в год группа разработчиков, ответственная за «выпуски» (Release Engineering team), просит разработчиков приостановить внесение существенных изменений и сконцентрироваться на устранении выявленных неполадок. После этого группа Release Engineering отбирает несколько вариантов кода и предлагает их для всеобщего тестирования, а тщательно протестированный программный код получает номер «выпуска». Далее разработчики снова возвращаются к своим обычным проектам. 1

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

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

У каждого «выпуска» имеется собственная ветка с исправленными ошибками. Например, FreeBSD 7.0-errata отличается от FreeBSD 7.1- errata, а переход от одной к другой так же труден, как и от FreeBSD 7.0

Что бы вы ни думали, «недовольные пользователи» – не обычный проект для разработчиков FreeBSD. Это так, приложение.

к FreeBSD 7.1. Изменения в API и ABI настолько велики, что полностью, абсолютно не допускают такой переход. Приложения, работающие в основном «выпуске», точно так же будут работать и в любой версии ветки с исправленными ошибками для этого «выпуска». Для обеспечения максимальной стабильности следует оставаться в ветке с исправленными ошибками, предназначенной для установленной версии FreeBSD.

К моменту написания этих строк проект FreeBSD обеспечивал поддержку веток исправлений до двух лет со дня выхода основного «выпуска», но такое положение вещей может измениться. Загляните на страницу http://www.freebsd.org/security или в почтовую рассылку [email protected] , где можно ознакомиться со списком обновлений и примечаниями, касающимися времени окончания поддержки той или иной версии. Безусловно, обладая доступом к исходному коду, вы можете поддерживать устаревший «выпуск» сколько хотите. Но не ждите, что коллектив разработчиков FreeBSD будет работать на вас до бесконечности!

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

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

Хуже того, настройки по умолчанию в версии -current включают массу отладочного программного кода, предусматривают вывод особых предупреждений и активируют прочие функции, относящиеся к отладке. Все это делает версию -current более медленной, чем любая другая версия FreeBSD. Вы можете отключить механизмы отладки, но в этом случае не получите грамотный отчет об ошибке, когда появится какая-ни- будь проблема. Значит, у вас будут лишние сложности. За дополнительной информацией об отладке в версии -current обращайтесь к файлу / usr/src/UPDATING.

Если вы не можете читать код С и командного интерпретатора, отлаживать ОС, терпеть непредсказуемое поведение функций и ждать, пока кто-нибудь устранит возникшие неполадки, то версия -current не для вас. Храбрецам, желающим испробовать -current, всегда рады. Дорога открыта каждому, кто готов посвятить немало времени изучению и отладке FreeBSD или желает получить урок смирения. Это скорее не наставление «так делать нельзя», а утверждение «все в ваших руках». Никто не запрещает вам работать с версией -current, но рассчитывать придется только на себя. Версия -current – не всегда передовая, но здесь порой небезопасно. В общем, вы предупреждены.

Желающие опробовать -current должны, подписаться на почтовые рассылки [email protected] и [email protected] . Это рассылки с большим трафиком – несколько сотен предупреждений, извещений и комментариев в день. Если вы читаете эту книгу, скорее всего, вам пока рано писать сообщения в эту рассылку – просто читайте и учитесь. Если кто-то вдруг обнаружит, что новейшая заплатка для файловой системы превращает жесткие диски в зомби Ктулху, то информация об этом появится именно здесь.

Замораживание кода -current

Каждые год-полтора для FreeBSD-current проводится месячник замораживания кода (code freeze), когда не допускаются несущественные изменения и устраняются все оставшиеся неполадки. Цель – стабилизировать последнюю версию FreeBSD и ликвидировать шероховатости. По завершении этого процесса (или вскоре после него) -current становится новым «выпуском» .0 системы FreeBSD.

После одного или двух «выпусков» из новой версии -current ответвляется новая, основная версия -stable. Например, в свое время FreeBSD 6.0 была -current, так же как и FreeBSD 7.0.

После появления «выпуска» .0 работа продолжается в двух направлениях: над версиями FreeBSD-current и FreeBSD-stable.

FreeBSD-stable (или просто -stable) – передний край для среднего пользователя. Эта версия содержит последний код, аттестованный экспертами. Версии FreeBSD-stable положено быть устойчивой и надежной; она не должна требовать от пользователя значительного внимания. Как только тот или иной код в -current тщательно протестирован, он может влиться в версию -stable. На версию -stable можно безопасно перейти почти в любое время; это своего рода FreeBSD-beta.

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

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

Время от времени на версию -stable «наводят лоск» и подвергают ее испытаниям; разработчики останавливают перенос изменений из -current в -stable и все внимание обращают на тестирование. Когда каждый разработчик удовлетворится качеством версии, подготавливается новый «выпуск». Например, четвертый «выпуск» FreeBSD 7- это FreeBSD 7.3. FreeBSD 7.3 – это всего лишь веха на пути развития Free- BSD-stable 7.

Пользователям FreeBSD-stable следует подписаться на почтовую рассылку [email protected] . Трафик в этой почтовой рассылке модерируется, большую его часть составляют вопросы и ответы, которые в действительности должны были бы направляться в рассылку -question@, тем не менее в эту рассылку направляются важные

Стабильность версии -stable

Слово stable (стабильная) относится к программному коду, составляющему основу самой операционной системы FreeBSD. Очередная версия -stable гарантирует не устойчивость системы, а только отсутствие существенных изменений в основном программном коде ОС. Прикладной и двоичный программные интерфейсы (API и ABI) наверняка не изменятся. Разработчики прилагают все усилия, чтобы сохранить устойчивость, но от ошибок никто не застрахован. Если вас волнует риск потери устойчивости – переходите на использование ветки с исправленными ошибками (errata).

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

Поглощение из текущей версии

Фраза поглощение из текущей версии (merge from -current, MFC) означает перенос функции или подсистемы из FreeBSD-current во FreeBSD- stable (или, что случается реже, в ветку с исправленными ошибками). Однако такому переносу подвергаются далеко не все новые функциональные возможности, потому что версия FreeBSD-current – это полигон, где обкатываются существенные изменения, многие из которых требуют отладки и тестирования, длящихся месяцами. Такие изменения не переносят в стабильную версию, потому что это плохо повлияет на пользователей версии -stable, в первую очередь ожидающих стабильности. Новые драйверы, исправления ошибок и некоторые улучшения могут быть перенесены, но существенные изменения, которые могут отрицательно сказаться на работе пользовательских приложений, не переносятся.

Моментальные копии

Каждый месяц, или что-то около того, группа разработчиков FreeBSD Release Engineering выпускает моментальные копии (snapshots) версий -current и -stable, выкладывая их на FTP-сайте. Моментальные копии – это просто вешки на пути развития; они не подвергаются какому-то специальному тестированию. Моментальная копия не предполагает такого внимания к качеству, как «выпуск», но может служить хорошей отправной точкой для тех, кто интересуется версиями -current и -stable. Качество моментальных копий почти не контролируется, многие разработчики даже не знают о выходе новой моментальной копии, пока не увидят ее на FTP-сервере. Вам могут встретиться баги. Вам могут встретиться ошибки. Испытания, через которые вы пройдете, заставят вашу мать поседеть, если, конечно, вы сами еще не довели бедняжку до этого.

FreeBSD и тестирование

Каждая версия и «выпуск» FreeBSD подвергается различным испытаниям. Отдельные разработчики проверяют качество своей работы на собственном аппаратном обеспечении и просят друг друга перепроверить их работу. Если продукт достаточно сложный, они могут использовать личное хранилище исходного кода, чтобы организовать доступ сообщества к своей работе, прежде чем отправить ее в -current. Компания Coverity пожертвовала группе разработчиков FreeBSD аналитическое программное обеспечение для постоянного автоматического тестирования и отладки, чтобы отыскивать ошибки еще до того, как они попадут к пользователям. Такие корпорации, как Yahoo!, Sentex и iX

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

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

Наиболее существенная помощь поступает от пользователей, имеющих реальное оборудование и испытательные полигоны, подвергающиеся настоящим рабочим нагрузкам. К сожалению, большинство из этих пользователей выполняют тестирование, только когда вставляют компакт-диск с дистрибутивом в компьютер, устанавливают и запускают систему. В этот момент уже поздно пытаться принести какую-ли- бо пользу выпуску. Любые сообщения об ошибках, обнаруженных пользователями, могут помочь в подготовке следующего выпуска, но в то же время обновление до ветки с исправленными ошибками для этого выпуска может ликвидировать вашу проблему. Решение вполне очевидно – тестировать FreeBSD в реальных условиях необходимо до выхода выпуска. Предложения на тестирование новых выпусков -stable появляются в почтовой рассылке [email protected] . Тестируя версии -stable и -current, вы сможете получить большую отдачу от FreeBSD.

Какую версию следует использовать?

Current, -stable, -errata, моментальные копии – от разнообразия голова кругом. Такая система может показаться сложной, но она оправдывает себя и обеспечивает необходимый уровень качества. Пользователь может быть уверен, что ветка с исправленными ошибками будет настолько стабильна, насколько это вообще возможно, и прошла экспертную оценку и всестороннее тестирование. Тот же самый пользователь знает, что в новых версиях -stable и -current ему будут доступны новые привлекательные возможности, если он готов пойти на риск, который несет в себе каждая новая версия. Так какую же версию предпочесть? Ниже приводятся мои рекомендации на этот счет:

Предприятие

Если ваша система обеспечивает работу предприятия, устанавливайте версию -stable и следите за выходом исправлений.

Администраторам, желающим узнать, как изменения в FreeBSD влияют на операционную среду, следует применять -stable на испытательной системе.

Разработка

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

Хобби

Если вы увлекающийся человек, запускайте любую версию! Просто помните об ограничениях того варианта, который вы выбрали. Новичкам в UNIX лучше выбрать -release. Как только почувствуете себя увереннее, обновите систему до -stable. Если у вас нет занятия получше и вам наплевать на свои данные – добро пожаловать в ряды мазохистов, выбравших -current!

Методы обновления

Система FreeBSD предоставляет три основных метода обновления: с помощью программы sysinstall, двоичных обновлений и исходного кода.

Поддержка двоичного обновления осуществляется через службу Free- BSD Update. Она чем-то напоминает службы обновления Windows, Firefox и других коммерческих программных продуктов. С помощью службы обновления FreeBSD Update можно обновить систему до ветки с исправленными ошибками.

sysinstall – это программа установки FreeBSD. Она позволяет обновить систему до того или иного выпуска, в составе которого распространяется. Например, программа установки из FreeBSD 7.5 предназначена для обновления до версии FreeBSD 7.5. Программа sysinstall служит для обновления от одного «выпуска» или моментальной копии до другого.

Защитите свои данные!

Глава 4 называется «Прочтите это раньше, чем что-нибудь испортите!» по вполне серьезным причинам. Обновление системы может привести к уничтожению данных. Создавайте резервную копию системы перед выполнением любого обновления! Я обновляю свой ноутбук каждую неделю, просто из интереса (см. выше замечание о круглом дураке и версии -current). Но прежде, чем обновить систему, я копирую все необходимые данные на другую машину. Копируйте данные на ленту, в файлы, куда угодно, но не выполняйте обновление, если у вас нет свежей резервной копии.

Метод, основанный на применении исходного кода, позволяет собирать программы, составляющие операционную систему FreeBSD, и устанавливать их на жесткий диск. Например, при наличии исходного кода для FreeBSD 7.5 можно обновить операционную систему до этой версии. Этот метод требует больше усилий, но обеспечивает гораздо более высокую гибкость. Этот метод применяется при работе с версией -stable или -current.

С момента выпуска стабильной версии FreeBSD 9.0 прошло меньше двух лет, а команда разработчиков уже готова представить следующий релиз своей ОС под красивым номером 10. Новая FreeBSD теперь компилируется с помощью Clang, поставляется в комплекте с DNS-сервером Unbound, имеет собственный гипервизор, аналогичный KVM, умеет работать со сжатыми томами ZFS и включает в себя еще несколько десятков интересных изменений.

Clang вместо GCC

Летом 2007 года фонд свободного ПО опубликовал окончательную редакцию лицензии GPLv3, на которую в скором времени должны были перейти все крупнейшие свободные проекты, координируемые фондом. Сообщество FreeBSD изначально не приняло эту лицензию, поскольку она еще более ограничивала реальную свободу ПО, чем GPLv2, а впоследствии отказалось от включения любого GPLv3-софта в базовую поставку ОС, как противоречащего лицензии BSD.

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

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

Неспешно, но безостановочно Clang доводился до состояния полноценного компилятора, и к началу 2009 года всю FreeBSD, включая ядро и пользовательские утилиты, уже можно было скомпилировать без помощи GCC. В середине 2010 года Clang становится частью FreeBSD, но пока только в качестве альтернативы GCC. В 2012 году переход на Clang завершается, и он становится компилятором по умолчанию.

Для рядового пользователя такой переход, конечно, пройдет практически незамеченным: make buildworld будет работать так, как и раньше, порты будут собираться без всяких проблем, и даже такие команды, как gcc helloworld.c , будут работать без вопросов благодаря симлинкам. Зато настоящую выгоду это принесет разработчикам, многие из которых и раньше использовали Clang для прогона кода на предмет наличия ошибок (о которых Clang информирует гораздо подробнее GCC), но теперь этот инструмент будет использоваться по умолчанию.

Отключить Clang и перейти на GCC 4.2.1, который еще остается в комплекте FreeBSD, можно, добавив опции WITHGCC и WITH GNUCXX в файл /etc/src.conf .

BHyVe или KVM под лицензией BSD

Благодаря следованию идее тотальной свободы, гарантированной лицензией BSD и сведенной в одну знаменитую цитату «Делайте с кодом что хотите, но только не говорите, что он написан вами», фонд FreeBSD за время своего существования успел обзавестись многими покровителями. В их числе такие мастодонты, как Apple, NetApp и Juniper Networks, которые регулярно открывают код своих наработок на базе FreeBSD и смежных технологий (Clang, например, детище Apple). Очередной такой наработкой стал гипервизор BHyVe, созданный NetApp для использования в своем оборудовании. Его код был открыт в 2011 году и практически сразу включен в состав FreeBSD.

Bsdconfig

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

Новый конфигуратор, как и установщик, написан на шелл, обладает модульной структурой и может быть использован обособленно или в составе другого приложения (в данном случае bsdinstall). Уже сейчас bsconfig позволяет настраивать следующие сущности:

  • управлять настройками /etc/rc.conf (используется утилита sysrc);
  • создавать аккаунты и группы пользователей в системе и управлять ими;
  • конфигурировать часовые пояса (используется tzdialog);
  • конфигурировать сетевые интерфейсы, указывать параметры хоста, используемые DNS-серверы и шлюзы по умолчанию;
  • создавать и редактировать дисковые разделы;
  • настраивать консоль (шрифты, кодировки, локаль, хранитель экрана и прочее);
  • управлять запуском сервисов.

Другое

Из менее заметных, но значимых изменений можно назвать замену DNS-сервера BIND и сопутствующих утилит на кеширующий рекурсивный сервер Unbound и утилиты из комплекта LDNS. О полноценной замене здесь, конечно, речи не идет, а всего лишь выполняется требование иметь в базовой поставке ОС кеширующий DNS-сервер и валидатор DNSSEC. BIND, используемый для этой цели десятилетиями, успел превратиться в дырявого неповоротливого монстра, который уже просто неприлично включать в базовый комплект (BIND 10 требует, например, SQLite 3 и Python 3), а вот компактный и производительный Unbound выполняет эту работу на отлично. Те же, кому нужен полноценный DNS-сервер, могут установить BIND 10 из портов.

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

Во FreeBSD 10 будут включены новые инструменты установки и управления пакетами, названные pkgng. В отличие от устаревших утилит pkg_*, которые были всего лишь инструментом для выкачивания пакетов с FTP-сервера и разворачивания их в систему, pkgng представляет собой полноценный современный менеджер пакетов в стиле apt-get. Он работает с сетевыми репозиториями, учитывает зависимости и умеет правильно обновлять пакеты, а также удалять установленные как зависимости пакеты при удалении приложения. Со стороны пользователя работа с новым менеджером пакетов будет выглядеть примерно так:

# pkg update # pkg install gimp # pkg search firefox

INFO

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

Кроме правильно лицензированного компилятора, в FreeBSD также появились собственные версии утилит sort и patch.

В FreeBSD 10.0 реализована поддержка USB Audio 2.0.



Вариантные символические ссылки

Из DragonFlyBSD во FreeBSD наконец портировали реализацию вариантных символических ссылок (varsym). По своей сути varsym - это та же символическая ссылка, в путях которой могут использоваться переменные, при изменении их значений автоматически меняется и сам путь. Основное преимущество таких ссылок в возможности их изменения пачками с помощью одной команды.


Переключение видеорежимов на уровне ядра

При подготовке FreeBSD 10 была проведена работа по интеграции KMS (переключение видеорежимов на уровне ядра) в драйверы для карт AMD, в дополнение к поддержке KVM в драйверах для Intel GPU, появившейся в 9.1. На данный момент технология KMS не имеет практически никакого значения для FreeBSD, однако она является одним из кирпичиков, используемых для построения графических систем будущего. Тот же Wayland, например, для своей работы требует поддержку KMS в ядре.

Выводы

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

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

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

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

Имеет ли значение версия? Здесь нужно определиться с железом, чтобы была совместимость, а так же возможностями, которые могут вам быть вовсе и не нужны. По этим причинам тотальный выбор последних версий не обязателен. Про поддержку для версий 8.x и 9.x можно получить информацию по адресу:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/faq/hardware.html

На сегодняшний день на официальном ftp-сервере размещены первые образы дисков 10 версии. Однако мы же сделаем выбор на версиях 9.x.

Получить образ диска FreeBSD может каждый желающий, находятся они на публичном ftp-сервере, откуда их можно и скачать:
ftp://ftp.freebsd.org/pub/FreeBSD/releases

Выбираем нужную версию, отрываем содержимое поддиректории.

Я выбрал директорию версии 9.2, здесь мы видим образы дисков, которые можно скачать к себе на компьютер, после чего записать образ на диск, с помощью какой либо программы для “прожига” дисков, к примеру «Nero». Если у вас Windows 8, можно воспользоваться стандартной утилитой для записи образов на диск, которая есть в системе, это не так критично.

Образы дисков различаются по размерам, один может поместиться на DVD диск, другой на CD. Рекомендую сделать свой выбор на DVD образе диска (в моем случае это «FreeBSD-9.2-RELEASE-i386-dvd1.iso »), т.к. программные пакеты вы сможете ставить именно с него. При установке с CD диска («FreeBSD-9.2-RELEASE-i386-disc1.iso ») так или иначе необходимые программы придется тянуть из Интернета, либо из других источников, что в некоторых случаях не очень удобно.

Образ диска с именем «FreeBSD-9.2-RELEASE-i386-bootonly.iso » предоставляет возможность начать процесс установки, загрузившись в приводе CD-ROM. Однако, в нём отсутствуют архивы, необходимые для установки с этого же диска. Таким образом, установка будет возможна только из других источников.

Так же, в директории релиза может находиться образ диска с именем «FreeBSD-9.2-RELEASE-i386-memstick.img », он предназначен для создания загрузочных USB-носителей. Использоваться может на машинах, которые поддерживают загрузку с USB-дисков. Как правило, используется в случаях необходимости аварийного восстановления системы («содержит livefs»).

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

CURRENT – это текущая ветка, над которой в данный момент времени работают разработчики FreeBSD. В ветви CURRENT размещены все необходимые изменения, и после того как разработчики сделают вывод что все основные недоработки данной версии исправлены, выпускается стабильная версия – STABLE.

STABLE – в данной ветви содержится всё то что успешно прошло проверку в ветви CURRENT, если какие либо компоненты системы были признанны нестабильными, из данной ветви они исключаются. Как правило, тестирование ветви STABLE производят независимые пользователи, release – инженеры, а так же сами разработчики.

RELEASE – эта ветвь образуется после тщательного тестирования ветви STABLE. Стоит заметить, что могут возникать моменты, когда STABLE и RELEASE ветви могут быть абсолютно идентичными.

На этом моменте пока всё.