Що добре в BSD?


35

Я використовував Ubuntu і вимикався з Warty Warthog. Я думав про те, щоб незабаром встановити Jaunty; але я помітив, що за вихідні NetBSD 5.0 , Dragonfly BSD 2.2.1 , OpenBSD 4.5 та FreeBSD 7.2 були випущені, тому мені стало цікаво:

Що добре в BSD? Чому я повинен або не повинен встановлювати один з них замість Ubuntu? Які їх основні точки продажу? Продуктивність? Стабільність? Сумісність обладнання? Простота використання? Безпека? Вони добре працюють на старій апараті? Що це?

Редагувати: Це з точки зору (в першу чергу Java) розробника робочого столу, але мені було б цікаво дізнатися, які плюси і мінуси мають і інші. Вони більше орієнтовані на сервери? Для корпоративних користувачів? Або те, що?


1
Чи є хороші моменти BSD суб'єктивними? Якщо так, це пояснює, чому я особисто не знаю нікого, хто його пробував. : D
mmyers

17
Що добре в BSD? Щоб розгромити своїх ворогів, побачте, як вони загнані перед вами, і почуйте плач їхніх жінок.
хаос

1
@mmyers - хтось із ваших друзів коли-небудь використовував Hotmail чи Yahoo?
ConcernedOfTunbridgeWells

Гм, кілька. Чому?
mmyers

1
@mmeyers - тому що і Hotmail, і Yahoo використовують FreeBSD в якості основного сервера O / S для своїх веб-додатків. (Або принаймні Hotmail використовував його, і вони не могли перенести його з FreeBSD у Windows протягом багатьох років - я не впевнений, чи все ще роблять)
ЗанепокоєнийOfTunbridgeWells

Відповіді:


65

Переваги BSD

Сімейство * BSD систем (IMHO) має кілька ключових переваг перед Linux, особливо для сервера O / S.

  • Простота та контроль: Жоден з * BSD-дистрибутивів не має обов'язкового додавання функцій, які демонструють дистрибутори Linux. Таким чином, встановлення за замовчуванням більшості похідних BSD систем відносно просте.

  • Стабільність: Частково керована простотою, BSD, як правило, є одними з найбільш стабільних O / S платформ навколо. FreeBSD (який є одним із найстаріших із "сучасних" BSD) використовує багато відомих .coms, таких як Yahoo і (в один момент) Hotmail. Насправді, в один момент Microsoft зазнала досить великої стурбованості через неможливість переходу Hotmail з FreeBSD на Windows.

  • Безпека: Зокрема, OpenBSD має дуже високий досвід безпеки, і значна частина їх роботи працює на * BSD-спільноті взагалі.

  • Переносимість: NetBSD, зокрема, має порти на десятках платформ і відрізняється тим, що він дуже простий у портуванні.

Деякі слабкі місця

  • Менша підтримка великих конфігурацій SMP, ніж Linux. Це стане більшою проблемою, оскільки ящики з великою кількістю ядер набувають широкого поширення. Однак більшість застосунків для мережевих служб, які справді є домашньою ділянкою BSD, - це не все, що голодує процесором (1).

    Продуктивність SMP на ядрах BSD значно покращилася за останнє десятиліття. Поліпшення продуктивності SMP було однією з головних цілей Dragonfly BSD, а проект FreeBSD SMPNg значно покращив продуктивність SMP на цій платформі, перевершивши Linux на 8-ядерних платформах. Це означає, що можна очікувати на отримання хорошої продуктивності на серверах mainstream 2 та 4 socket.

    Деякі дебатиі рання робота з надання підтримки NUMA на FreeBSD існує, оскільки система в даний час не підтримує API для розподілу пам'яті, управління афінністю або інші засоби для явної підтримки NUMA. Хороший праймер на підтримку NUMA можна знайти тут .

  • Менший спектр апаратної підтримки, ніж Linux: На практиці це насправді означає лише, що вам потрібно перевірити компоненти в списку сумісності обладнання. Для сервера це проблема не в більшості випадків, але встановлення на випадковий настільний ПК це трохи ширше. Вам все одно доведеться перевіряти компоненти за компонентами, чи хочете ви, щоб машина встановила BSD, що рідше стосується Linux.

  • Менший акцент на робочому столі: Настільні дистрибутиви Linux (наприклад, Ubuntu), як правило, мають більш багату підтримку настільних ПК для мультимедіа, емуляції та пакетних програм. Хоча у багатьох подібних додатках є порти на різних платформах BSD, звичайна підтримка з настільного дистрибутива Linux, як правило, буде набагато кращою.

  • Деякі прогалини в програмному забезпеченні: Досить багато комерційного програмного забезпечення Linux не має порту BSD. Наприклад, жоден з найбільших постачальників JVM не підтримує власний порт свого часу виконання Java для будь-якої з платформ BSD. У деяких випадках треті сторони підтримують порти, але немає офіційної підтримки (наприклад) Oracle на жодному з BSD. Цей тип розриву з’являється в деяких місцях на BSD; BSD може не стати платформою для вас, якщо ви працюєте в просторі, де існує такий тип розриву.

