FreeBSD The Power to Serve

A FreeBSD Képviseleti Projekt

Miközben a BSD projektek (DragonflyBSD, FreeBSD, NetBSD és az OpenBSD) nagyra nõttek, számos mítosz kezdett terjedni róluk. Ezek közül néhányat jó szándékú, ám megfontolatlan személyek indítottak el, másokat pedig önhitt emberek.

Ennek az oldalnak az a célja, hogy a lehetõ legnagyobb tárgyilagosság mellett eloszlassa ezeket a tévhiteket.

Megjegyzés: Ezen az oldalon a “*BSD” kifejezés mind a négy BSD projektre vonatkozik. Ahol az adott mende-monda csak az egyik különálló projektre vonatkozik, ott azt külön említjük.

Ha úgy érezzük, hogy az oldal valamely témában hiányos ismereteket közöl, akkor értesítsük az oldal fenntartóját, Tom Rhodes-ot a következõ e-mail címen: <trhodes@FreeBSD.org>

Mítoszok

A *BSD rendszerek zárt fejlesztési modellel rendelkeznek, sokkal inkább “katedrálisok” mintsem “bazárok”

Eric Raymond nagy hatású írása A katedrális és a bazár címmel a Linux fejlesztési modellt (és azt a modellt, amelyet Eric a fetchmail kifejlesztéséhez használt) említi mint a “nyílt” fejlesztési modell példáját. Ezzel szemben a *BSD fejlesztési modelljét gyakran jellemzik zártként.

A hallgatólagos bírálat szerint a “bazár” (nyílt) jó, és a “katedrális” (zárt) rossz.

Ha valami, akkor a BSD rendszerek által alkalmazott fejlesztési modell *még inkább hasonlít a “bazárhoz”, mint a Linux vagy a fetchmail esetében, amelyeket Eric említ.

Ehhez elég csupán a következõket figyelembe vennünk:

  • Minden *BSD projekt esetén: A forráskód aktuális változata a FreeBSD, NetBSD, és az OpenBSD esetében is a nap 24 órájában bárki számára elérhetõ az Interneten keresztül. Nem szükséges arra várni, hogy egy új kiadás jelenjen meg.

FreeBSD, NetBSD: Egy telepíthetõ “pillanatverzió” 24 óránként válik elérhetõvé. Ezek a pillanatképek teljesen ugyanúgy telepíthetõk mint a közönséges kiadások, és a telepítéshez nem szükséges egy meglévõ rendszer.

OpenBSD: OpenBSD pillanatképei naponta készülnek, és ha Theo elég jónak találja ezeket, felkerülnek a tükörszerverekre.

+ Ezzel ellentétben a Linux kernelnek csak alkalmilag válik elérhetõvé új verziója, és a különbözõ disztribúciók kiadási gyakorisága a disztribúció fejlesztõitõl függ.

+ Itt nem kíséri harsonaszó egy új kernel megjelenését, mivel a legtöbb *BSD felhasználó számára ez egy teljesen megszokott esemény. * A *BSD projektek mind CVS-t használnak a forráskód karbantartásához.

Minden *BSD projekt esetén: a CVS Repository a nap 24 órájában böngészhetõ, és a repositoryból az egész rendszer letölthetõ. A forrás elérhetõ anonim CVS, CVSup, CVSupit, CTM (e-mail-en keresztül) vagy egyszerû FTP segítségével. * Bárki küldhet javításokat, hibajelentéseket, dokumentációt, és egyéb módokon is hozzájárulhat a munkához. Ezt a *BSD rendszerek részét képezõ send-pr program vagy a webes felület segítségével lehet megtenni.

+ A dokumentáció hemzseg az erre utaló hivatkozásoktól. * Nem mindenki hajthat végre változtatásokat a *BSD rendszerek forráskódjában, ehhez elõször committerré kell válnia. Általában olyan emberek kapnak “commit jogot”, akik már a send-pr segítségével vagy más hasonló módon beküldtek már pár alapos változtatást a projektnek.

+ Ez a rendszer hasonló a Linux módszeréhez. Egyetlen ember, Linus jogosult megváltoztatni a kernelt, de a különbözõ területek (mint például a hálózati kód) fejlesztését más emberek tartják karban.

