FreeBSD в деталях. О плюсах и минусах системы. Обновление FreeBSD

Обновление (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 10.3 доступна в Azure

Корпорация Microsoft уже давно и плотно работает со свободным программным обеспечением, в частности, с различными дистрибутивами Linux. Сейчас компания создала кастомную версию FreeBSD, добавив эту ОС в Azure Marketplace. Компания заявила, что занялась тестированием, релизом и обслуживанием образа ОС для того, чтобы клиенты получили возможность работать с FreeBSD в Azure. Microsoft Azure реализует две облачные модели - платформы как сервиса (PaaS) и инфраструктуры как сервиса (IaaS). Работоспособность платформы Windows Azure обеспечивает сеть глобальных дата-центров Microsoft.

Компания не планирует работать над своей версией FreeBSD в одиночку. Согласно заявлению Microsoft «большинство дополнений, которые мы внесли в ядро FreeBSD 10.3, касаются производительности сети и хранения данных… любой пользователь, загрузивший FreeBSD 10.3 с ресурса FreeBSD Foundation, получит эти изменения, добавленные в ОС». Компания кастомные образы всех последующих версий FreeBSD, выпущенных FreeBSD Foundation. Последующие изменения ядра будут также иметь отношение к хранению данных, плюс компания продолжает добавлять новые возможности Hyper-V для своей версии ОС.

Hyper-V - это система аппаратной виртуализации для x64-систем на основе гипервизора. Бета-версия Hyper-V была включена в x64-версии Windows Server 2008, а финальная версия (автоматически, через Windows Update) была выпущена 26 июня 2008.

Зачем вообще корпорация занялась FreeBSD? По словам одного из разработчиков, многие сконфигурированные шаблоны виртуальных машин (Virtual Appliances) основаны как раз на операционной системе FreeBSD. Среди поставщиков Virtual Appliances - такие компании, как Citrix Systems, Array Networks, Stormshield, Gemalto и Netgate. Благодаря сотрудничеству с этими компаниями и удалось создать собственную версию образа этой ОС. С релизом образа работа компании с партнерами не прекращается, с течением времени будут добавлены новые возможности и функции. Эта работа заняла у компании целых два года.

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

Сама ОС FreeBSD разрабатывается как целостная операционная система. Исходный код ядра, драйверов устройств и базовых пользовательских программ (т. н. userland), таких как командные оболочки и т. п., содержится в одном дереве системы управления версиями. ОС используется, в основном, для построения интранет и интернет-сетей, а также для серверов. Система считается надежной, в ней реализовано эффективное управление памятью, а также поставляются надежные сетевые службы. Благодаря особенностям лицензии системы ее код можно использовать не только в open-source программных продуктах, но и в проприетарных проектах, чем и воспользовалась Microsoft.

Основатель и вице-президент организации FreeBSD Foundation Джастин Гиббс (Justin T. Gibbs) прокомментировал ситуацию следующим образом: «Размещение поддерживаемого образа FreeBSD в Azure Marketplace - значительное достижение как для сообщества FreeBSD, так и для Microsoft. Мы благодарны корпорации за ее вклад в проект FreeBSD».

Корпорация также не забывает и о прежних версиях ОС. Сообщается, что несмотря на то, что компания работает с FreeBSD 10.3, она предоставляет некоторые драйверы для ОС версий вплоть до 8.4. Благодаря этому у пользователей Azure есть возможность загрузить собственный образ FreeBSD VM с ОС более старой версии, с предоставляемыми компанией портами и установленным Azure VM Agent. Правда, производительность и возможности такого рода дистрибутивов могут различаться. К примеру, скорость передачи данных для FreeBSD 10.1 в сети с пропускной способностью 10 Гбит/с составила 2 Гбит/с. А вот у версии 10.3 этот показатель составил уже 9 Гбит/с. Список поддерживаемых Hyper-V версий FreeBSD можно .

О том, что компания собирается создать собственный дистрибутив Linux для использования в дата-центра Azure Microsoft рассказала еще в сентябре прошлого года. В частности, что Microsoft хочет построить программно-конфигурируемую сеть, поскольку адаптировать «зоопарк» оборудования разных производителей с различными операционками сложно.

В марте этого года Microsoft совместно с Canonical сумели интегрировать операционную систему Ubuntu внутрь Windows 10. И это не виртуальная машина, а похожая на эмулятор система, где системные вызовы Linux в реальном времени транслируются в системные вызовы Windows. После проверки у ряда пользователей запустить кое-какие десктопные Linux приложения. Официально заявляется, что такой возможности нет, но пользователь Reddit с ником w2qw нашел способ запуска «иксов» в Windows 10, что открывает возможность установки и работы с VIM и Firefox.

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

В соответствии с данными, полученными от IOSC, в 1999 году практически треть всех машин, которые были подключены к интернету, работали на основе Linux, в то время как практически 15% применяли операционную систему FreeBSD. Что это за система, и по сегодняшний день знают лишь немногие современные пользователи ПК, несмотря на все ее преимущества и широкое распространение в свое время. Стоит отметить тот факт, что многие мировые лидеры в сфере Web-услуг активно работают на данной системе. В частности, стоит отметить, что на сегодняшний день система Yahoo основана на FreeBSD. Что это дает пользователям, сами они вряд ли знают и даже задумываются, но владельцы системы уверены, что это правильное решение.

Что представляет собой BSD?

BSD расшифровывается как Berkeley Software Distribution. Именно так в своем время называлось программное обеспечение, которое в Беркли распространял в исходных кодах. При этом стоит отметить тот факт, что изначально дополнение к стандартной операционной системе UNIX - это единственное, что представляло собой FreeBSD. Что это было по сравнению с нынешней версией системы?

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

Структура

Преимущества и особенности, которые имеет данная система, отличаются структурой FreeBSD. Что это за структура:

  • Ядро, которое предназначается для тщательной планировки всех процессов, управления памяти, работы с различными устройствами, а также поддержки многопроцессорных систем. При этом следует отметить тот факт, что, в отличие от ОС Linux, в данном случае есть несколько типов ядер BSD, которые отличаются разными особенностями.
  • Библиотека С, которая используется в качестве основного системного интерфейса программирования, причем основывается на коде из Беркли, а не из проекта GNI.
  • Всевозможные файловые утилиты, компиляторы, оболочки, редакторы связей, а также другие программы конечного пользователя, при этом некоторые из них основываются на коде GNU.
  • FreeBSD UNIX - операционная система, включающая в себя X Window, которая отвечает непосредственно за Данная система применяется в преимущественном большинстве версий BSD и официально поддерживается проектом X.Org. Данная система позволяет пользователю делать выбор из нескольких графических оболочек, а также целого ряда легких оконных менеджеров.
  • Большое количество других системных и прикладных программ.

Что такое настоящий UNIX?

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

BSD - это UNIX?

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

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

В течение 80-х годов сформировалось несколько компаний, занимающихся производством рабочих станций, при этом стоит отметить, что многие из них приобретали лицензии на использование UNIX вместо того, чтобы пробовать разрабатывать с нуля собственное программное обеспечение. В частности, стоит выделить компанию Sun, которая поступила таким образом и решила на основе версии 4.2BSD в конечном итоге выпустить собственную операционку, которая называлась SunOSTM. Когда же компания AT&T, занимающаяся разработкой UNIX, в конечном итоге решила заняться коммерческой продаже собственной операционной системы, появилась довольно аскетичная реализация - System III, за которой с течением времени последовал также выход системы System V.

По какой причине эта операционная система остается невостребованной?

Есть некоторый ряд причин, по которым сегодня FreeBSD 10 пользуется не таким широким спросом:

  • Разработчики чаще всего интересуются качеством собственного кода, причем больше его шлифовкой, а не рекламой.
  • По большому счету, популярность Linux является следствием целого ряда внешних факторов относительно данного проекта, в частности, это касается средств массовой информации, а также компаний, которые решили сформировать собственный бизнес, предоставляя услуги пользователям этой операционной системы.
  • Разработчики BSD в преимущественном своем большинстве являются более опытными по сравнению с разработчиками Linux, в связи с чем они гораздо меньше внимания уделяют тому, чтобы облегчить жизнь простым пользователям. Другими словами, настройка FreeBSD для обычного пользователя является более сложной, чем
  • В 1992 году разработчик UNIX решил подать в суд на компанию BSDI, которая занималась поставкой операционной системы BSD/386. Основной пункт обвинения в данном случае был тем, что в ОС содержался закрытый код, принадлежавший истцу, и вроде бы дело в конечном итоге было улажено за пределами суда в 1994-м, но целый комплекс вторичных тяжб даже в наши дни отравляет жизнь многим людям.
  • Есть мнение, что сами по себе проекты BSD различаются и при этом могут даже конфликтовать между собой. Данное мнение основывается на событиях, которые происходили достаточно давно.

Что лучше - Linux или BSD?

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

Кому принадлежит BSD?

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

Что все-таки выбрать?

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

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

Обеспечивает техническую поддержку, а также обслуживает FreeBSD - порты и системы - компания FreeBSD Mall, Inc.

Устройств и базовых пользовательских программ (т. н. userland) , таких как командные оболочки и т. п., содержится в одном дереве системы управления версиями (до 31 мая 2008 - CVS , сейчас - SVN). Это отличает FreeBSD от GNU/Linux - другой свободной UNIX-подобной операционной системы - в которой ядро разрабатывается одной группой разработчиков, а набор пользовательских программ - другими (например, проект GNU), а многочисленные группы собирают это всё в единое целое и выпускают в виде различных дистрибутивов Linux .

FreeBSD хорошо зарекомендовала себя как система для построения интранет - и интернет-серверов . Она предоставляет достаточно надёжные сетевые службы и эффективное управление памятью .

Помимо своей стабильности, FreeBSD популярна и благодаря своей лицензии , которая существенно отличается от широко известной лицензии GNU GPL - она позволяет использовать код не только в свободном ПО , но и в проприетарном . В отличие от GNU LGPL , которая тоже позволяет использовать свободный код в закрытой программе , лицензия BSD более простая и короткая.

История

FreeBSD 3

3.0-RELEASE анонсирована 13 октября 1998 года. Основное отличие от 2.2 - переход на ELF исполняемые файлы. Последний 3.5-RELEASE вышел 23 июня 2000 года.

FreeBSD 4

Одним из главных недостатков FreeBSD 4 считается плохая поддержка многопроцессорных систем, особенно в режиме многопоточности .

FreeBSD 4 поставила своеобразный рекорд по продолжительности разработки одной ветки операционной системы - за пять лет было устранено большое количество ошибок и получена на редкость стабильная система.

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

FreeBSD 5

Наибольшие архитектурные изменения в FreeBSD 5 - это изменение механизма блокировки на нижнем уровне ядра, чтобы улучшить поддержку многопроцессорных SMP -систем. Это освободило большую часть ядра от так называемой «гигантской блокировки» (Giant lock). Теперь в ядре появилась возможность выполнять более одной задачи одновременно. Другим важным изменением была реализация «родной» поддержки многопоточности типа M:N под названием Kernel Scheduled Entities (KSE). Начиная с FreeBSD 5.3, эта реализация потоков была установлена по умолчанию, пока не была заменена на реализацию модели 1:1 во FreeBSD 7.

Во FreeBSD 5 была серьёзно изменена система блочного ввода-вывода посредством введения модульной структурной системы преобразования запросов ввода-вывода GEOM (внесённой Poul-Henning Kamp). GEOM даёт возможность создавать различную функциональность, такую как зеркалирование (mirroring) или шифрование (модули GBDE и GELI).

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

FreeBSD 6

Участники проекта разрабатывают ветку CURRENT («текущая» версия) и несколько STABLE («стабильная», стабильность означает гарантию неизменности интерфейсов, как то API, ABI и так далее).

Новый код помещают в ветку CURRENT, где он получает более широкое тестирование. Новые функции, добавленные в CURRENT, могут остаться в системе или от них могут отказаться, если реализация окажется неудачной. Иногда эта версия может оказаться в непригодном для использования состоянии. С началом использования perforce как вспомогательного репозитория, и с выделением projects/ области в svn, проект стремится гарантировать постоянную работоспособность CURRENT.

STABLE-версия содержит только те нововведения, которые прошли проверку в CURRENT. Тем не менее, эта версия тоже предназначена, в основном, для разработчиков. Не рекомендуется обновлять ответственные рабочие серверы до STABLE, предварительно её не протестировав. На основе STABLE регулярно создаются тщательно протестированные разработчиками, группой release-инженеров и более широким кругом пользователей RELEASE-версии.

После выпуска релизов создаются дополнительные ветви разработки для поддержки релизов, но в них вносятся лишь самые необходимые изменения, исправляющие серьёзные ошибки или проблемы с безопасностью системы. До четвёртой версии FreeBSD у стабильной и текущей веток был один и тот же старший номер версии. Затем текущей ветви был присвоен номер 5, а у стабильной остался номер 4.

В настоящее время поддерживаются стабильные ветви разработки 7-STABLE, 8-STABLE и 9-STABLE и текущая 10-CURRENT. Группа разработчиков, исправляющих проблемы безопасности системы (security officers) поддерживает ветвь 7-STABLE для тех пользователей, которые ещё не обновили FreeBSD до версии 8 и 9.

Варианты установки

Операционная система FreeBSD может быть установлена с различных носителей, таких как:

  • FAT -раздел жёсткого диска;
  • удалённый сервер (по протоколу FTP или NFS).

Порты и пакеты

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

Коллекция портов, как подсистема система сборки и сопровождения устанавливаемых программ, периодически обновляется. Сейчас она насчитывает порядка 22 тысячи портированных на FreeBSD программ , среди которых: графические среды GNOME 2.32.1, KDE 4 4.7.4, офисные приложения и пакеты OpenOffice.org 3.3.2, LibreOffice 3.4.5, система поддержки печати CUPS 1.5.2, программы доступа в интернет Mozilla Firefox 10.0.2 и Thunderbird 10.0.2, Google Chromium 17.0.963.65, системы управления базами данных PostgreSQL 8.2.23, 8.3.18, 8.4.11, 9.0.7 и 9.1.3, MySQL 4.1.25, 5.0.95, 5.1.61 и 5.5.21, комплекты Java-разработки OpenJDK 6 b24 и OpenJDK7 7.2.13, среды разработки Eclipse 3.6.2 c дополнениями для Web-разработки и баз данных и NetBeans 7.1. Инфраструктура интерпретирующих языков представлена Perl 5.12.4 c возможностью перехода на Perl 5.14.2, Python 2.7.2 и Ruby 1.8.7 и 1.9.3.

Талисманы-логотипы

Основным талисманом системы является красный демонёнок, известный также как Beastie . Кроме него, талисманом также считается Devilette , девушка в красном костюме демона.

Производные системы

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

  • DragonFly BSD - ответвление от FreeBSD 4.8, созданное как логическое продолжение 4-й ветви. Она включает систему потоковой обработки сообщений, похожую на ту, которая используется в системах с микроядром .
  • FreeSBIE - LiveCD -дистрибутив FreeBSD, похожий на дистрибутив Linux под названием Knoppix .
  • Frenzy - другой проект по созданию LiveCD на основе FreeBSD, ориентированный в первую очередь на русскоязычных системных администраторов .
  • TrueBSD - белорусский LiveDVD-дистрибутив на основе FreeBSD.
  • BSDeviant - ещё один LiveCD.
  • MiniBSD - компактный дистрибутив FreeBSD.
  • NanoBSD - ещё один компактный дистрибутив FreeBSD.
  • mfsBSD - миниатюрный загрузочный LiveCD на базе FreeBSD, загружаемой полностью в оперативную память компьютера.
  • Debian GNU/kFreeBSD - производная версия, базирующаяся на наборе инструментов GNU , разрабатывается группой пользователей Debian .
  • Darwin - ядро Mac OS X , многие команды взяты от FreeBSD 4/5, разрабатывается компанией Apple , весьма дальний родственник FreeBSD, так как использует ядро Mach .
  • m0n0wall - встраиваемый межсетевой экран , основанный на FreeBSD.
  • pfSense - ответвление от проекта m0n0wall, отличающееся большей функциональностью.
  • FreeNAS - основанное на m0n0wall сетевое хранилище NAS .
  • PC-BSD - дистрибутив с графическим инсталлятором и настольной средой KDE по умолчанию.
  • РУС-BSD - клон PC-BSD, русифицированный дистрибутив для пользователей стран СНГ, с версии 8.1 РУС-BSD опирается на Frenzy и свои разработки.
  • GhostBSD - LiveCD с настольной средой GNOME по умолчанию.
  • DesktopBSD - ещё один дистрибутив для домашнего использования.
  • BSD Router Project (BSDRP) - компактный программный роутер на базе FreeBSD.

Пасхальные яйца

См. также

  • Как пропатчить KDE2 под FreeBSD?

Литература

Книги

  • Christopher Negus, Francois Caen, BSD UNIX Toolbox: 1000+ Commands for FreeBSD, OpenBSD and NetBSD, Wiley, May 5 2008, 309 стр., ISBN 0-470-37603-1 .
  • Babak Farrokhi , Network Administration with FreeBSD 7: Building, securing, and maintaining networks with the FreeBSD operating system, Packt Publishing, April 14 2008, 280 стр., ISBN 1-84719-264-5 .
  • Bryan J. Hong, Building a Server with FreeBSD 7, No Starch Press, April 1 2008, 288 стр., ISBN 5-8459-0741-1 .
  • Joseph Kong, Designing BSD Rootkits: An Introduction to Kernel Hacking, No Starch Press, April 10 2007, 144 стр., ISBN 1-59327-142-5 .
  • Брайан Таймэн. FreeBSD 6. Полное руководство = FreeBSD 6 Unleashed. - М .: «Вильямс», 2007. - 1056 с. - ISBN 5-8459-0741-1
  • Harald Zisler, FreeBSD, Franzis Verlag GmbH, August 31 2006, 381 стр., ISBN 3-7723-6538-8
  • Родерик Смит. Полный справочник по FreeBSD = FreeBSD: The Complete Reference. - М .: «Вильямс», 2005. - 672 с. - ISBN 5-8459-0576-1
  • Yanek Korff, Paco Hope, Bruce Potter., Mastering FreeBSD and OpenBSD Security , O’Reilly, March 2005. ISBN 0-596-00626-8 .
  • Майкл Лукас. = Absolute BSD. The Ultimate Guide to FreeBSD. - СПб. : Символ-Плюс, 2004. - 616 с. - ISBN 5-93286-066-9
  • Dru Lavigne. BSD Hacks, 100 Industrial-Strength tips for BSD users and administrators. O’Reilly, May 2004. ISBN 0-596-00679-9 .
  • Michael Urban, Brian Tiemann. FreeBSD Unleashed, Second Edition. Sams Publishing , April 2003. ISBN 0-672-32456-3 .
  • Greg Lehey. The Complete FreeBSD, 4th Edition, Documentation from the Source. O’Reilly, April 2003. ISBN 0-596-00516-4 .
  • Marshall Kirk McKusick, George V. Neville-Neil. The Design and Implementation of the FreeBSD Operating System . Addison Wesley Professional, August, 2004. ISBN 0-201-70245-2 .
  • Ted Mittelstaedt. The FreeBSD Corporate Networkers Guide. Addison-Wesley, December 2000. Paperback, book & CD edition, 401 pages. ISBN 0-201-70481-1 .
  • The FreeBSD Handbook, Volume 1: User Guide, 3rd Edition. FreeBSD Documentation Project. FreeBSD Mall, November 2003. ISBN 1-57176-327-9 .
  • The FreeBSD Handbook, Volume 2: Admin Guide, 3rd Edition. FreeBSD Documentation Project. FreeBSD Mall, September 2004. ISBN 1-57176-328-7 .

Журналы

Ссылки

Примечания

  • Системное администрирование ,
  • Хостинг
    • Перевод

    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. И вызвано это не только чувством альтруизма, ведь поддержка любого проекта, который быстро развивается, очень дорогое удовольствие.



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

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

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