Деякі помітні моменти

  • Однією з великих релігійних воєн 90-х була GPL проти BSD. BSD мають ліцензію за ліцензією BSD, яка має інший набір прав, ніж GPL. По суті, ліцензія BSD не вимагає від вас перерозподілу вихідного коду модифікованих версій ліцензійного програмного забезпечення BSD.

  • Комерційні постачальники, такі як Oracle, не підтримують BSD ні до чого, наскільки вони підтримують Linux. Тому, якщо ви хочете працювати з таким продуктом, вам, мабуть, краще з Linux. Однак більшість пропонують бінарну сумісність у Linux, System V, Solaris тощо, тому ви можете часто запускати бінарні файли для іншого O / S.

  • Спільноти BSD, як правило, по-різному керуються Linux і часто менші (хоча в багатьох випадках більше немає гентеля - Тео Де Раадт має щось з репутацією як горщик ).

  • Деякі варіанти BSD є товарами з нішевого ринку, оптимізованими для конкретних цілей. Наприклад, OpenBSD спеціально оптимізовано для забезпечення захищеної мережевої інфраструктури на комп’ютерах, що стоять перед Інтернетом, з дуже великими зусиллями йде на перевірку дірок у безпеці, таких як вразливість буфера. Багато організацій, які знають безпеку, використовують його саме з цієї причини. NetBSD призначений для портативності з портами до десятків платформ і досить широко використовується у вбудованих системах. Для застосувань у солодкому місці однієї з цих систем це може бути найкращим вибором платформи.

Домашня ділянка * BSD - це мережеві сервіси - сервери електронної пошти та веб-сайти, інфраструктура тощо. Ви можете встановити ідеально гарний робочий стіл з будь-яким із BSD, а теоретично це може створити щось таке тепле і пухнасте, як Ubuntu. Однак це не є основним напрямком роботи більшості продуктів BSD, хоча деякі такі, як PC-BSD , спрямовані на забезпечення настільних систем.

Якщо ви хочете створити робочий стіл trad unix geek, BSD зробить це так само, як і будь-яка інша система Unix-oid.

  1. Наприклад, ще в епоху VAX / 4.2BSD 1980-х років машина на зразок VAX-11/750 могла б надати службу електронної пошти цілому кафедрі чи університетському містечку, і, ймовірно, буде займатися й іншою роботою (хоча слід зазначити, що Більшість листів були лише текстовими, а вкладення не були настільки поширеними, як сьогодні - дискові накопичувачі, які використовуються на цій машині, зазвичай варіюються від 120-450 Мб. Сучасний сервер має на 3-4 порядки більше потужності процесора та пам'яті та дискову підсистему, можливо, на 2 порядки більше пропускної здатності і на 3-4 порядки більше місця.

9
Особливо добре поєднання: OpenBSD та BIND. Якби я працював на загальнодоступному сервері DNS, це було б BIND на OpenBSD. Сервери DNS сильно атакуються, а OpenBSD - це, мабуть, найбезпечніший універсал загального призначення.
Річард Ґадсден

2
Фантастична відповідь. Я б додав два аспекти: BSD менший, ніж Linux (тому він може працювати в менших середовищах), і він краще документований (кожна команда у FreeBSD має довідкову сторінку - кожен !)
Май

3
Я чув, що кажуть, що BSD - це те, що ви отримаєте, якби попросили програміста Unix написати ОС на ПК, тоді як Linux - це те, що ви отримаєте, якби попросили програміста Windows написати Unix OS.
gbjbaanb

1
Чудова відповідь! Коли я пробував різні ОС, це було linux, як mangrova marsh (застаріла неповна документація, багато різних суперечливих філософій), і коли я спробував FreeBSD, це було схоже на потрапляння в бібліотеку - замовлену, єдину послідовну філософію, все задокументовано ( актуальний!). Можливо, менш захоплююче, але, безумовно, легко вступити.
slovon

3
Я не вважаю, що правильним називати Тео як непорочний. У нього є сильні думки, і він не є дипломатичним щодо них, але він не клянеться. Найбільше дратує Тео Де Раадт - це те, що він або має хорошу точку, або має рацію :-P
DutchUncle

15

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

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

Однак тут є збіг різних BSD

  • OpenBSD: Одне, якщо це поштові цілі, - це бути найбільш захищеною ОС (і це, мабуть, є)

  • NetBSD: Девіз: "Звичайно, він запустить NetBSD". Це має бути однією з найбільш портативних операційних систем навколо. Багато людей також керують ним на робочих столах.

  • FreeBSD: Дуже популярний для серверів, хоча знову багато людей також працюють на робочому столі. Напевно, найпопулярніший з усіх BSD

  • DragonFly BSD: Відносно новий учасник (2003), це був роздріб FreeBSD 4.8. Я сам не користувався цим, але, мабуть, стабільний.


5
BSD є одними з найбільш зрілих архітектур там - частини бази коду 4.xBSD старіші за багато плакатів Serverfault. Ви можете легко зробити традиційний робочий стіл Unix geek на основі BSD. Однак більшість не намагаються створити робочий стіл для споживачів чи бізнесу так, як Canonical має Ubuntu. Бла-бла-молоді батоги ...; -}
Занепокоєння