+ Mellesleg Nik (nik@FreeBSD.org) jó példa erre. Miután számos fejlesztést hajtott végre a FreeBSD Dokumentációs Projekten és a weboldalon, felajánlották neki a “commit jogot”, hogy ne kelljen más committereket zargatnia, hogy hajtsák végre az általa készített fejlesztéseket. Soha nem kérte ezt a jogot, ingyen kapta.


A *BSD rendszerekrõl nem készíthetõ saját disztribúció, vagy nem származtatható egyéb munka

Készíthetõ, csak a dokumentációban és a forrásfájlokban fel kell tüntetni, hogy a forráskód honnan származik. Rengeteg származtatott projekt létezik:

  • A DragonflyBSD a FreeBSD 4.X egy leágazásaként indult, de azóta már van saját felhasználói közössége és vannak fejlesztési céljai.

  • A TrustedBSD a FreeBSD-hez nyújt a megbízható (trusted) operációs rendszerekre jellemzõ funkciókat képviselõ különbözõ kiterjesztéseket, és ezzel az IT biztonsági minõsítést, a Common Criteria-t (CC) célozza meg. Ez a projekt folyamatos fejlesztés alatt áll, a kód nagy része visszakerül a FreeBSD alaprendszerébe, de a fejlesztés külön történik.

  • A Hybrid Cluster egy FreeBSD és ZFS alapokon nyugvó webes klaszter, amely szabványos LAMP alapú honlapok és alkalmazások számára szolgáltat redundáns adatbiztonságot és automatikus terheléskiegyenlítést.

  • A Frenzy egy másik live-CD disztribúció, de elsõsorban adminisztrációs feladatokhoz. Egyaránt tartalmaz hardvertesztelõ, állományrendszer-ellenõrzõ, biztonsági ellenõrzõ, hálózatkonfiguráló és -analizáló szoftvereket.

  • A PicoBSD egy testreszabott FreeBSD disztribúció, amely elfér akár egy floppy lemezen is. Remek eszköz merevlemez nélküli 386-os PC-k útválasztóvá vagy nyomtatószerverré alakításához. A FreeBSD forrásfájának része, lásd a /usr/src/release/picobsd könyvtárat.

  • A NanoBSD egy másik olyan projekt, amely a FreeBSD minimális helyigényû verziójának elõállításával foglalkozik. Ez a változat elfér egy Compact Flash kártyán vagy egyéb kisebb méretû adathordozón. Ez a projekt is a FreeBSD forrásfájának része, lásd a /usr/src/tools/tools/nanobsd könyvtárat.

  • A TinyBSD olyan shell szripteket foglal össze, amelyek a FreeBSD 5.X és 6.X verzióin alapuló beágyazott rendszerek fejlesztéséhez használhatóak.

  • A ThinBSD egy kisméretû rendszerindító lemez, amellyel egy egyszerû PC-t használhatunk Microsoft Windows RDP kliensként, vagy X terminálként. Az egész konfiguráció DHCP protokollon végezhetõ.

  • A PC-BSD egy asztali felhasználásra elõkészített FreeBSD leszármazott. A fejlesztés célja, hogy könnyen telepíthetõ legyen és egy segítõkész közösség alakuljon ki körülötte.

  • A DesktopBSD egy másik asztali felhasználásra szánt FreeBSD alapú operációs rendszer.

  • A Gentoo/FreeBSD a Gentoo Projekt kezdeményezése arra, hogy a Gentoo adminisztrációs adottságait portolják a megbízható FreeBSD rendszermagjára és szoftverkörnyezetére. A projekt befejezetlen, jelenleg kísérleti stádiumban van.

  • A m0n0wall egy FreeBSD alapú tûzfalrendszer. Rengeteg olyan funkcióval rendelkezik, amelyet a drága tûzfalak is nyújtanak, mint például a webes interfész, gyári beállítások visszaállítása, állapottartó csomagszûrés, NAT/PAT átirányítás, DHCP kliens és szerver, gyorstárazó névszerver és még sok minden más.

  • A pfSense egy m0n0wall alapú tûzfalrendszer, de a fejlesztés céljai és a támogatott funkciók különbözõek, mint például az OpenBSD Packet Filter (PF) és a FreeBSD 6.1 támogatása, vagy a kitûnõ hálózati ütemezéshez az ALTQ támogatása, valamint a funkcionalitás bõvíthetõségét egy integrált csomagkezelõ rendszer segítségével valósítja meg.

  • A Whistle Interjet egy “hálózati készülék”, amely útválasztó, webszerver, e-mail szerver és egyéb funkciókat lát el, továbbá webböngészõvel konfigurálható. A készülék alapja a FreeBSD operációs rendszer, és a Whistle a fejlesztéseinek nagy részét visszaküldte a FreeBSD Projektnek (miközben eleget megtartott ahhoz, hogy az üzleti versenyben maradhasson).

