FreeBSD 15: dlaczego warto wybrać ten system na serwer
Analiza możliwości FreeBSD 15 jako systemu serwerowego. Omówienie integracji ZFS, mechanizmu jails, firewalla pf oraz wpływu nowego rozwiązania pkgbase na zarządzanie systemem.
Czym jest FreeBSD 15 w jednym akapicie
FreeBSD to kompletny system operacyjny serwera, a nie tylko jądro z dołączoną dystrybucją. Osoby tworzące jądro opracowują również podstawowe narzędzia użytkownika, dokumentację oraz wydania, dostarczając je jako jedną, wersjonowaną całość. FreeBSD 15 to najnowsze główne wydanie tego systemu. Jeśli dotychczas korzystano wyłącznie z systemu Linux, należy przyjąć następującą zasadę: we FreeBSD system podstawowy stanowi jeden projekt, a instalowane pakiety znajdują się wyraźnie ponad nim. Ten jeden wybór projektowy wyjaśnia większość powodów, dla których użytkownicy cenią ten system.
Większość zadań wykonuję w systemie Linux, a SSD Nodes jest dostawcą VPS z systemem Linux. Mimo to FreeBSD pozostaje moim ulubionym systemem operacyjnym do pracy na serwerze i ten wpis wyjaśnia dlaczego. Uczciwa uwaga: nie oferujemy planów VPS z FreeBSD, ponieważ popyt na nie jest niewielki. Osoby ceniące FreeBSD zazwyczaj uruchamiają go na własnym sprzęcie, zamiast go wynajmować, dlatego rynek VPS dla tego systemu pozostaje ograniczony.
Co nowego w FreeBSD 15
Najważniejszą zmianą w FreeBSD 15.0, wydanym w grudniu 2025 roku, jest pkgbase: nowy sposób instalacji i aktualizacji samego systemu bazowego jako pakietów pkg. Instalator pozwala wybrać między pkgbase a tradycyjnymi zestawami dystrybucyjnymi. Oficjalne obrazy dla maszyn wirtualnych i chmur publicznych, które otrzymuje się na VPS, domyślnie korzystają z pkgbase. FreeBSD 15.0 udostępniło pkgbase jako wersję poglądową (technology preview). Projekt zakłada, że stanie się to standardowym sposobem instalacji i aktualizacji systemu bazowego w przyszłych wydaniach. Instalacje oparte na zestawach dystrybucyjnych nadal korzystają ze starszego narzędzia freebsd-update. Ta metoda pozostanie wspierana przez cały cykl życia gałęzi FreeBSD 15, jednak planowane jest usunięcie wsparcia dla zestawów dystrybucyjnych w FreeBSD 16. Zatem pkgbase jest kierunkiem rozwoju, mimo że zadebiutowało jako wersja poglądowa. FreeBSD 15.1 ukazało się 16 czerwca 2026 roku, a wsparcie dla 15.0 zakończyło się 30 września 2026 roku, dlatego serwery wciąż działające na 15.0 powinny zostać zaktualizowane do 15.1.
System bazowy a model dystrybucji Linux
Jeśli istnieje jedna różnica definiująca FreeBSD, to właśnie ta, z której wynikają pozostałe. Na serwerze z systemem Linux uruchamia się dystrybucję. Jądro pochodzi z jednego projektu, biblioteka C z innego, podstawowe polecenia z jeszcze innego, a opiekunowie dystrybucji składają te elementy w całość i dobierają współpracujące ze sobą wersje. Wymaga to dużej koordynacji. Choć to działa, miejsca łączenia są wyraźne: aktualizacja może przenieść niektóre elementy, a innych nie.
FreeBSD wyznacza granicę w innym miejscu. Jądro, standardowe polecenia, biblioteka C, zapora sieciowa i program rozruchowy stanowią jedno drzewo źródłowe z jednym numerem wersji. System bazowy aktualizuje się jako całość: za pomocą freebsd-update w instalacjach korzystających z zestawów dystrybucyjnych lub za pomocą samego pkg w instalacjach pkgbase, z których domyślnie korzystają obrazy chmurowe FreeBSD 15. Wszystko inne – serwer WWW, baza danych, środowiska uruchomieniowe języków – pochodzi z pakietów pkg, które znajdują się na wierzchu systemu bazowego, zamiast być z nim splecione. Nawet w przypadku pkgbase, gdzie jedno narzędzie aktualizuje teraz obie warstwy, "system operacyjny" oraz "zainstalowane oprogramowanie" pozostają dwiema odrębnymi warstwami, które można rozpatrywać oddzielnie.
ZFS jako obywatel pierwszej kategorii
ZFS to system plików, dla którego większość użytkowników wybiera FreeBSD. W wersji FreeBSD 15 stanowi on integralną część systemu, a nie dodatek instalowany osobno. ZFS łączy funkcje systemu plików i menedżera woluminów, zapewniając sumy kontrolne danych, które wykrywają ciche uszkodzenia zamiast polegać na sprawności dysku. Oferuje również natychmiastowe migawki, tanie klonowanie oraz zfs send i zfs receive do przesyłania systemu plików na inną maszynę w skali bit po bicie.
Dla serwera ma to wymierne znaczenie. Przed aktualizacją można wykonać migawkę zbioru danych:
zfs snapshot zroot/ROOT/default@before-upgradeJeśli aktualizacja zakończy się niepowodzeniem, można przywrócić system do dokładnie tego samego stanu. Program rozruchowy FreeBSD obsługuje środowiska startowe ZFS, co pozwala na przywrócenie całego systemu operacyjnego do migawki wykonanej przed wprowadzeniem zmian. Linux również obsługuje ZFS poprzez OpenZFS i robi to skutecznie. Różnica polega na tym, że we FreeBSD rozwiązanie to jest od początku zintegrowane z instalatorem, programem rozruchowym oraz narzędziami do aktualizacji.
Jails: kontenery zanim stały się powszechne
Jail to lekkie, odizolowane środowisko, które współdzieli jądro hosta, ale posiada własny system plików, użytkowników, sieć i widok procesów. Jeśli brzmi to jak kontener, to dlatego, że nim jest, a jails wyprzedziły Docker o ponad dekadę. FreeBSD 15 kontynuuje ich udoskonalanie.
Model myślowy jest prostszy niż w przypadku pełnego stosu kontenerowego. Jail to drzewo katalogów oraz niewielka konfiguracja, uruchamiająca rzeczywiste środowisko użytkownika FreeBSD na jądrze hosta. Nie potrzeba rejestru obrazów ani demona działającego w tle, aby uzyskać izolację. Dla serwera obsługującego kilka oddzielnych usług, jails zapewniają silną separację przy minimalnym narzucie, a narzędzia takie jak bastille ułatwiają zarządzanie nimi. Jest to ten sam zamysł, co w przypadku uruchamiania każdej usługi we własnym kontenerze Docker, osiągnięty z przeciwnego kierunku. Jeśli wybierasz między tymi rozwiązaniami dla danej usługi, pamiętaj, że jails i kontenery Docker różnią się przede wszystkim sposobem dostarczania oprogramowania, miejscem przechowywania stanu oraz konfiguracją sieci.
pf, firewall, którego konfiguracja sprawia przyjemność
Pakietowy filtr systemu FreeBSD, pf, cieszy się dużą popularnością z jednego powodu: składnia jego reguł przypomina zwykłe zdania. Zbiór reguł to plik, który można przeczytać od początku do końca i w pełni zrozumieć. W porównaniu z ręcznym tworzeniem reguł iptables/nftables w systemie Linux, pf sprawia wrażenie zaprojektowanego z myślą o łatwości utrzymania przez człowieka. Jeśli kiedykolwiek przyszło Ci zmagać się z gąszczem linii iptables, pf przyniesie Ci ulgę.
Gdzie FreeBSD znajduje zastosowanie, a gdzie nie
FreeBSD stanowi solidny wybór dla serwerów pamięci masowej ze względu na ZFS, dla zapór sieciowych i routerów dzięki pf, a także dla każdego serwera, w którym stabilna, spójna baza i przejrzyste aktualizacje są ważniejsze niż pogoń za najnowszymi funkcjami jądra. Dokumentacja systemu, FreeBSD Handbook, jest jednym z najlepszych podręczników w świecie open-source, a jej lektura to najszybszy sposób na naukę systemu.
Nie jest to jednak rozwiązanie uniwersalne. Ekosystem kontenerów jest mniejszy i zorientowany na Linux, więc jeśli cały proces pracy opiera się na obrazach Docker i Kubernetes, praca z FreeBSD będzie wymagała pokonywania wielu trudności. Niektóre sterowniki własnościowe i narzędzia dostawców są dostępne wyłącznie dla systemu Linux. Ponadto większość poradników dotyczących self-hostingu, w tym wiele na tej stronie, zakłada korzystanie z dystrybucji Linux. Aby uzyskać ogólny obraz tego, co można uruchomić na serwerze domowym lub w ramach pobocznego projektu, warto zapoznać się z przeglądem self-hostingu, który został napisany z myślą o systemie Linux, choć zawarte w nim idee są uniwersalne. Bezpośrednie porównanie funkcji można znaleźć w artykule Linux kontra FreeBSD w zastosowaniach serwerowych.
W ramach innego porównania, Linux kontra Windows Server zestawia drugą dużą platformę serwerową z systemem Linux.
FAQ
Czy FreeBSD 15 nadaje się na serwer?
Tak, w odpowiednich zastosowaniach. FreeBSD 15 to stabilny, spójny system operacyjny serwera z wbudowanymi w podstawę ZFS, jails i pf, pierwszorzędną dokumentacją oraz przejrzystymi aktualizacjami całego systemu. Jest szczególnie mocny w zastosowaniach związanych z przechowywaniem danych, zaporami sieciowymi i usługami długoterminowymi, gdzie ceni się przewidywalność bardziej niż najnowsze funkcje jądra. Słabiej sprawdza się, jeśli proces pracy jest zbudowany wokół ekosystemu kontenerów zorientowanego na Linux.
Jaka jest różnica między systemem bazowym FreeBSD a Linuxem?
W systemie Linux jądro i środowisko użytkownika pochodzą z oddzielnych projektów, które dystrybucja łączy w całość. We FreeBSD jądro, podstawowe polecenia, biblioteka C, zapora sieciowa i program rozruchowy stanowią jedno drzewo źródłowe z jedną wersją, aktualizowane jako całość za pomocą freebsd-update lub, w instalacjach pkgbase, za pomocą pkg, podczas gdy wszystko, co instalujesz, pozostaje oddzielną warstwą pakietów na wierzchu. Ten podział na system bazowy i pakiety jest główną różnicą strukturalną.
Czy mogę uruchomić FreeBSD na VPS?
Można uruchomić FreeBSD na VPS u dostawców, którzy oferują taką możliwość, choć wybór jest węższy niż w przypadku systemu Linux. SSD Nodes nie oferuje planów z FreeBSD, ponieważ popyt jest niewielki: osoby korzystające z FreeBSD zazwyczaj używają własnego sprzętu zamiast VPS. Wiele serwerów FreeBSD to maszyny fizyczne, nad którymi właściciel ma bezpośrednią kontrolę.
Czy muszę znać Linuxa przed wypróbowaniem FreeBSD?
Nie, ale pomaga to w nauce. Powłoka, SSH i większość codziennych poleceń wydają się znajome, jeśli używało się systemu Linux. Głównymi rzeczami do opanowania od podstaw są: podział na system bazowy i pakiety, pkg do zarządzania oprogramowaniem (oraz, w instalacjach pkgbase FreeBSD 15, również do zarządzania systemem bazowym, podczas gdy instalacje z zestawami dystrybucyjnymi nadal używają freebsd-update przez cały cykl życia gałęzi FreeBSD 15) oraz pf jako zapora sieciowa. FreeBSD Handbook przeprowadzi przez wszystkie te zagadnienia.