11

У світі Linux дистрибутивів, як правило, не вистачає цього ... згуртованого почуття. Вони часто будуються децентралізовано, що, як правило, до цього призводить.

Зазвичай BSD керує одна людина, тому ви отримуєте відчуття, що кожен варіант - це фактичний продукт, який багато планував позаду нього. Речі працюють дуже добре разом, і всі компоненти дуже добре зафіксовані. Ви рідко зустрічаєте вади.

Це закладає дуже міцну основу, завдяки чому BSD є простою в обслуговуванні платформою, тому має потенціал призвести до більш безпечного та керованого середовища.

Я є користувачем Linux вже 13 років, і хоча я все ще вважаю це життєздатною платформою, я перемістив усі свої виробничі та персональні сервери на BSD з причин, зазначених вище.

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


1
Насправді, якщо ви хочете підтримувати настільний робочий стіл, найкращим варіантом є запуск BSD або Linux у VirtualBox в Windows ;-)
vartec

@OP, це найважливіша причина переходу з [linux distro] на * bsd
theman_on_osx

1
Або перейдіть до дистрибутива "людина на вершині", як Slackware;)
voyager

9

BSD, як правило, вважається безпечним за замовчуванням, відключаючи всі, крім основних сервісів. Це також дуже стабільно, про це ви можете сказати, переглянувши одну з багатьох служб моніторингу безперервного часу.

Однак слід попередити, що Linux - це не те саме, що BSD ... є крива навчання, тому не сподівайтеся стрибнути прямо в неї. Наприклад, ви знайдете всі основні команди, наприклад ls, різні прапори, які спочатку можуть заплутатись і можуть зайняти деякий час, щоб зламати стару звичку використовувати прапори Linux.


8

* BSD - це повна ОС , що означає, що ядро ​​та користувальницька ділянка розробляються з одного і того ж дерева джерел, тоді як дистрибутиви Linux зберігаються разом із різних джерел. Ось чому системи BSD відчувають себе набагато більш згуртованими та міцними. Також краще задокументовано.


8

Лише кілька питань:

Про (безкоштовно) BSD:

  • Управління файловою системою / обсягом ZFS
  • Dtrace для відстеження / аналізу
  • Відмінна та проста у пошуку документація (FreeBSD Handbook, OpenBSD FAQ, Сторінки керівництва справді хороші та насправді мають корисні приклади)
  • Очистити та покращити процес оновлення версії ОС
  • Відокремлення основної ОС від іншого програмного забезпечення ("Колекція портів")
  • Ліцензія BSD (тут ліцензійних хрестоносців немає)
  • Відмінний фільтр брандмауера / пакета: PF (Linux iptables змушує мою голову вибухати)

Контраст BSD:

  • Продукти віртуалізації (хост VM) не підтримуються (VMware, KVM, Xen, VirtualBox)

