Używam Ubuntu z przerwami od Warty Warthog. Myślałem o instalacji Jaunty wkrótce; ale zauważyłem, że w weekend zostały wydane NetBSD 5.0 , Dragonfly BSD 2.2.1 , OpenBSD 4.5 i FreeBSD 7.2 , więc zainteresowałem się:
Co jest dobrego w BSD? Dlaczego powinienem lub nie powinienem instalować jednego z nich zamiast Ubuntu? Jakie są ich główne zalety? Wydajność? Stabilność? Kompatybilność sprzętu? Łatwość użycia? Bezpieczeństwo? Czy działają dobrze na starszym sprzęcie? Co to jest?
Edycja: Jest to z punktu widzenia programisty (głównie Java), ale chciałbym wiedzieć, jakie są wady i zalety innych użytkowników. Czy są bardziej ukierunkowane na serwery? Dla użytkowników korporacyjnych? Albo co?
Odpowiedzi:
Zalety BSD
Rodzina systemów * BSD ma (IMHO) kilka kluczowych zalet w stosunku do Linuksa, szczególnie dla O / S serwera.
Prostota i kontrola: Żadna z dystrybucji * BSD nie ma konieczności dodawania funkcji prezentowanych przez dystrybutorów Linuksa. Dlatego domyślna instalacja większości systemów pochodnych BSD jest stosunkowo prosta.
Stabilność: częściowo napędzane przez prostotę, BSD są zwykle jednymi z najbardziej stabilnych platform operacyjnych. FreeBSD (jeden ze starszych „nowoczesnych” BSD) obsługuje wiele dobrze znanych domen .com, takich jak Yahoo i (w pewnym momencie) hotmail. W rzeczywistości w pewnym momencie Microsoft doznał dość zawstydzenia z powodu niemożności migracji Hotmaila z FreeBSD do systemu Windows.
Bezpieczeństwo: W szczególności OpenBSD ma bardzo dobre osiągnięcia w zakresie bezpieczeństwa, a duża część ich pracy ociera się o społeczność * BSD w ogóle.
Przenośność: W szczególności NetBSD ma porty do kilkudziesięciu platform i wyróżnia się bardzo łatwym przenoszeniem.
Niektóre słabości
Mniejsze wsparcie dla dużych konfiguracji SMP niż Linux. Stanie się to większym problemem, ponieważ pudełka z dużą liczbą rdzeni stały się powszechne. Jednak większość aplikacji usług sieciowych, które są tak naprawdę domową domeną BSD, nie jest tak bardzo obciążona procesorem (1).
Wydajność SMP w jądrach BSD znacznie się poprawiła w ciągu ostatniej dekady. Poprawa wydajności SMP była jednym z głównych celów Dragonfly BSD, a projekt FreeBSD SMPNg znacznie poprawił wydajność SMP na tej platformie, przewyższając Linuksa na platformach 8-rdzeniowych. Oznacza to, że można oczekiwać dobrej wydajności na głównych serwerach z gniazdami 2 i 4.
Trochę debatyistnieją też wczesne prace nad zapewnieniem obsługi NUMA we FreeBSD, ponieważ system nie obsługuje obecnie interfejsów API do przydzielania pamięci, zarządzania koligacjami lub innych udogodnień dla jawnego wsparcia NUMA. Dobry podkład na wsparcie NUMA można znaleźć tutaj .
Mniejszy zakres wsparcia sprzętowego niż Linux: w praktyce oznacza to tylko, że musisz sprawdzić komponenty na liście kompatybilności sprzętu. W przypadku serwera nie jest to w większości przypadków problem, ale instalacja na losowym komputerze stacjonarnym jest nieco bardziej skomplikowana. Nadal musisz wykonać kontrolę poszczególnych komponentów, jeśli chcesz, aby maszyna zainstalowała BSD, co jest mniej prawdopodobne w przypadku Linuksa.
Mniej nacisku na pulpit: dystrybucje pulpitu Linuksa (takie jak Ubuntu) mają zwykle bogatszą obsługę pulpitu dla multimediów, emulacji i aplikacji w pakiecie. Podczas gdy wiele takich aplikacji ma porty na różnych platformach BSD, gotowa obsługa z dystrybucji Linuksa na komputery stacjonarne zazwyczaj będzie raczej lepsza.
Niektóre luki w oprogramowaniu: Dość dużo komercyjnego oprogramowania Linux nie ma portu BSD. Na przykład żaden z głównych dostawców JVM nie utrzymuje macierzystego portu środowiska wykonawczego java dla żadnej z platform BSD. W niektórych przypadkach strony trzecie utrzymują porty, ale nie ma oficjalnego wsparcia dla (na przykład) Oracle na żadnym BSD. Ten rodzaj luki pojawia się w niektórych miejscach BSD; BSD może nie być platformą dla Ciebie, jeśli pracujesz w przestrzeni, w której istnieje ten typ luki.
Niektóre istotne punkty
Jedną z wielkich wojen religijnych lat 90. była GPL vs. BSD. BSD są licencjonowane na podstawie licencji BSD, która ma inny zestaw praw niż GPL. Zasadniczo licencja BSD nie wymaga redystrybucji kodu źródłowego zmodyfikowanych wersji oprogramowania licencjonowanego BSD.
Dostawcy komercyjni, tacy jak Oracle, nie wspierają BSD w takim stopniu, w jakim wspierają Linux. Dlatego jeśli chcesz pracować z takim produktem, prawdopodobnie lepiej Ci będzie z Linuksem. Jednak większość oferuje kompatybilność binarną w systemach Linux, System V, Solaris itp., Więc często można uruchamiać pliki binarne dla innego systemu operacyjnego.
Społeczności BSD zwykle działają inaczej niż Linux i często są mniejsze (choć w wielu przypadkach nie ma już więcej gentelinu - Theo De Raadt ma reputację nocnika ).
Niektóre warianty BSD to produkty niszowe, zoptymalizowane pod kątem konkretnych celów. Na przykład OpenBSD jest specjalnie zoptymalizowany pod kątem zapewniania bezpiecznej infrastruktury sieciowej na komputerach podłączonych do Internetu, przy bardzo dużym wysiłku przy sprawdzaniu luk bezpieczeństwa, takich jak luki w zabezpieczeniach związane z przepełnieniem bufora. Wiele organizacji świadomych bezpieczeństwa używa go właśnie z tego powodu. NetBSD jest zaprojektowany do przenoszenia z portami na dziesiątki platform i jest dość szeroko stosowany w systemach wbudowanych. W przypadku aplikacji w najsłabszym miejscu jednego z tych systemów może to być najlepszy wybór platformy.
Domową domeną * BSD są usługi sieciowe - poczta e-mail i serwery sieciowe, infrastruktura itp. Możesz ustawić idealnie dobry pulpit dla geeków z dowolnym BSD i teoretycznie możesz wyprodukować coś tak ciepłego i puszystego jak Ubuntu. Jednak nie jest to głównym celem większości produktów BSD, chociaż niektóre, takie jak PC-BSD , mają na celu zapewnienie systemów stacjonarnych.
Jeśli chcesz stworzyć trad unixowego maniaka komputerowego, BSD zrobi to tak samo dobrze, jak każdy inny system unix-oid.
źródło
Nie uważam BSD za tak dojrzałe jak Linux na pulpicie, ale dla serwerów jest niesamowicie solidny.
To, czy chcesz zainstalować BSD, zależy wyłącznie od tego, do czego używasz urządzenia. Podczas gdy wiele rzeczy jest podobnych do Linuksa, wiele rzeczy jest również różnych.
Jednak tutaj jest przegląd różnych BSD
OpenBSD: Jednym z celów poczty jest bycie najbezpieczniejszym systemem operacyjnym (i prawdopodobnie tak jest)
NetBSD: Jego motto brzmi: „Oczywiście, że uruchomi NetBSD”. To musi być jeden z najbardziej przenośnych systemów operacyjnych. Wiele osób uruchamia go również na komputerach stacjonarnych.
FreeBSD: bardzo popularny na serwerach, chociaż znowu wiele osób uruchamia go na komputerze. Prawdopodobnie najpopularniejsza ze wszystkich BSD
DragonFly BSD: Względnie nowy przybysz (2003), był to rozwidlenie FreeBSD 4.8. Sam go nie użyłem, ale najwyraźniej jest stabilny.
źródło
W świecie Linuksa brakuje dystrybucji w tym ... spójnym odczuciu. Często są budowane w sposób zdecentralizowany, co prowadzi do tego.
BSD są zwykle zarządzane przez jedną osobę, więc masz wrażenie, że każdy wariant jest produktem, który miał wiele planów. Wszystko działa bardzo dobrze, a wszystkie komponenty są bardzo dobrze udokumentowane. Rzadko znajdziesz kludges.
Stanowi to bardzo solidny fundament, dzięki czemu BSD są łatwą w utrzymaniu platformą, dzięki czemu mogą prowadzić do bezpieczniejszego i łatwiejszego do zarządzania środowiska.
Jestem użytkownikiem Linuksa od 13 lat i chociaż nadal uważam to za realną platformę, przeniosłem wszystkie moje serwery produkcyjne i osobiste na BSD z wyżej wymienionych powodów.
Jednak Linux nadal może być lepszym wyborem dla komputerów stacjonarnych ze względu na najnowocześniejszą obsługę sterowników.
źródło
BSD jest ogólnie uważane za bezpieczne domyślnie, ponieważ wyłącza wszystkie usługi oprócz podstawowych. Jest również bardzo stabilny, możesz to powiedzieć, patrząc na jedną z wielu usług monitorowania czasu pracy.
Ostrzegamy jednak, że Linux nie jest tym samym co BSD ... istnieje krzywa uczenia się, więc nie oczekuj, że w nią wskoczysz. Na przykład znajdziesz wszystkie podstawowe polecenia, takie jak
ls
różne flagi, które na początku mogą być mylące i mogą zająć trochę czasu, aby przełamać stary nawyk używania flag Linux.źródło
* BSD jest kompletnym systemem operacyjnym , co oznacza, że jądro i przestrzeń użytkownika zostały opracowane z tego samego drzewa źródeł, podczas gdy dystrybucje Linuksa są zestawiane razem z różnych źródeł. Właśnie dlatego systemy BSD są bardziej spójne i solidne. Również lepiej udokumentowane.
źródło
Kilka kwestii:
Pro (bezpłatny) BSD:
Contra BSD:
źródło
Bardzo mi się podoba
/usr/ports
. Nie oznacza to, że też mi się nie podobaapt-get
, ale miło jest wiedzieć, że twoje instalacje są budowane na konkretnej maszynie, z wszelkimi optymalizacjami, które masz ochotą wrzucić domyślne ustawienia makefile.Jak wiele z postrzeganej korzyści z tego to przesąd, nie przeprowadziłem badań, aby się dowiedzieć, ale lubię to. :)
źródło
Jako programista Java duża gotcha polega na tym, że nie ma głównego JVM dla * BSD. Przed tym, jak wszyscy mnie wypalą, mam na myśli, że nie ma obecnie wysyłanego JDK od Sun ani żadnego z innych głównych dostawców (IBM, BEA / Oracle), więc zawsze będziesz grał na drugim skrzypku dla użytkowników Linuksa i Windowsa.
źródło
Koncesjonowanie
Główną różnicą między BSD a Linuksem jest licencjonowanie.
Możesz wziąć bazę kodu BSD, dokonać dowolnych zmian i rozpowszechnić wynikowy plik binarny, sprzedać go itp., Bez otwierania dokonanych zmian kodu źródłowego.
Jest to bardzo atrakcyjne dla firm takich jak Apple, w których zobowiązania prawne wobec ich akcjonariuszy mogą wymagać od nich zachowania „własności intelektualnej” własności intelektualnej. Na przykład Apple oparło część swojego jądra na FreeBSD.
Tivo nie miałoby (drobnych) problemów z licencjonowaniem, które ucierpiały lata temu, gdyby były oparte na BSD, a nie na Linuksie.
Kilka praktycznych różnic
-Adam
źródło
Bezpieczeństwo, bezpieczeństwo i jeszcze raz bezpieczeństwo.
źródło
Oprócz wszystkiego, co już wspomniano, chciałbym dodać, że dokumentacja jest bardzo dobra. Strony man (1) są doskonałe!
źródło
BSD (Berkeley Software Distribution) znany ze swojej stabilności: FreeBSD,
bezpieczeństwo: OpenBSD
i obsługa wielu platform: NetBSD
źródło