A DragonflyBSD esetéhez hasonlóan, az OpenBSD sem volt önálló projekt, a NetBSD projekt alapjaitól indult el és azóta kialakult a saját szemléletmódja.


A *BSD rendszerek remek kiszolgálók, de rossz asztali rendszerek

A *BSD rendszerek remek kiszolgálók, de egyben remek asztali rendszerek is. Sok elvárás a kiszolgálók felé (rövid válaszidõ nagy terhelés alatt is, stabilitás, az erõforrások hatékony kihasználása) ugyanúgy elvárás az asztali rendszerek esetén is.

A *BSD rendszerek ugyanazokkal az asztali szoftverekkel (KDE, GNOME, Firefox, ablakkezelõk) mûködnek, mint a Linux, és az irodai szoftverek, mint például az OpenOffice csomag is remekül mûködnek alattuk.


A *BSD rendszerek forráskódja régi, elavult és haldoklik

Noha a BSD rendszerek forráskódjának egyes részei akár több mint 20 évesek is lehetnek, egyáltalán nem jelenti azt, hogy elavult lenne vagy éppen haldokolna. Rengeteg profi felhasználó szereti azt a stabilitást, amelyet ez a többéves tesztelés hozott magával.

Technológiai fejlesztések továbbra is bekerülnek a *BSD rendszerekbe, mint például:

  • SMP: Symmetric Multi-Processing, vagyis a több processzorral rendelkezõ rendszerek használata.

  • SoftUpdates: A BSD állományrendszert legalább olyan gyorssá teszi mint a Linux által használt állományrendszerek, az aszinkron írási mûveletek engedélyezése - és így az ezzel járó kockázat - nélkül.

  • VM rendszer: A VM (Virtuális Memória) alrendszer folyamatosan fejlõdik. A VM/cache kialakítása segít a wcarchive.cdrom.com szolgáltatásához hasonló kiszolgálóknak a több ezer (konkrétan több mint 10 000) egyidejû FTP kapcsolat kiesésektõl mentes kezelésében.

  • Különbözõ architektúrák: A FreeBSD jelenleg hét fõ architektúrát támogat: Alpha, AMD64, i386, Itanium, PC-98, PowerPC és UltraSPARC. Jelenleg is folynak fejlesztések további architektúrák támogatására. Bõvebb információért lásd a Támogatott platformok oldalt.

  • MAC alrendszer: A FreeBSD támogatja a Mandatory Access Controlt, vagyis egy olyan funkciót, amely általában csak drága megbízható (trusted) operációs rendszerekben található meg. A FreeBSD ellenben kiemelkedõ biztonságot nyújt ingyen! A témával kapcsolatban a TrustedBSD Projekt kínál további kiegészítéseket.

  • GEOM alrendszer: A GEOM egy moduláris lemezkezelõ rendszer, amelynek segítségével összefûzhetünk, tükrözhetünk, csíkozhatunk vagy titkosíthatunk lemezeket. Funkcionalitásban gazdag, és biztonságban tartja az adatainkat.


A *BSD projektek egymással háborúznak, hetente válnak ki újabb felhasználói csoportok

Ez nem így van. Noha idõnként heves viták zajlanak a *BSD rendszerek képviselõi között, a projektek továbbra is együtt dolgoznak. A FreeBSD Alpha portja kezdetben nagyrészt a NetBSD csapat munkáján alapult. A NetBSD és az OpenBSD is a FreeBSD Portgyûjteményét vette alapul a saját portrendszerének kialakításakor. A FreeBSD és a NetBSD is vesznek át olyan biztonsági javításokat, amelyeket az OpenBSD-ben fedeznek fel elõször.

A FreeBSD és a NetBSD projektek több mint tíz éve váltak szét, azóta csak az OpenBSD és a DragonflyBSD számítanak újabb BSD projektnek.

A *BSD projektek más területen is együttmûködnek. Például a DaemonNews havonta frissülõ internetes magazin is a négy projekt tagjainak közös munkája.