3
Оновлення віртуалізації. Схоже, FreeBSD вирішив піти на VirtualBox. Це зараз у дереві портів. Більше інформації тут: miwi.bsdcrew.de/2009/06/virtualbox-is-now-available-in-ports wiki.freebsd.org/VirtualBox virtualbox.de/wiki/FreeBSD%20build%20instructions
Paidhi

8

Мені дуже подобається /usr/ports. Це не означає, що мені теж не подобається apt-get, але приємно відчувати, що ваші інсталяції будуються на вашій конкретній машині, з будь-якими оптимізаціями, які ви відчували, як кинутись у параметри makefile за замовчуванням.

Яка частина сприйнятої користі від цього забобону, я не робив дослідження, щоб дізнатися, але мені це подобається. :)


1
Так це схоже на Gentoo? Це здається, що це може набриднути через деякий час (це одна з причин, що я ніколи не пробував Gentoo).
mmyers

6
"Волос" Gentoo походить від BSD, як і інші речі. Однак у більшості BSD є додаткові бінарні пакети. Наприклад, OpenBSD має і порти, і пакети. Насправді вони насправді те саме.
dwc

7

Як розробник Java, великий gotcha полягає в тому, що немає основного JVM для * BSD. Перш ніж усі виганяють мене із свого існування, я маю на увазі, що немає поточної JDK доставки від Sun або будь-якого з інших великих постачальників (IBM, BEA / Oracle), тому ви завжди будете грати другу загадку для користувачів Linux та Windows.


Це корисно знати. Хтось переносить OpenJDK чи щось таке?
mmyers

Так, перевірити openjdk.java.net/projects/bsd-port . Однак цей порт не зроблений і навряд чи буде комерційно підтримуваний. Працюючи в програмній компанії на базі Java, ми підтримуємо Sun JVM, а також Bea і JRocket насмішливо. Немає можливості розширити ресурси підтримки, щоб допомогти тому, хто хотів запустити наше програмне забезпечення на IceTea, або Blackdown, або GCJ тощо.
Дейв Чейні

Так, я бачу, що ти маєш на увазі. (До речі, ви вимкнули "ні" у своєму першому реченні. :)
mmyers

Щойно побачив цю публікацію "Прогрес порту OpenJDK BSD": robilad.livejournal.com/49303.html .
mmyers

5

Ліцензування

Основна відмінність BSD від Linux - це ліцензування.

Ви можете взяти базу коду BSD, внести будь-які зміни до нього та розподілити отриманий двійковий код, продати його тощо, не відкриваючи внесених вами змін вихідного коду.

Це дуже привабливо для компаній, таких як Apple, де юридичні зобов’язання перед їх власниками можуть вимагати від них зберігати власні права інтелектуальної власності. Наприклад, Apple базувала деякі свої ядра на FreeBSD.

У Tivo не було б (незначних) проблем з ліцензуванням, які воно страждало років тому, якщо вони будувались на BSD, а не на Linux.

Деякі практичні відмінності

  • BSD не настільки популярні, як Linux, і тому не мають драйверів для апаратних засобів, що кровоточать.
  • Існує менше BSD, ніж дистрибутивів Linux, і вони дуже чітко визначені, так що ви знаєте, як правило, коли ви повинні використовувати один над іншим.
  • Всі вони зосереджені більше на стабільності, ніж на багатьох інших факторах, і тому часто використовуються у ситуаціях з високою надійністю.

-Адам


1
+1. Правда бенчмаркінгу полягає в тому, що bsds не настільки хороші виконавці, і все ще не вистачає багатьох функцій ядра, які в Linux і Solaris вже є. Ліцензія на bsd - найкраща (або найгірша) частина щодо bsd.
Тім Меттьюз

Приємна річ у бенчмарках - це те, що на вибір так багато. Для роботи в мережі / фільтрації я використовував BSD з кращими результатами, ніж Linux --- для чисельного моделювання, я використовував Linux або Solaris з набором компілятора Sun Studio .... все це питання з'ясування того, що найкраще інструмент для роботи.
Білл Б

4
Було б непогано бачити деякі докази цього твердження: "Істиною тестування є те, що bsds не такі хороші виконавці ..."
Джош Броуер


1

Окрім всього, що вже було сказано, я хочу додати, що документація дуже хороша. Сторінки чоловіка (1) відмінні!


0

BSD (Berkeley Software Distribution) відомий своєю стабільністю: FreeBSD,
безпека: OpenBSD
та підтримка безлічі платформ: NetBSD

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.