Rok beBSDiecznego życia
Rok z FreeBSD
ware ::: 2024-11-16 ::: 950 słów ::: #859
Jesienią zeszłego roku połknąłem bakcyla wielkości końskiego czopka. Z dwóch niezależnych źródeł1 dowiedziałem się o niezmierzonych zaletach uniksowego – nie linuksowego, a właśnie uniksowego, czyli jeszcze bardziej nerdowskiego – systemu operacyjnego FreeBSD. Zapaliłem się do pomysłu zainstalowania go na domowym sprzęcie tak bardzo, że nabyłem w tym celu nowy laptop.
Aż tak mi się przelewa? Oczywiście, ale akurat nie o to tutaj chodzi. Otóż nowego domowego komputera i tak potrzebowałem, gdyż w poprzednim (Lenovo Ideapad) od kilku lat mrugał ekran. Feler wystąpił niestety krótko po upływie okresu gwaranacyjnego. Do awarii przyzwyczaiłem się i nauczyłem ją mitygować ustawiając klapę monitora pod kątem 117,54°. Mruganie jednak powoli przybierało na sile, aż w końcu osiągnęło próg mojej cierpliwości, który dodatkowo obniżony został świeżo nabytą wiedzą o drodze do kernelowego nieba otwieraną rzekomo przez FreeBSD.
Kupiłem mocno używany ThinkPad 430s sprzed dziesięciu lat w znakomitej cenie. Do Linuksów i Uniksów jak znalazł – do wielu innych zastosowań też, bo pomimo przestarzałego procesora i5-3320M @ 2.60 GHz, płyta główna zaopatrzona była w całe 16 GB RAM-u. Stary twardy dysk zutylizowałem.
FreeBSD to hakierski system operacyjny powstały w listopadzie 1993 r. i wywodzący się z BSD (Berkeley Software Distribution), gałęzi Uniksa. Zainstalowałem go więc na swoim starym-nowym sprzęcie na kilka tygodni przed trzydziestymi urodzinami OS-a nie zdając sobie nawet sprawy ze zbiegu dat. FreeBSD uchodzi za znakomity, choć stosunkowo zaawansowany, system operacyjny dla serwerów, ponieważ jest stabilniejszy, sieciowo wydajniejszy i bezpieczniejszy od większości Linuksów. Dodatkową kluczową zaletę stanowi całkowita integracja z ZFS, nowoczesnym systemem plików o magicznych właściwościach.
Czy FreeBSD jest dobrym systemem operacyjnym dla zastosowań desktopowych? Tutaj zdania są podzielone. Fachowcy już zeń korzystający twierdzą, że tak. Wszak da się na nim zainstalować bez kłopotu dowolne środowisko graficzne; repozytoria posiadają też pokaźną liczbę aplikacji, które można instalować jednym poleceniem tak jak na zwykłym Linuksie. Inni z kolei nic nie twierdzą, bo o FreeBSD nawet nie słyszeli i nie mają bladego pojęcia, na czym polega kabalistyczny spór między systemdowcami a initowcami.
Instalator FreeBSD był o dziwo bardziej przyjazny użytkownikowi niż instalator Fedory (pod względem interfejsu), ale zaraz na początku pojawiły się kłopoty z kartą sieciową. Zadano mi techniczne pytania o jej częstotliwość i inne parametry techniczne, o których istnieniu nie miałem pojęcia. Po kilku podejściach się udało. Grałem w końcu za młodu w przygodówki point’n’click, które uczyły zręcznego poruszania się w opcjach dialogowych.
FreeBSD działał bez pudła od razu. Wykrył procesor, pamięć, twardy dysk i klawiaturę, po czym wrzucił mnie w tryb tekstowy, tzw. konsolę. Zwiększyłem jej rozdzielczość, zmieniłem czcionkę, nauczyłem się posługiwać tekstową przeglądarką internetową w3m. Hardkor? Spokojnie, zainstalowanie środowiska graficznego także było bezbolesne: Wybór padł na spartański i3, którego konfigurowanie dokładnie według własnego widzimisię2 sprawiło mi dużo przyjemności i pokazało niezaprzeczalne walory kafelkowego menedżera okien.
Z dużym trudem przyszło mi natomiast ustawienie kluczowego elementu workflowu, czyli współdzielenia plików pomiędzy komputerami (domowym i służbowym). Istnieje genialny syncthing, lecz wymaga, by oba pecety były cały czas włączone, a ja swoje ze strachu przed rachunkiem z elektrowni przecież wyłączam. Przez wiele lat korzystałem z Dropboksa, ale obraziłem się na niego, gdy darmowy tier w niedorzeczny sposób ograniczył maksymalną liczbę zsynchronizowanych urządzeń3. Potem odkryłem, że na wysokości zadania staje OneDrive, co było dla mnie niemałą niespodzianką, ponieważ rozwiązania software’owe Microsoftu bywają gorsze od cholery. Co więcej, OneDrive posiada swojego klienta także na Linuksie, a nawet, co już zupełnie niesamowite, na FreeBSD.
W czym więc szkopuł? Ano w tym, żeby OneDrive uruchamiał się automatycznie po
starcie systemu. Na Windowsie automatyczne uruchamianie uruchamia się oczywiście
automatycznie; na Linuksie wystarczy klepnąć systemctl --user enable onedrive
lub podobne. Na FreeBSD, cóż, systemd
nie istnieje, więc musiałem nauczyć się
pisać skrypty konfiguracyjne dla rc.conf
. Okazało się to bardziej
skomplikowane niż powinno, ponieważ oficjalna instrukcja jest wyczerpująca
tylko pozornie. Metodą prób i błędów musiałem dochodzić do tego, jak uruchamiać
OneDrive z poziomu usera (nie roota) i jak sprawić, by synchronizował się raz
jeszcze tuż przed wyłączeniem komputera.
I chociaż GTA: Vice City udało mi się odpalić przez Wine bez najmniejszych
przeszkód, to inne wyzwania mnie pokonały. Po pierwsze, FreeBSD dość długo się
bootował – na pewno nie tak wolno jak Windows na nie najnowszym sprzęcie, ale
dłużej od Linuksa. Było to w jakiś sposób powiązane z czasochłonnym wykrywaniem
interfejsu wifi, który – i to jest drugi punkt na mojej liście zażaleń4 –
szwankował zaskakująco często i wymagał restartowania komendą service netif
restart
, niekiedy nawet w połączeniu z service routing restart
. Podejrzane,
zważywszy, że FreeBSD miał być specjalistą od networkingu…
Po trzecie, nie potrafiłem ustawić automatycznego montowania pendrajwów i zewnętrznych dysków. Pewnego poranka musiałem Bardzo Szybko przekopiować kilka plików na memory sticka i akurat wtedy FreeBSD się na całego rozkaprysił.
Zacząłem zastanawiać się, czy wytrwać z uniksowym OS-em dłużej. Z jednej strony zdążyłem go polubić; z drugiej strony boje konfiguracyjne przestały mnie kręcić mniej więcej wiosną. FreeBSD wyczuł moje zwątpienie i przygotował karę Dokurobeia. Po podręcznikowym apdejcie systemu „wszystko” się popsuło: Rozdzielczość konsoli się zresetowała, i3 przestał działać.
Powyższe słowa piszę już z Linuksa spod znaku kameleona. Środowisko graficzne? Oczywiście kaskadowe XFCE. „Is it possible to improve on perfection?”, pytał The Kid, tragiczny bohater Szybkich i martwych.
-
Jednym z nich był blog Michała Sapki. Drugiego już nie pamiętam. ↩
-
Szczerze mówiąc, za dużo do skonfigurowania nie było – takie już uroki spartańskości. conky był jednak uroczym narzędziem. ↩
-
Do szczęścia potrzeba mi co prawda synchronizacji dwóch urządzeń. Na to darmowy tier pozwala. Ale, powtarzam, obraziłem się na Zrzutpudło. ↩
-
W tym momencie wypada napisać, że ludzie z oficjalnego forum FreeBSD byli życzliwi, pomocni i udzielili mi wielu konstruktywnych porad. ↩
Komentarze
Seji (2024-11-16 13:38:49)
Z ciekawości: dlaczego Suse, a nie któreś *buntu albo Mint?
SpeX (2024-11-18 05:02:16)
Ja tam FreeBSD korzystam na co dzień i sobie chwalę. Co prawda mój poziom wtajemniczenia kończy się tam, gdzie webGUI już nie wyrabia. Ale jako router działa sprawnie
Borys (2024-11-18 10:26:10)
@Seji
Dlaczego nie Ubuntu? Bo dawnan przewaga Ubuntu polegająca na user-friendliness skończyła się lata temu. Inne dystrybucje adresowane do zwykłego użytkownika dogoniły Ubuntu pod tym względem. Obecnie Fedora, Suse, Debian i kilka innych również działają od razu. Różnią się tylko pod względem domyślnego środowiska desktopowego.
Tymczasem Ubuntu popadł w schizofrenię software'ową. Standardowe, debianowe repozytoria z oprorgramowaniem (Ubuntu Software Center) konkurują z rozwiązaniem lansowanym przez Canonical specjalnie dla Ubuntu (Snap Store). Według mnie to bez sensu i wprowadza tylko zamieszanie psując jedną z głównych zalet Linuksa – łatwość instalowania wszystkiego w spójny sposób bezpośrednio z wiersza poleceń.
Więc dlaczego Suse, a nie Debian albo Fedora albo coś innego? W zasadzie zdecydował kaprys. Równie dobrze mogłem pozostać przy Fedorze, z której korzystałem przez rok na komputerze służbowym. W Suse zaciekawił mnie Yast, czyli graficzna nakładka na narzędzia konfiguracyjne. Rzeczywiście, fajna sprawa, ale nie będę z nich korzystał, bo co tu konfigurować? Nawet drukarki nie mam. :) Niemniej, Suse śmiga zgodnie z oczekiwaniami.
Kiedyś w przyszłości pobawię się jakąś hardkorową dystrybucją (Archem, Gentoo albo Slackware), ale na razie, po bojach z FreeBSD, mi się nie chce. :)
rozie (2024-11-19 08:58:17)
Wg mnie BSD (zwł. FreeBSD) ma dobry PR. Może nawet nie tyle PR, co powtarzane mity(?). Weźmy "stabilniejszy, sieciowo wydajniejszy i bezpieczniejszy od większości Linuksów". Czy na pewno? Wg jakich miar? I jak to się ma do ilości ficzerów czy obsługiwanego sprzętu?
W sumie miałem o tym notkę https://zakr.es/rozie.jogger.pl/2008/12/10/os-dobry-os-zly-czyli-rzecz-o-opensolaris-freebsd-i-linuksie/index.html
Duża polska firma hostingowa korzystała z BSD i... zmigrowała na Linuksa.
Wsparcie dla ZFS jest w tej chwili na Linuksie. Chwilę się bawiłem na testowym sprzęcie. Działa. Uruchomienie wymaga nieco zachodu, ale raczej ze względu na specyfikę FS niż OS: https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/Debian%20Bookworm%20Root%20on%20ZFS.html
I nie mam zamiaru spierać się o wyższość któregokolwiek OSa. Każdy ma swoje wady i zalety.
Borys (2024-11-20 10:18:10)
@rozie
Fajnie, że podlinkowałeś swój stary blog. Przejrzałem archiwalne notki i dowiedziałem się między innymi o bardzo sympatycznej gierce GNU Robbo. Pamiętam oryginał z Atari!
A co do meritum: Tak, niewykluczone, że mają dobry PR. W każdym razie, zdolności sieciowe FreeBSD mnie rozczarowały. Ale może po prostu chodzi o to, że OS dostosowany jest do serwerowego kabla, a nie do desktopowego wifi? Niemniej – i mówię to z przykrością – jeśli ktoś kiedyś zapyta mnie (pewnie nikt nigdy), czy warto instalować FreeBSD na desktopie, odpowiem, że nie warto.
SpeX (2024-11-21 10:13:36)
Nie jestem ewangelistą żadnego środowiska systemowego. Ale podchodzą do tego, tak iż trzeba znać (umieć się obsługiwać w podstawach np. dir vs ls) działać zarówno w "dos" jak i konsoli linux/fBSD.
Temu też o fBSD śledzę sobie informacje na takim kanale YT: https://www.youtube.com/@GaryHTech/featured
Borys (2024-11-29 13:07:49)
Soléne wymienia inne powody, dla których zrezygnowała z BSD (w jej wypadku: z OpenBSD) i które sprawiają, że według niej Linux jest lepszym OS-em.