Hlavní navigace

FreeBSD ­ za tučňákem číhá démon

13. 10. 1999
Doba čtení: 10 minut

Sdílet

S rostoucí popularitou Linuxu roste popularita dalších spřízněných operačních systémů ­ jedním z nich je FreeBSD, který si dnes trochu podrobněji představíme.
FreeBSD

FreeBSD je unixový operační systém pro i386 a alpha kompatibilní počítače, který se roku 1993 vyvinul z BSD. Je distribuován zdarma včetně úplných zdrojových kódů. FreeBSD je nasazován zejména jako Internetový server obsluhující stovky a tisíce simultánních uživatelských procesů. Dobrý návrh systému a z toho vyplývající škálovatelnost umožňuje široké spektrum nasazení od superserverů po slabší notebooky. Lze si vybrat z množství kvalitních nekomerčních aplikací současná distribuce verze 3.2 představuje 4GB dat (jádro, systémové soubory, balíky), podobně rozsáhlá je i část obsahující aplikace portované pro FreeBSD (jejich počet se blíží dvěma tisícům). Zvolna roste i množství komerčních aplikací (viz. http://www.fre­ebsd.cz/appli­cations.html).

FreeBSD charakterizují především tyto vlastnosti: preemptivní multitasking s dynamickou správou priorit, multiuživatelský přístup ke službám systému včetně periferií, kvalitní síťová část (kvalitní TCP/IP stack, podpora protokolů IPv6, IPsec, IPX/SPX, NCP, SMB, X.25, Appletalk, a dalších), kvalitní správa paměti, od základu 32 bitový design, sdílené knihovny, důsledná podpora C, C++ a dalších jazyků/nástro­jů/norem (Assembler, Fortran, Pascal, Perl, Tcl/Tk a další), GUI založená na X – Window standardu (s podporou velkého množství grafických karet a akcelerátorů), binární kompatibilita s operačními systémy SCO, BSDI, NetBSD, Linux a 386BSD, snadná portovatelnost unixových aplikací, otevřenost zdrojových kódů, podpora ve formě on-line dokumentace a diskusních skupin (viz. http://www.fre­ebsd.cz).

Systém FreeBSD prošel dlouhým vývojem. Koncem sedmdesátých let byla zahájena práce na bezplatné verzi operačního systému Unix nazvané BSD (Berkeley Software Design). Později na půdě University of California v Berkeley vznikla myšlenka portovat Unix na PC kompatibilní počítače s procesory Intel a William Jolitz odvodil z BSD operační systém 386BSD. Když univerzita přestala financovat další vývoj a poté, co William Jolitz projekt opustil, vznikly čtyři systémy: NetBSD pokrývající množství platforem i386, Apple, Atari, HP a další, FreeBSD optimalizovaný pro i386 procesory, OpenBSD v jehož kódu vývojáři provedli řádku za řádkou bezpečnostní audit a nyní je mnohými odborníky považován za nejbezpečnější dostupný operační systém a BSDi – komerčně distribuovaný systém BSD.
První distribuce FreeBSD 1.0 byla vypuštěna v prosinci 1993. Obsahovala části BSD-Lite verze 4.3 (Net/2) a 386BSD. Roku 1994 bylo v důsledku urovnání sporu mezi společností Novell a University of California v Berkeley přiznáno vlastnictví částí Net/2 společnosti Novell (která je již předtím odkoupila od AT&T) a stávajícím uživatelům systému Net/2 včetně vývojářů FreeBSD bylo doporučeno migrovat na BSD-Lite verze 4.4. Podstatné části FreeBSD poté musely být znovu vytvořeny z 4.4BSD-Lite. Vzhledem k nejisté atmosféře a budoucnosti projektu přešlo mnoho vývojářů k projektu Linux. V současné době je stabilní verzí FreeBSD 3.2 a aktuální verzí FreeBSD 4.0. Seznamy změn (a zároveň podporovaného hardware) se vždy jmenují RELNOTES.TXT, pro stabilní verzi 3.2 jsou k dispozici na adrese ftp://ftp.fre­ebsd.org/pub/Fre­eBSD/3.2-RELEASE/RELNO­TES.TXT.

Systém FreeBSD je nasazován zejména jako Internetový nebo „intranetový“ server, jako síťový prvek nebo jako platforma pro vyvíjení software. Po nainstalování běžné distribuce lze jednoduše spustit a nakonfigurovat následující služby:

Tabulka č. 20
Klasické servery HTTP, FTP, NFS, DNS, DHCP, BOOTP, NIS, WINS, IRC, PPP, SLIP, NNTP, NTP, SMTP, POP3, IMAP4, LDAP, SNMP, TELNET, SAMBA
Ostatní servery ICQ, NT Domain Controller, NT Domain Logon Server, X Display Manager, X Font Server, tiskový a fax server (Hylafax), proxy servery (Squid a další), zálohovací servery (Amanda a další), autentikační servery (Kerberos a další), emulace (například Mars – emulace serveru Novell Netware 3.x), herní servery (Quake a další)
Další využití gateway, bridge, router (projekt FreeBSD router směřuje k RFC1812 a RFC2026), firewall (včetně maškarádování a IP accountingu)

Součástí distribuce jsou nástroje potřebné pro konfiguraci, ladění, provoz i údržbu těchto služeb a samozřejmě i propracované klientské aplikace. Vzhledem k podpoře více procesorů a projektům Beowulf nebo Clusterit lze s FreeBSD realizovat i paralelní výpočty. Jako platforma pro databázový server je vhodnější spíše Linux, neboť pro FreeBSD nebyly zatím portovány komerční systémy, například Oracle nebo Informix – k dispozici jsou pouze otevřené projekty, například MySQL nebo PostgreSQL. Plně portovány však byly bezpečnostní mechanismy Kerberos, SSL, PGP, PAM, Secure Shell (bezpečná náhrada telnet, ftp a r služeb). Dá se říci, že pružnost a softwarové vybavení FreeBSD jsou takové, že lze realizovat i poměrně neobvyklá zadání.

Je-li systém používán na klientské stanici jedním uživatelem, je nezbytné, aby uživatel byl zároveň administrátorem se znalostí Unixu. Běžnému uživateli poskytuje FreeBSD bohužel méně konfiguračních prostředků než novější distribuce Linuxu. Po nainstalování běžné distribuce lze FreeBSD použít jako znakový terminál, po spuštění X serveru (XFree) a některého ze správců oken (například Window Maker nebo KDE) lze pracovat v komfortním grafickém prostředí a využívat multimediální služby správce oken nebo aplikací (tyto služby lze též omezeně používat na konzoli). Vzhledem k široké nabídce jazyků a nástrojů (editory, překladače, nástroje pro kontrolu sémantiky zdrojových kódů, nástroje pro tvorbu lexikálních a syntaktických analyzátorů, správci verzí zdrojových kódů, konvertory mezi programovacími jazyky, nástroje pro ladění včetně grafických nadstaveb, konzistentní a dobře zpracovaná dokumentace) a jejich kvalitě, je FreeBSD spolu s Linuxem ideální platformou pro vývoj aplikací. Obě platformy jsou též ideální pro správu a analýzu sítí. Potřeby uživatele splňují jednotlivé aplikace, pro psaní či editaci textu obsahuje běžná distribuce množství editorů se zajímavými vlastnostmi, například díky systému TeX/LaTeX a WYSIWYG nadstavbě LyX lze text pohodlně napsat, zalámat a výsledek rovnou vytisknout jako publikaci (přičemž ani po několika letech nehrozí potíže s formátem či tiskem). Manipulaci s grafikou realizuje například projekt GIMP (obdoba Adobe Photoshopu), přístup k~nejběžnějším službám Internetu poskytují balíky Netscape Navigator a Communicator, pro odreagování je přibalena hra Doom a tak dále. Kancelářské balíky či groupware nejsou zatím součástí FreeBSD, distribuce verze 3.2 pouze obsahuje starší portovanou verzi kancelářského balíku StarOffice. Běžná distribuce též umožňuje selektivní lokalizaci celého systému změnou systémových proměnných (mechanismus je identický s Linuxem). Uživatel má velkou svobodu konání a ochrany sebe sama a dat, platí za to však náročnější konfigurací a administrací systému.

Jednou z velkých předností FreeBSD je pružnost instalace. K dispozici jsou tato média: CDROM, lokální souborový systém, páska, server nebo sada floppy disků. Distribuce na CDROM sestává obvykle z 1–4 disků (první CD je bootovatelné) a neobsahuje celou distribuci. Instalace ze serveru je realizována protokoly FTP, NFS, PPP, SLIP a PLIP, médii mohou být ethernet, sériová linka, či paralelní kabel. Při instalaci z FTP serveru může být instalovaný stroj umístěn i za firewallem nebo proxy serverem. Instalace z lokálního souborového systému podporuje souborové systémy UFS a FAT16/32. Instalace obvykle probíhá za pomoci dvou instalačních disket, po jejichž zavedení následuje dvoustupňový boot umožňující, konfiguraci ovladačů v jádře a následné zavedení nakonfigurovaného jádra. Poté je spuštěn manažer vlastní instalace (výběr a konfigurace instalačního média, výběr balíčků atd.). Během instalace je na první konzoli instalační manažer a stav instalace, na druhé konzoli výpis instalovaných souborů a adresářů, na třetí konzoli je možné již pracovat a na čtvrté konzoli je možné průběžně překonfigurovávat a monitorovat instalační médium. V případě, že není jiná možnost a instalujeme například přes modem po vytáčené lince a protokolu PPP z FTP serveru, můžeme ze čtvrté konzole vytočit číslo poskytovatele připojení k Internetu, připojit se, nastavit případně předtím různé parametry (např. routování) a poté po celou dobu instalace pracovat na třetí konzoli (je li ve stroji případně síťová karta připojená do lokální sítě, je možné pracovat i v síti). Instalace FreeBSD může koexistovat na disku s jinými běžnými systémy souborů a pokud je v jádře příslušný ovladač, mohou být připojeny a používány již během instalace, stejně tak je možné spustit aplikaci ihned, jakmile je nainstalována na cílové médium. Po doinstalování systému a jednom restartu je spuštěn zavaděč systému, který zavede jádro systému a spustí jej. Jádro připojí kořenový souborový systém z téměř libovolného média (disk, páska, síť), může též připojit virtuální souborový systém na ramdisku.

Ačkoliv má FreeBSD mnoho společného s Linuxem, v některých aspektech se poněkud liší:

Maskotem Linuxu je tučňák.
Maskotem FreeBSD je démon.

Linux je klon Unixu napsaný Linusem Torvaldsem. Je odvozen ze systému Minix. FreeBSD je přímým potomkem původního Unixu (dnes již neobsahuje žádná rezidua AT&T kódu).

Linux je svázán s GPL licencí (General Public Licence).
FreeBSD je chráněn BSD licencí, jež je méně restriktivní než GPL. BSD licence obsahuje jediné omezení (kromě obvyklé věty „nezodpovídáme za cokoliv co uděláte s tímto kódem“), musí být uvedena zmínka o autorských právech. To je vše – můžete vzít BSD kód, modifikovat jej a prodat. V praxi to vede k tomu, že BSD licence je kompromis mezi proprietárním a otevřeným vývojem společnosti mohou stále ignorovat nekomerční verze kódu, produkovat záplaty a prodávat svojí verzi původně nekomerčního software koncovým zákazníkům, zatímco je otevřená verze dále vyvíjena nezávislými vývojáři. Pod BSD licencí jsou vyvíjeny například projekty Apache nebo XFree.

Linux je kernel, udržovaný Linusem Torvaldsem. Vše ostatní je předmětem některé z distribucí, (například GNU Debian), jejich přispěvovatelů nebo komerčních společností. Pro zjednodušení se však aproximace některých populárních distribucí nazývají Linux.

FreeBSD je kompletní operační systém, udržovaný 16ti členným jádrem, skupinou vývojářů a přispěvovateli, jejichž počet a autorita (v rámci FreeBSD) je však menší než v případě Linuxových přispěvovatelů a distribucí. Existuje vždy pouze jedna stabilní (uzavřená) verze a jedna aktuální (průběžně vyvíjená) verze. Centrální strom zdrojového kódu je udržován pomocí CVS (Concurrent Version Systém) nástrojem pro udržování zdrojového kódu, jež je běžnou součástí BSD systémů i Linuxu.

Některé z distribucí Linuxu jsou komerční. FreeBSD je free.

Linux nebyl v minulosti ohrožen soudními spory.
Distribuování FreeBSD bylo po jistou dobu významně omezeno soudními spory ohledně autorských práv (Novell, AT&T, University of California v Berkeley).

Roste množství komerčních aplikací pro Linux, například společností Corel nebo Oracle. Vzhledem k několikanásobně menšímu počtu instalací FreeBSD a menší publicitě existuje méně komerčních aplikací pro tento systém.

Linux obsahuje velké množství kvalitních ovladačů, jejichž počet rychle roste.
Vzhledem k uzavřenosti základního týmu vývojářů FreeBSD a menšímu počtu přispěvovatelů obsahuje kernel menší počet kvalitních ovladačů, jejichž počet neroste tak dramaticky.

Linuxový TCP/IP stack má zatím občas problémy se stabilitou a výkonností při extrémní zátěži, například server s Apache na Linuxu vyřizující 1 500 000 dotazů denně (permanentně 20 dotazů za vteřinu) se čas od času zhroutí i po vyladění serveru. Kritickou se může stát i zátěž, kdy více než 80 procesů permanentně čeká na zpracování a trvá-li tento stav například 24hodin (load 80). Nelze to ovšem tvrdit obecně konkrétní podmínky závisí na konkrétních aplikacích. Neznamená to, že by Linuxové servery byly nestabilní/ne­výkonné, běžně dosahují několikaměsíční uptime a umisťují se v benchmarcích na předních místech (spolu s BSD systémy). Při extrémní zátěži je však zatím lepší uvažovat o FreeBSD.

K FreeBSD přecházejí uživatelé především kvůli výkonnosti a stabilitě systému i při extrémní zátěži. Společnost Wallnut Creek CDROM provozující populární server ftp://ftp.cdrom.com (1× Xeon/500, 4GB RAM, 1/2 TB RAID5) uvádí, že při obsluze 10 000 simultánních připojení, při 750 000 uživatelích denně a 1TB dat stažených uživateli denně, FreeBSD vyřizuje dotazy téměř okamžitě a server je omezen pouze kvalitou připojení. Dobrou referencí je i server http://www.ya­hoo.com.

root_podpora

Úspěch Linuxu determinuje v budoucnu i úspěch FreeBSD a naopak. Přestože jsou oba systémy poskytovány zdarma, bude se pro obě platformy objevovat stále větší počet komerčních aplikací. Tento trend je patrný zejména v případě Linuxu. I velké společnosti se přestávají bát software, který je zdarma a který byl dříve považován za hračku studentů. Oba systémy budou zároveň neustále zkvalitňovány nezávislými přispěvovateli z celého světa. Jedinou překážkou další expanze otevřených systémů by potenciálně mohla být snaha monopolních společností chránit svůj podíl na trhu proprietarizací otevřených protokolů (viz. http://www.open­source.org/ha­lloween). Přesto je budoucnost otevřených systémů velmi slibná.

Zdroje: odkazy na http://www.fre­ebsd.org a http://www.open­source.org
listservery majordomo@freebsd.cz, majordomo@freebsd.org, linux@linux.cz
archivy na http://www.de­janews.com

Byl pro vás článek přínosný?