Żegnaj, Linuksie, witaj FreeBSD
Zżerała mnie dosłownie ciekawość już dłuższy kawałek czasu. Mianowicie, chodzi o systemy z rodziny *BSD. Za sprawą padu eksperymentalnego peceta teamu PC Inside (a.k.a. „Chlibnyj-dar”), i za namową Marcina, postanowiłem wrzucić pod maskę kaszlaka FreeBSD.
Do instalacji podchodziłem trzy razy, ale z czystym sumieniem mogę powiedzieć, że gra była warta świeczki i do dzisiaj cieszę się stabilnym, porządnie zorganizowanym systemem.
Wcześniej wszystkie do swoich eksperymentów na systemach uniksowskich wykorzystywałem Ubuntu. Właściwie, instalacja większości Linuksów przebiega bardzo podobnie; wybiera się odpowiednie partycje, pakiety, lokalizację bootloadera, etc. O ile w przypadku Linuksa wszystko przebiega w miarę łatwo, to przy FreeBSD od użyszkodnika wymagana jest pewna zmiana przyzwyczajeń.
Pierwszą rzeczą, której nie mogłem pojąć i która sprawiła, iż musiałem instalację rozpoczynać od nowa trzy razy z rzędu była inna filozofia systemów plików. Tradycyjnie, dysk dzieli się na partycje i na dyski logiczne. Tutaj jest inaczej. Najpierw dzieli się na „plastry”, potem je się dzieli. Początkowo opornie mi szło pojęcie tego modelu, ale po trzecim razie jakoś poszło.
Instalacja przebiega, na moje oko, trochę „dziwnie”. Na początku wspomnę, iż FreeBSD jest dystrybuowany m. in. w postaci dwupłytowego obrazu ISO. Po wybraniu paru aplikacji z tzw. „portów”, które są dostępne bezpośrednio z systemem, trzeba kilka razy zamieniać płytki w napędzie.
Trochę dziwne rozwiązanie; po pierwszej zmianie myślałem, że instalator może potraktuje cachem pakiety przeznaczone do późniejszej instalacji znajdujące się na pierwszej płycie. A tu guzik. Ale warto się poświęcić. ;]
Kolejną, jak dla mnie – genialną – sprawą są porty. Fani Gentoo poczują się jak w domu – emerge, „tylko trochę inaczej”. Mianowicie, w katalogu /usr/ports instalowane jest drzewo skategoryzowanych – jakby to nazwać – „nagłówków” pakietów. Działa to w bardzo prosty sposób. Szukamy, powiedzmy, ekg2. Wpisujemy cd /usr/ports/polish/ekg2. Wystarczy wtedy wpisać make install clean i chwilę poczekać. Wówczas, odpowiednie źródła oraz ich zależności zostaną pobrane i skompilowane. Osobiście, podoba mi się to rozwiązanie. ;] Fakt, trochę czasochłonne w przypadku większych pakietów, ale mamy pewność, że aplikacje/biblioteki są w zoptymalizowanych wersjach. Np. sama instalacja i konfiguracja PHP jest dosłownie bajeczna – nie trzeba klepać parametrów dla ./configure, tylko wystarczy użyć make configure i wybrać sobie potrzebne opcje. Zero troski o jakiekolwiek paczki z zależności. ;]
Usuwanie w ten sposób zainstalowanych pakietów też jest łatwe – make deinstall i tyle. ;]
Szczerze powiedziawszy, byłem bardzo miło zaskoczony tym, że każdy poszukiwany przeze mnie program znalazł się gdzieś w portach. ;]
Dla niecierpliwych, są jeszcze paczki, ale nie o to chyba chodzi.
Moje wrażenia po pierwszych kilku tygodniach pracy z tym systemem są jak najbardziej pozytywne, wszystko jest do rozklepania, tylko trzeba po prostu posiedzieć. Tak samo, jak w przypadku PHP, do nauki polecam przede wszystkim oficjalny podręcznik.
W najbliższym czasie, postaram się opisać kilka moich perypetii dotyczących stawiania demonów przydatnych w systemach serwerowych.
Tym samym, tematyka wpisów ulegnie pewnej zmianie – będzie więcej notek dotyczących FreeBSD aniżeli Linuksa.
jupi!