A *BSD rendszereket nem fürtözni (párhuzamos számításokra)

A következõ (angol nyelvû) linkek pontosan ezt cáfolják:

Ezeken kívül még a freebsd-cluster levelezési lista is rendelkezésre áll a FreeBSD fürtözésével kapcsolatos kérdések megvitatására.


Nincs kereskedelmi támogatás a *BSD rendszerekhez

FreeBSD: A FreeBSD kereskedelmi oldala felsorolja azokat a cégeket, amelyek kereskedelmi támogatást nyújtanak a FreeBSD-hez.

A FreeBSD Mall szintén kínál kereskedelmi támogatást, illetve ezenkívül árusít pólókat, sapkákat, könyveket, szoftvereket és promóciós tárgyakat.

Tanfolyamok után a BSDMall.com oldalon érdeklõdhetünk, de egyéb termékeket is árulnak, mint például pólókat, sapkákat, könyveket és szoftvereket! Egy pillantást megér.

OpenBSD: Az OpenBSD kereskedelmi oldala tartalmazza a cégeket, amelyek kereskedelmi támogatást kínálnak az OpenBSD-hez.


Nincsenek alkalmazások a *BSD rendszerekhez

A nyílt forrású közösség túlnyomórészt BSD rendszereken (SunOS és hasonlók) kezdett el dolgozni. A *BSD rendszerek felhasználói általában módosítás nélkül le tudják fordítani ezeket az alkalmazásokat.

Továbbá minden *BSD projekt tartalmaz egy ún. “portrendszert”, amellyel a portolt alkalmazások lefordítását igyekszik megkönnyíteni.

FreeBSD: Jelenleg több, mint 16 000 alkalmazás tölthetõ le és telepíthetõ a FreeBSD Portgyûjteményén keresztül. Az i386 és AMD64 platformokon a Linux emulációs réteg képes futtatni a Linux alkalmazások nagy többségét. Az AMD64 és Itanium architektúrákon ezenkívül egy kompatibilitási réteg segítségével futtathatók a 32 bites FreeBSD alkalmazások.

NetBSD: A Linux emulációs réteg futtatja az i386 architektúrára készült Linux alkalmazások nagy többségét, a SunOS4 alkalmazások többsége pedig SPARCStation munkaállomásokon futtatható.

OpenBSD: Jelenleg több, mint 3 700 alkalmazás tölthetõ le és telepíthetõ az OpenBSD saját portgyûjteményének segítségével. A Linux emulációs réteg itt is képes futtatni az i386-os Linux alkalmazások nagy többségét, a SunOS4 alkalmazások többsége pedig SPARCStation munkaállomásokon futtatható.

A NetBSD és az OpenBSD is képes némi módosítással használni a FreeBSD Portgyûjteményében található alkalmazásokat, ezt tükrözi a portolt alkalmazásaik kisebb száma is.

Igaz, a legtöbb cég a Linuxot választja elõször, ha UNIX®-ra akarja portolni a szoftvereit. Szerencsére a *BSD rendszerek Linux emulációs rétege képes futtatni ezeket az alkalmazásokat (Acrobat, StarOffice, Mathematica, WordPerfect, Quake, az Intel ICC fordítója, a Compaq Alpha fordítója stb.) viszonylag gond nélkül, ha nem is problémamentesen.

Történeti példaként megemlítjük, hogy a Netscape Navigator elsõ verziója, amely Java támogatással futott a FreeBSD alatt, a linuxos verzió volt. A rendszer azonban most már futtathatja a Mozilla natív FreeBSD verzióját is, natív Java pluginnal. Mindez a Portgyûjtemény segítségével könnyen és kényelmesen telepíthetõ.


A *BSD rendszerek jobbak, mint más rendszerek

Ez csak a felhasználó ízlésétõl függ.


Más rendszerek jobbak, mint a *BSD rendszerek

Ez csak a felhasználó ízlésétõl függ.


Hozzájárulók

A FreeBSD, NetBSD, és OpenBSD projekt tagai, akik hozzájárultak ehhez az oldalhoz:

Nik Clayton <nik@FreeBSD.org>

Jordan Hubbard <jkh@FreeBSD.org>

Ian F. Darwin <ian@DarwinSys.com>

Adrian Filipi-Martin <adrian@ubergeeks.com>

Tom Rhodes <trhodes@FreeBSD.org>