Vissza Előre Tartalom

4. A kernel fordítása

4.1 Törlések és függõségek

Amikor a konfiguráló script véget ér, azt is mondja, hogy add ki a `make dep' és a `make clean' parancsokat. A `make dep' ellenõrzi, hogy az összes függõség, mint például az include fájlok, a helyükön vannak-e. Nem tart sokáig, hacsak a géped nem nagyon lassú. Egy `make clean'-t is csinálni kell. Ez letörli az összes object fájlt és néhány egyéb dolgot, amit a régi verzió hátrahagy. Mindenesetre ne felejtsd el ezt a lépést, mielõtt megpróbálod újrafordítani a kernelt.

4.2 Fordítási idõ

A `make dep' és `make clean' után jöhet a `make zImage' vagy `make zdisk' (Ez az a rész, ami sokáig tart.) A `make zImage' lefordítja a kernelt és (többek között) egy `zImage' nevû fált hagy maga után a arch/i386/boot-ban. Ez az új tömörített kernel. A `make zdisk' ugyanezt teszi, de az új zImage-t rámásolja egy floppyra, amelyet addigra remélhetõleg már betettél az ``A:'' drive-ba. A `zdisk' nagyon kényelmes az új kernelek teszteléséhez. Ha lefagy (vagy egyszerûen csak nem mûködik jól), akkor csak kiveszed a floppyt és bootolhatsz a régi kernellel. Akkor is jól jön, ha véletlenül letörlöd a kernelt (vagy valami hasonló szörnyûség történik). Új rendszerek telepítésére is lehet használni; az egyik lemez tartalmát egyszerûen átmásolod a másikra.

Minden valamirevaló újabb kernel tömörítve van, ezért van `z' a nevük elõtt. A tömörített kernel automatikusan kicsomagolja magát, amikor végrehajtódik.

4.3 A ``make'' egyéb opciói

A `make mrproper' alaposabb törlést végez. Néha szükség van rá, ajánlott minden patch alkalmával végrehajtani. A `make mrproper' a konfigurációs fájlt (.config) is letörli, ezért csinálj róla biztonsági másolatot, ha megtartásra érdemesnek találod.

A `make oldconfig' megpróbálja egy régi konfigurációs fájl alapján konfigurálni a kernelt; elvégzi helyetted a `make config' lépést. Ha még sosem fordítottál kernelt vagy nincs régi konfigurációs fájl kéznél, akkor ne tedd, mert minden bizonnyal meg kell változtatni az alapértelmezett konfigurációt.

A `make modules' leírása a modulokról szóló fejezetben található.

4.4 A kernel installálása

Ha kész van a kernel és az úgy is mûködik, ahogy szeretnéd, itt az ideje installálni. A legtöbben a LILO-t (Linux Loader) használják erre célra. A `make zlilo' installálja a kernelt, lefuttatja rajta a LILO-t, és bootolásra kész állapotba hozza, DE CSAK AKKOR, ha a LILO a következõképpen van konfigurálva: a kernel /vmlinuz, a LILO az /sbin-ben van, és a LILO konfigurációs fájl (/etc/lilo.conf) tartalma is ennek megfelelõ.

Ellenkezõ esetben közvetlenül kell a LILO-t használni. Eléggé könnyû installálni és használni, de a konfigurációs fájl hajlamos összezavarni az embereket. Nézd meg a konfigurációs fájlban (a régebbi verzióknál /etc/lilo/config, az újaknál /etc/lilo.conf), hogy mi az aktuális beállítás. A konfigurációs fájl így néz ki:

    ...
    image = /vmlinuz
        label = Linux
        root = /dev/hda1
        ...

Az `image =' az aktuális kernelre mutat. A legtöbben /vmlinuz-t használnak. A `label' alapján dönti el a lilo, hogy melyik kernelt, vagy operációs rendszert indítsa el, és a `root' az adott operációs rendszert gyökérkönyvtára. Készíts biztonsági másolatot a régi kernelrõl és másold a frissen fordított zImage-t a helyére. (Például, ha `/vmlinuz'-t használsz, azt mondod, hogy `cp zImage /vmlinuz') Ezután futtasd a lilo-t -- az újabb rendszereken elég annyi, hogy `lilo', de régebbieken lehet, hogy /etc/lilo/install , vagy akár /etc/lilo/lilo -C /etc/lilo/config kell.

Ha szeretnél többet tudni a LILO konfigurálásáról, vagy nincs is meg neked, akkor szerezd meg a legújabb verziót a kedvenc ftp helyedrõl és kövesd az utasításokat.

Ha szeretnél egy régi kernelt bootolni a merevlemezrõl (így is megmenekülhetsz, ha az újat elrontottad), másold le a lilo konfigurációs fájlban az `image = xxx' sort és az utánna következõ sorokat a fájl aljára, és változtasd meg az `image = xxx' sort `image = yyy'-ra, ahol `yyy' annak a fájlnak a teljes elérési útvonala, amelybe a régi kernelt mentetted. Azután változtasd meg a `label = zzz' sort `label = linux-backup'-ra és futtasd a lilo-t. Lehet, hogy be kell tenni egy `delay=x' sort is a konfigurációs fájlba, ahol x az az idõ tizedmásodpercben megadva, amennyit a lilo vár mielõtt bootolna. Így meg lehet szakítani (például a shift billentyûvel) és be lehet írni a régi kernel címkéjét, ha valami kellemetlen történik az újjal.


Vissza Előre Tartalom