FreeBSD 5FreeBSD 5.0 Wojciech Koszek FreeBSD jest dynamicznie rozwijaj±cym się systemem, powszechnie uznawanym za bezpieczny, stabilny, doskonale nadający się zarówno na system serwerowy, jak również na wysokowydajn± stację robocz±. W artykule tym postaram się przedstawić zmiany wprowadzone w nowej wersji, FreeBSD oznaczonej numerem 5.0, której oficjalne wydanie ujrzało ¶wiatło dzienne 19 stycznia 2002 roku. Nowe architektury i sterowniki Nowa wersja systemu działa obecnie na większej ilo¶ci architektur. FreeBSD można teraz uruchomić na procesorach i386, alpha, ia64, sparc64, pc98, a dzięki pracy deweloperów w najbliższym czasie możemy spodziewać się także wsparcia dla x86-64, MIPS'a oraz PowerPC. Dodanych zostało wiele sterowników z czego ważniejsze to: sterownik umożliwiający zapis na urz±dzeniach klasy DVD-RW oraz przeniesiony z OpenBSD sterownik urządzeń kryptograficznych, dzięki czemu możliwe będzie wykorzystanie szyfrowania zarówno na bazie oprogramowania, jak i sprzętu. Zmiany w j±drze. W j±drze systemu zaszło wiele zmian. Oprócz wszelkich poprawek rozwijanych jest wiele kluczowych projektów m.in.: wsparcia dla operacji wieloprocesorowych (SMPng) czy też wsparcia wielow±tkowo¶ci dla schedulera jądra. Zapewni to większ± skalowalno¶ć w przypadku maszyn wieloprocesorowych oraz klastrów. Sterownik odpowiedzialny za generowanie liczb pseudo losowych został przepisany i obecnie używa trudniejszego do przewidzenia algorytmu Yarrow. Możliwe jest tworzenie bardzo dużych przestrzeni swap (powyżej 67GB), co ma ogromne znaczenie w serwerach obliczeniowych wielu o¶rodków naukowych. Dodane została opcja RLIMIT_VMEM, dzięki której możliwe jest ograniczenie maksymalnej pamięci procesu. Systemy plików Nowym systemem plików wzbudzaj±cym wiele emocji jest zapewne UFS w wersji 2. Pomimo, iż instalator domy¶lnie formatuje dyski przy pomocy UFS1, to podczas instalacji użytkownik ma możliwo¶ć wyboru UFS2. Nowy system plików zaprojektowany został tak, by wspierać listy kontroli dostępu do plików tzw. ACL (ang. Access Control List) wraz z rozszerzonymi projektu TrustedBSD. Dzięki zwiększeniu adresowania, udało się przełamać dotychczasową granicę 1TB. Od wersji 5.0 domy¶lnie wł±czony jest system plików devfs odpowiedzialny za zarz±dzanie plikami urządzeń, co zwalnia nas z ręcznego tworzenia tychże plików przy pomocy MAKEDEV. Bezpieczeństwo Oprócz wielu poprawek i uaktualnień aplikacji, do FreeBSD 5.0 wprowadzono wiele niepowtarzalnych cech związanych z bezpieczeństwem. Chodzi tu głównie o integracje z projektem TrustedBSD zawierającym w sobie zaawansowane mechanizmy takie jak MAC (ang. Mandatory Access Control), zastosowanie list kontroli dostępu do systemu plików, co w połączeniu z wielopoziomow± kontrol± w warstwie j±dra i przestrzeni użytkownika (Multi-Level Security), oferować będzie administratorowi naprawdę imponuj±cy zestaw narzędzi do zabezpieczenia systemu. Dzięki narzędziu devfs(8) możliwe jest okre¶lenie ¶cisłych reguł, dzięki którym dany użytkownik/proces nie będzie w stanie zobaczyć danych czę¶ci systemu. Daje to administratorowi możliwo¶ć do zdefiniowania grup użytkowników, którzy będ± mogli korzystać z danych urz±dzeń, w zależno¶ci od ich potrzeb. Userland Jedną z ważniejszych (i nieco dyskusyjnych) zmian w przestrzeni użytkownika jest brak interpretera Perl'a. Skutkiem takiej decyzji jest przepisanie do standardowego /bin/sh b±dĽ C aplikacji do tej pory korzystających z Perl'a. Deweloperzy doszli do wniosku, iż utrzymanie Perl'a w basesystemie nie jest najlepszym pomysłem ze względu na rosnącą objęto¶ć jak również ze względu na bezpieczeństwo. Oczywi¶cie wciąż istnieje możliwo¶ć zainstalowania Perl'a z bazy pakietów/portów. Oprócz pojawienia się wielu nowych opcji, każdy program skompilowany jest przy pomocy GCC 3.2.1, który od tej pory stał się domy¶lnym kompilatorem. Warto również wspomnieć o nowym narzędziu portupgrade, które zastąpiło pkg_update(1), oraz przejęło czę¶ciow± funkcjonalno¶ć pkg_version(1). Podsumowanie Mam nadzieję, że udało mi się przedstawić nowe cechy systemu i zachęcić czytelnika do jego wypróbowania. Czę¶ć z przedstawionych tu opcji jest jeszcze w fazie heavy-development, więc należy liczyć się ze zmniejszon± stabilno¶ci± oraz problemami z uruchomieniem niektórych opcji. Pomimo, iż obecna wersja nie nadaje się jeszcze na platformę produkcyjn±, wszystkich gor±co zachęcam do testowania i zgłaszania błędów szczególnie, że według zapowiedzi, obecna, niew±pliwie przełomowa gał±Ľ 5.x ma szanse stać się największym projektem w ¶wiecie Opensource. Linki do stron [1] http://www.freebsd.org/releases/5.0R/announce.html - Wiadomo¶ć o wydaniu nowej wersji FreeBSD. [2] http://www.freebsd.org/releases/5.0R/relnotes-i386.html - Szczegółowe informacje dotyczące zmian od wersji 4.x dla platformy i386 [3] http://www.freebsd.org/platforms/index.html - Lista wspieranych architektur