Ha egyszerre több számítógéppel is szeretnénk követni ugyanannak a forrásfának a változásait és ezért mindegyikre letöltjük a forrásokat majd újrafordítjuk ezeket, akkor sok erőforrást, de leginkább lemezterületet, hálózati sávszélességet és processzoridőt, feleslegesen használunk. Ezekkel úgy tudunk spórolni, ha valójában csak egyetlen géppel végeztetjük el a munka legtöbb részét, miközben a többi NFS használatával dolgozik. Ez a szakasz ezt a módszert foglalja össze.
Először is szedjük össze az egyező
binárisokat futtató gépeket, melyekre a
továbbiakban csak fordítási
csoport néven hivatkozunk. Minden
gépnek lehet saját rendszermagja, viszont a
felhasználói programok mindegyikőjük
esetében ugyanazok. Ebből a csoportból
válasszuk ki egy fordító
gépet. Ez lesz az a gép, amelyen a
rendszer és a rendszermag lefordításra
kerül. Ideális esetben ez a leggyorsabb gép,
amelynek elegendő a processzorkapacitása arra, hogy
lefuttassa a make buildworld
és
make buildkernel
parancsokat. Érdemes
még rajta kívül kiválasztanunk egy
tesztelő gépet is, ahol a
véglegesítés előtt
kipróbálhatjuk a
szoftverfrissítéseket. Ennek egy olyan
gépnek kell lennie, amely
akár hosszabb ideig is nélkülözhető
a csoportból. Lehet akár maga a
fordítást végző gép is, de nem
elvárás.
A fordítási csoportban levő összes
gépnek ugyanarról a gépről és
ugyanarra a pontra kell csatlakoztatnia a
/usr/obj
és
/usr/src
könyvtárakat. Ezek
optimális esetben a fordítással
foglalkozó gép két külön
lemezmeghajtóján vannak, melyek egyaránt
elérhetőek NFS-en keresztül. Ha több
fordítási csoportunk is van, akkor az
/usr/src
könyvtárnak
elegendő csak egyetlen fordító gépen
meglennie, a többi pedig csatlakoztassa NFS-en
keresztül.
Végül győzödjünk meg róla,
hogy az /etc/make.conf
és a
/etc/src.conf
állományok
tartalma a fordítási csoport mindegyik
gépénél megegyezik a fordító
gépével. Ez azt jelenti, hogy a
fordító gépnek az alaprendszer ugyanazon
részeit és ugyanúgy kell létrehozni,
mint amelyet a fordítási csoport akármelyik
gépére telepíteni is akarunk.
Ezenkívül még a fordítási
csoportban levő minden egyes gép
/etc/make.conf
állományában a KERNCONF
értékének a saját
rendszermagjára vonatkozó
konfigurációt kell megadni, illetve a
fordítással foglakozó gép
KERNCONF
változójánál pedig az együtt
összeset, a sajátjával kezdve. Ennek
megfelelően a fordító gépnek a
rendszermagok lefordításához rendelkeznie
kell az egyes gépek
/usr/src/sys/arch/conf
könyvtárában meglevő
állományaival.
Most, miután mindent megfelelően
előkészítettünk, készen
állunk a munkára. A 24.7.7.2. szakasz - Az alaprendszer fordításaban leírtak szerint
fordítsuk le a rendszermagokat és az alaprendszert
a fordító gépen, de utána még
nem telepítsünk semmit se. Ha
befejeződött a fordítás,
lépjünk be a tesztelő gépre és
telepítsük a frissen fordított rendszermagot.
Ha ez a gép NFS-en keresztül éri a
/usr/src
és
/usr/obj
könyvtárakat, akkor az
egyfelhasználós módban aktiválni
kell a hálózatot, majd csatlakoztatni ezeket. Ezt
legkönnyebben úgy tudjuk megcsinálni, ha a
gépet először elindítjuk
többfelhasználós módban, majd a
shutdown now
paranccsal
egyfelhasználós módba váltunk. Ha
eljuttunk ide, telepítsünk az új
rendszermagot és rendszert, illetve a megszokott
módon futtassuk a mergemaster
parancsot. Amikor ezt befejeztük, ezen a gépen
térjünk vissza a hétköznapi
többfelhasználós működési
módba.
Miután a tesztelésre szánt gépen ellenőriztük, hogy minden a megfelelő módon működik, az előbb tárgyalt eljárással telepítsük fel a fordítási csoportban levő összes többi gépre is az új szoftvereket.
Ugyanezt a gondolatmenet alkalmazható a portfa
esetében is. Az első és egyben legfontosabb
lépés a /usr/ports
csatlakoztatása ugyanarról a gépről a
fordítási csoport minden gépére. Az
/etc/make.conf
megfelelő
beállításával még a
terjesztési állományokat is meg tudjuk
osztani. A DISTDIR
értékét egy olyan közösen
használt könyvtárra állítsuk,
amely írható az NFS-en keresztül megosztott
állományrendszerünkben a
root
felhasználóként
tevékenykedők számára. A
WRKDIRPREFIX
változót minden
gépen egy helyi fordítási
könyvtárra állítsuk.
Zárásképpen még
hozzátesszük, hogy ha csomagokat akarunk
készíteni és mások
számára is elérhetővé tenni,
akkor ne felejtsük el a PACKAGES
változót a DISTDIR
változóhoz hasonlóan
beállítani.
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>.