Co nového ve FreeBSD 6.2

15 ledna 2007 byla konečně vydána dlouho očekávaná FreeBSD 6.2 Release. Souhrn novinek přináší tento článek.

20.1.2007 12:00 | Radim Kolář | přečteno 9175×

Jak je již z čísla verze patrno jedná se o minoritní FreeBSD release. Minoritní releasy FreeBSD jsou sice zaměřeny zejména na opravy chyb a aktualizaci driverů, ale verze 6.2 kromě toho přišla i s několika hezkými vylepšeními.

Upgrade z předchozích verzí řady 6 je velmi snadný, na rozdíl od upgrade z řady 5. V podstatě stačí přepsat staré systémové binárky a skripty novými, což zvládne i volba upgrade v instalačním programu FreeBSD. Instalační program FreeBSD je určen zejména pro instalaci FreeBSD na nový počítač a následné poinstalační nastavení systému. Jeho použití k upgradu není moc testováno a rozhodně bych ho nedoporučil pro provádění major upgradů.

Pokud se rozhodnete pro upgrade kompilací se zdrojových textů, tak 6.2 překompilujete na 2 GHZ i386 zhruba za 40 minut, na 230 MHz je na to potřeba 12 hodin. Pro urychlení upgrade pomalejších strojů lze systém přeložit na rychlejším stroji a pak přes NFS vyexportovat /usr/src a /usr/obj.

Pokud se vám nechce systém rekompilovat, tak lze rozhodně doporučit script pro binární upgrade 6.1 na 6.2. Jedná se o script od autora utilit freebsd-upgrade a portsnap, který bude pravděpodobně po důkladnějším otestování zařazen do instalačního programu FreeBSD.

freebsd-update

Pravděpodobně nejviditelnější novinkou ve FreeBSD 6.2 je zařazení scriptu freebsd-update do základního systému. S tímto scriptem jste se dříve mohli setkat v portech, kde si ho oblíbilo mnoho uživatelů. Jedná se o script pro aplikaci bezpečnostních nebo errata záplat pro řadu 6.2 pomocí binárních digitálně podepsaných patchů.

Jak jsem již napsal v minulém článku, nutnou podmínkou pro funkci scriptu je mít přeložené FreeBSD s default volbami kompilátoru (t.j. bez optimalizace pro specifický procesor) nebo nainstalované z distribučních médií. Pokud je potřeba aktualizovat kernel, script pozná zda používáte kernel GENERIC nebo SMP. Krom toho script upozorňuje na blížící se datum ukončení podpory systému.

sanatana# freebsd-update fetch
Looking up update.FreeBSD.org mirrors... 1 mirrors found.
Fetching metadata signature from update1.FreeBSD.org... done.
Fetching metadata index... done.
Inspecting system... done.
Preparing to download files... done.

No updates needed to update system to 6.2-RC2-p0.

WARNING: FreeBSD 6.2-RC2 is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 2 weeks.

csup

Druhá poměrně významná novinka je zahrnutí CVSUP klienta do základního systému. Ačkoliv základní systém již dříve obsahoval podporu protokolu CVS, většina uživatelů dávala přednost aktualizaci pomocí efektivnějšího protokolu CVSUP.

Původní cvsup klient/server software je naprogramován v jazyce Modula-3, přesněji řečeno v jeho podmnožině ezm3. Jelikož překladač ezm3 není v základním systému obsažen, nemohl být do něj zařazen ani program napsán v tomto jazyce. Krom toho to s přenositelností ezm3 nebylo zrovna nejlepší a proto byl CVSUP klient csup naprogramován v jazyce C.

Tvorba programu csup probíhala v rámci projektu FreeBSD Summer of Code 2005. Program csup je s kompatibilní s originálním cvsup i co do konfiguračních a stavových souborů a většiny přepínačů příkazové řádky.

Audit

Další hodně diskutovanou novinkou je začlenění experimentální podpory protokolovaní bezpečnostních událostí (např. otevření souboru, navázání spojení, etc). Implementace vyhovuje specifikaci Common Access Protection Profile (CAPP) a používá BSM aplikační rozhraní a souborový formát, který je dnes de facto standardem a setkat se s ním lze např. v Solarisu. Více informací se dozvíte v tomto článku. Čas ukáže, zda se použití tohoto auditování stane běžnou součástí bezpečnostních opatření na serverech, nebo zda tento framework potká osud Mandatory Access Control (MAC) frameworku, který se v praxi využívá díky své náročné konfiguraci zcela minimálně.

Nové a aktualizované drivery

V 6.2 se nově setkáte s drivery pro AMD-8111 SMBus, OpenIPMI, PadLock Security Co-processor, NVIDIA nForce 2/3/4 SMBus 2.0, Sundance/Tamarack TC9021. Aktualizovány byly drivery pro Atheros, Broadcom NetXtreme II, Intel(R) PRO/1000, Intel PRO/Wireless 2200BG/2225BG/2915ABG, Myson Ethernet, NVIDIA nForce MCP, SysKonnect SK-982/4x, Areca SATA RAID, Qlogic SCSI.

Aktualizovaný základní systém

Minoritní aktualizace se dotkly i contributed softwaru obsaženého v základním systému. FreeBSD 6.2 nyní obsahuje aktualizovaný Bind 9.3.3, GCC 3.4.6, IPFilter 4.1.13, less 394, libpcap/tcpdump 0.9.4, OpenSSH 4.5p1, 8.13.8, zlib 1.2.3.

Změny v síťování

Pravděpodobně nejvýznamnější změnou v síťování je přidání podpory pro značkování paketů do firewallu IPFW. K paketu je možné přiřadit číselnou značku 0-65k a v dalších pravidlech lze testovat její přítomnost. Další poměrně významnou změnou je inicializace IPv6 link-local adres pouze v případě povolení IPv6 v rc.conf. Dříve si mnoho uživatelů existenci těchto adres neuvědomovalo, což vedlo k chybně nakonfigurovaným firewallům (zapomenutí filtrace IPv6). Další zajímavou novinkou je pseudozařízení enc na kterém lze filtrovat IPsec pakety před zašifrováním/po rozšifrování.

Bugfixy

Kromě nových vlastností byla do verze 6.2 zapracována i řada bugfixů. Byla opravena chyba způsobující kernel panic při použití aufs u Squidu 2.6, odstraněn deadlock nastávající při použití diskquot a snapshotů, odstraněny chyby v tty subsystému způsobující panic, zlepšen výkon NFS serveru díky chybě v zamykání a opraveny chyby v if_bridge způsobující nefunčnost síťových některých aplikací.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=1403