A FreeBSD-nek két fejlesztési ága van: a FreeBSD.current és a FreeBSD-STABLE. Ebben a szakaszban mindegyikükről monduk pár szót, és megmutatjuk, miként lehet az adott ághoz igazítani a rendszerünk frissítését. Először a FreeBSD-CURRENT, majd a FreeBSD-STABLE változata kerül tárgyalásra.
Ahogy arról már az imént is szó esett, nem szabad elfelejtenünk, hogy a FreeBSD-CURRENT a FreeBSD fejlesztésének "frontvonala". Emiatt a FreeBSD-CURRENT használóinak szakmailag jólképzetteknek kell lenniük, és sosem szabad visszariadniuk a használat közben felmerülő rendszerszintű problémák önálló megoldásától. Ha korábban még nem foglalkoztunk FreeBSD-vel, kétszer is gondoljuk meg a telepítését!
A FreeBSD-CURRENT a FreeBSD mögött álló legfrissebb forráskódot képviseli. Itt találkozhatunk különféle olyan fejlesztés alatt álló részekkel, kísérletezésekkel és átmeneti megoldásokkal, amelyek nem feltétlenül kerülnek bele a szoftver következő hivatalos kiadásába. Noha a FreeBSD fejlesztői a FreeBSD-CURRENT forráskódját naponta fordítják, adódhatnak olyan időszakok, amikor a források mégsem használhatóak maradéktalanul. Az ilyen gondokat általában a lehető leggyorsabban igyekeznek megoldani, azonban attól függően, hogy éppen a forráskód melyik verzióját sikerült kifogni, a FreeBSD-CURRENT használata kész katasztrófa vagy akár a fejlődésben igazi továbblépés is lehet.
A FreeBSD-CURRENT használata elsősorban az alábbi 3 csoportot érinti:
A FreeBSD közösség azon tagjait, akik aktívan dolgoznak a forrásfa valamelyik részén, és mindazokat, akik számára a "legfrissebb" verzió használata feltétlen elvárás.
A FreeBSD közösség azon tagjait, akik aktívan tesztelnek, és a FreeBSD-CURRENT kordában tartásához hajlandóak időt áldozni a menet közben felbukkanó problémák megoldására. Vannak olyanok is, akik a FreeBSD változásaival és fejlesztési irányával kapcsolatban kívánnak javaslatokat tenni, melyeket javítások és módosítások formájában tesznek közzé.
Mindazokat, akik pusztán kíváncsiak a fejlesztésben zajló eseményekre, vagy hivatkozási szándékkal töltik le a legfrissebb forrásokat (például csak nézegetik, de nem futtatják). Az ilyen emberek esetenként megjegyzéseket fűznek a fejlesztéshez vagy kódot küldenek be.
Az olyan kiadás előtt álló funkciók kipróbálásának egyszerű módja, amelyekről hallottunk, hogy milyen remek újdonságokat hoznak és mi akarunk lenni az elsők, akik ezt használni is fogják. Ne feledjük azonban, hogy amikor mindenki előtt kezdünk el használni egy újítást, mi leszünk egyben az elsők is, akik szembesülnek a benne rejlő hibákkal.
A gyors hibajavítások eszköze. A FreeBSD-CURRENT szinte bármelyik változata pontosan ugyanakkora valószínűséggel hoz magával új hibákat, mint ahogy eltünteti a régieket.
Akármilyen értelemben is "hivatalosan támogatott". Képességeinktől függően őszintén igyekszünk a lehető legtöbbet megtenni a 3 "törvényes" FreeBSD-CURRENT csoportba tartozó emberekért, azonban egyszerűen nincs időnk komolyabb segítségnyújtást adni. Ez viszont nem azt jelenti, hogy komisz és fukar emberek vagyunk, akik utálnak segíteni a másiknak (de máskülönben nem tudna fejlődni a FreeBSD). Csupán a FreeBSD fejlesztése közben fizikailag képtelenek vagyunk a naponta érkező ezernyi üzenetet rendre megválaszolni! A FreeBSD előremozdítása és a kísérleti stádiumban álló kóddal kapcsolatos kérdések megválaszolása közül a fejlesztők általában az elsőt részesítik előnyben.
Iratkozzunk fel az freebsd-current és svn-src-head listákra. Ez nem egyszerűen hasznos, hanem elengedhetetlen. Ha nem vagyunk a freebsd-current listán, akkor nem fogjuk látni a rendszer aktuális állapotára vonatkozó megjegyzéseket, és így esetleg feleslegesen öljük az időnket olyan problémák megoldásába, amelyeket mások már korábban megoldottak. Ami viszont ennél is fontosabb, hogy így elszalasztjuk a rendszerünk folyamatos életbentartására vonatkozó létfontosságú bejelentéseket.
Az svn-src-head listán láthatjuk az a forráskód egyes változtatásaihoz tartozó naplóbejegyzéseket, a hozzájuk tartozó esetleges mellékhatások ismertetésével együtt.
A listákra vagy a http://lists.FreeBSD.org/mailman/listinfo oldalon található többi lista valamelyikére úgy tudunk feliratkozni, ha rákattintunk a nevére. A további lépésekről ezt követően itt kapunk értesítést. Amennyiben a teljes forrásfa változásai érdekelnek minket, javasoljuk az svn-src-all lista olvasását.
A tükrözések egyikéről töltsük le a FreeBSD forrását. Erre két mód is kínálkozik:
Használjuk a cvsup programot a
/usr/share/examples/cvsup
könyvtárban található
standard-supfile
állománnyal. Ez a leginkább
ajánlott módszer, hiszen így csak
egyszer kell letölteni az egész
gyűjteményt, majd ezután már
csak a változásokat. Sokan a
cvsup
parancsot a
cron
parancson keresztül
adják ki, és ezzel mindig automatikusan
frissítik a forrásaikat. A cvsup
működését a fentebb
említett minta supfile
állomány megfelelő
módosításával tudjuk a
saját környezetünkhöz
igazítani.
Az említett
standard-supfile
állomány eredetileg nem a
FreeBSD-CURRENT, hanem inkább a FreeBSD
biztonsági problémáit
érintő javítások
követésére használatos. A
FreeBSD-CURRENT forrásainak
eléréséhez a
következő sort kell
kicserélnünk ebben az
állományban:
*default release=cvs tag=RELENG_X
_Y
Erre:
*default release=cvs tag=.
A tag
paramétereként megadható
egyéb címkékről a
kézikönyv CVS
címkék szakaszában
olvashatunk.
Használjuk a CTM alkalmazás nyújtotta lehetőségeket. Amennyiben nagyon rossz netkapcsolattal rendelkezünk (drága vagy csak levelezésre használható) a CTM megoldást jelenthet számunkra. Legyünk azonban tekintettel arra, hogy helyenként zűrös lehet a használata és néha hibás állományokat gyárt. Emiatt viszont csak ritkán használják, így előfordulhat, hogy hosszabb ideig nem is működik. A 9600 bps vagy annál nagyobb sebességű kapcsolatok esetén ezért inkább a CVSup használatát javasoljuk.
Ha nem csak böngészésre, hanem fordításra is szedjük a forrásokat, mindig töltsük le a FreeBSD-CURRENT egészét, ne csak egyes részeit. Ez azzal magyarázandó, hogy a forráskód bizonyos részei más helyeken található részektől is függenek, és ezért az önálló fordításuk szinte garantáltan gondot fog okozni.
A FreeBSD-CURRENT lefordítása előtt
figyelmesen olvassuk át a
/usr/src
könyvtárban
található Makefile
állományt. A frissítési
folyamat részeként először
mindenképpen érdemes telepíteni egy új
rendszermagot és újrafordítani az
alaprendszert. Olvassuk el a FreeBSD-CURRENT levelezési lista
üzeneteit és a
/usr/src/UPDATING
állományt, ahol megtalálhatjuk az
ezzel kapcsolatos legújabb
információkat, melyek egy-egy újabb
kiadás közeledtével egyre
fontosabbá válnak.
Foglalkozzunk vele! Ha már a FreeBSD-CURRENT változatát használjuk, ne legyünk restek véleményt formálni róla, különösen abban az esetben, ha továbbfejlesztésekről vagy hibákra van szó. Leginkább a forráskóddal együtt érkező javaslatoknak szoktak örülni a fejlesztők!
A FreeBSD-STABLE az a fejlesztési ág, ahonnan az egyes kiadások származnak. Ebbe az ágba már más ütemben kerülnek a változások, mivel általánosan elfogadott, hogy ide a korábban már kipróbált módosítások vándorolnak át a FreeBSD-CURRENT ágból. Ez azonban még mindig csak egy fejlesztési ág, ami arra utal, hogy a FreeBSD-STABLE által adott pillanatban képviselt források nem feltétlenül felelnek meg bizonyos célokra. Ez csupán egy újabb fejlesztési nyomvonal, nem pedig a végfelhasználók kenyere.
Ha szeretnénk figyelemmel kísérni vagy valamilyen módon kiegészíteni a FreeBSD fejlesztési folyamatát, különösen a FreeBSD következő "nagyobb" kiadását illetően, akkor érdemes követnünk a FreeBSD-STABLE forrásait.
Habár a FreeBSD-STABLE ágba is bekerülnek a biztonsági jellegű javítások, ettől még nem kell feltétlenül ezt követnünk. A FreeBSD-hez kiadott biztonsági figyelmeztetések mindig leírják, hogyan kell javítani a hibát az érintett kiadásokban [12] , azonban az egész fejlesztési ágat felesleges csak biztonsági okból kifolyólag követni, mivel így olyan változások is kerülhetnek a rendszerbe, amire nincs szükségünk.
Habár igyekszünk gondoskodni a FreeBSD-STABLE ágban található források lefordíthatóságáról és működőképességéről, nem minden esetben szavatolható. Ráadásul mivel a FreeBSD-STABLE ágba kerülő kódokat először a FreeBSD-CURRENT ágban fejlesztik ki, és mivel a FreeBSD-STABLE felhasználói többen vannak a FreeBSD-CURRENT változaténál, ezért szinte elkerülhetetlen, hogy ilyenkor a FreeBSD-STABLE változatban bizonyos hibák és szélsőséges esetek be ne következzenek, amelyek a FreeBSD-CURRENT használata során még nem buktak ki.
Ezért a FreeBSD-STABLE ág vakon követését senkinek sem ajánljuk, és különösen fontos, hogy éles szervereken előzetes kimerítő tesztelések nélkül ne futassunk FreeBSD-STABLE rendszert.
Ha ehhez nem rendelkezünk elegendő erőforrással, akkor egyszerűen használjuk a FreeBSD legfrissebb kiadását, és az egyes kiadások között pedig bináris frissítéssel közlekedjünk.
Iratkozzunk fel a freebsd-stable listára. Ezen keresztül értesülhetünk a FreeBSD-STABLE használata során felmerülő fordítási függőségekről vagy más, külön figyelmet igénylő problémákról. Gyakran ezen a levelezési listán elmélkednek a fejlesztők a vitatott javításokról vagy frissítésekről, amibe a felhasználók is beleszólhatnak, ha a szóbanforgó változtatással kapcsolatban bármilyen problémájuk vagy ötletünk van.
Iratkozzunk fel a követni kívánt ághoz tartozó SVN levelezési listára. Például ha a 7-STABLE ág változásait követjük, akkor az svn-src-stable-7 listára érdemes feliratkoznunk. Ennek segítségével elolvashatjuk az egyes változtatásokhoz tartozó naplóbejegyzéseket, a rájuk vonatkozó esetleges mellékhatások ismertetésével együtt.
Ezekre, valamint a http://lists.FreeBSD.org/mailman/listinfo címen elérhető listák valamelyikére úgy tudunk feliratkozni, ha a nevükre kattintunk. A további teendők ezután itt jelennek meg.
Amennyiben egy új rendszert akarunk telepíteni és a FreeBSD-STABLE havonta készült pillanatképeit akarjuk rajta futtatni, akkor erről bővebb felvilágosítást a Pillanatképek honlapján találhatunk (angolul). Emellett a legfrissebb FreeBSD-STABLE kiadást telepíthetjük a tükrözések valamelyikéről is, majd innen a lentebb található utasítások szerint tudunk hozzáférni a FreeBSD-STABLE forráskódjának legfrissebb változatához.
Ha már fut a gépünkön a FreeBSD egy korábbi kiadása, és ezt akarjuk forráson keresztül frissíteni, akkor ezt a FreeBSD tükrözéseivel könnyedén megtehetjük. Két módon is:
Használjuk a cvsup programot a
/usr/share/examples/cvsup
könyvtárból származó
stable-supfile
állománnyal. Ez a leginkább
ajánlott módszer, mivel így csak
egyszer kell letölteni a teljes
gyűjteményt, utána már csak
a hozzá tartozó
változtatásokra van
szükségünk. A
cvsup
parancsot sokan a
cron
segítségével futtatják,
és ezzel automatikusan frissülnek a
forrásainak. A cvsup
működését
környezetünkhöz az előbb
említett minta supfile
megfelelő
módosításával tudjuk
behangolni.
Használjuk a CTM programot. Ha nincs olcsó vagy gyors internetkapcsolatunk, akkor érdemes ezt a módszert választani.
Alapvetően azonban ha gyorsan szeretnénk
hozzájutni a forrásokhoz és a
sávszélesség nem
meghatározó tényező, akkor
helyette válasszuk a cvsup
vagy
az ftp
használatát,
és csak minden más esetben
CTM-et.
Mielőtt lefordítanánk a FreeBSD-STABLE
változatát, figyelmesen olvassuk át a
/usr/src
könyvtárban
levő Makefile
állományt. Az átállási
folyamat részeként először minden
bizonnyal telepítenünk kell egy
új rendszermagot és újra kell
fordítanunk az alaprendszert. A FreeBSD-STABLE levelezési lista
valamint a /usr/src/UPDATING
elolvasásából
értesülhetünk azokról az
egyéb, gyakran nagyon fontos
változásokról, melyek
elengedhetetlenek lesznek a következő
kiadás használatához.
[12] Ez azért nem teljesen igaz. A régebbi FreeBSD kiadásokat ugyan nem támogathatjuk a végtelenségig, de általában így is több évig foglalkozunk velük. A FreeBSD régebbi kiadásaival kapcsolatos jelenleg érvényes biztonsági házirend részletes bemutatása a http://www.FreeBSD.org/security/ oldalon olvasható (angolul).
Ha kérdése van a FreeBSD-vel kapcsolatban, a
következő címre írhat (angolul):
<questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon:
<gabor@FreeBSD.org>.