Saját Kernel Fordítása Ubuntu 9.04 Rendszeren
- augusztus 8th, 2009
- Posted in GNU/Linux
- Write comment
Ebben a bejegyzésben röviden bemutatom hogyan lehet az utolsó Stable, azaz stabil verziójú kernelt saját számítógépünk hardvereihez igazítva fordítani, konfigurálni, telepíteni és használni.
- Új kernelek használatához akkor folyamodjunk, ha:
- Valamilyen hardverünk nem igazán úgy működik ahogy kéne
- Ha elég jól ismerjük a hardvereszközeinket, a szükségtelen kernelmodulokat eltávolíthatjuk a kernel konfigurálásakor, így az új kernellel a Bootoláshoz szükséges idő lerövidülhet
- Linux mélyebb megismerése, tanulás, hasznos időtöltés céljából
- Ellenőrizzük, hogy Generic Kernel megfelel-e elképzeléseinknek, mert ha igen, akkor magát a kernelfordítást kihagyhatjuk, Ubunturól lévén szó, Generic Kernelek elérhetőek DEB formátumban:
- Kernel forrás letöltése és elhelyezése
- Navigáljunk el a következő oldalra: http://kernel.org/
- Itt mindjárt a főoldalon elolvashatjuk a legutolsó stabil kernel változásait ( Changelog )
- Alul látni a magyarázatot a betűjeleknek, nekünk az “F”-re lesz szükségünk ( Full Source )
- Töltsük le a Full Source, rákattintva az “F” betűre. ( http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.XX.X.tar.bz2 )
- Mozgassuk a kernel forrást a következő helyre: /usr/src
- Kernelfordtáshoz szükséges csomagok telepítése
-
sudo apt-get install kernel-package libncurses5-dev fakeroot wget bzip2
-
- Kernel forrás kicsomagolása Szimbolikus link létrehozása
- Szerezzünk rendszergazdai jogosultságot:
-
sudo su
- Hajtsuk végre a kitömörítést:
-
cd /usr/src sudo su bzip2 -d linux-2.6.XX.X.tar.bz2 tar xvf linux-2.6.XX.X.tar
- Hozzunk létre egy szimbolikus linket “linux” néven:
-
ln -s linux-2.6.XX.X linux
- Meglévő kernel konfigurációs fájl másolása
-
cd linux cp /boot/config-`uname -r` ./.config
-
- Kernel konfigurálása
- Adjuk ki a következő parancsot:
-
make menuconfig
- Hasonlót kéne látnunk:
- Adjuk meg neki a “.config” fájlunkat, amit előző lépésben átmásoltunk:
- “Load an Alternate Configuration File”
- Egyből látni, hogy beírta magától: “.config”
- Üssünk Entert, majd konfiguráljuk a kernelünk úgy, ahogy szeretnénk
- Ha befejeztük a konfigurálást, mentsük el a módosításainkat ( nem muszáj módosítani, mivel másoltuk a konfigurációs fájlt így a jelenlegi kernel konfiguráció lesz érvényes ):
- Save an Alternate Configuration File
- Egy kis takarítás…
-
make-kpkg clean
-
- Kernel fordítás!
- Kernelfordítás elkezdéséhez, adjuk ki az alábbi parancsot.
Figyeljünk a “-[SAJATNEV]” szócskára.
Itt elnevezhetjük kernelünket tetszőlegesen, de ne legyen túl hosszú. Most, legyen a neve például: “-sajat” - Exportáljunk egy környezeti változót, hogy rásegítsünk a fordításhoz.
Ezt akkor exportáljuk, ha többmagos Processzorunk van, és szeretnénk is kihasználni.
A számérték a következőképp kell megadni: 1+[Ahány magos a CPU-nk].
Tehát: 1+2 = 3, ha 2 magos CPU-nk van.Adjuk ki tehát a következő parancsot az exportáláshoz 2 magos Rendszereken:
-
export CONCURRENCY_LEVEL=3
-
fakeroot make-kpkg --initrd --append-to-version=-[SAJATNEV] kernel_image kernel_headers
- Most egy kis pihenő, a Kernelfordítás viszonylag sok időt vesz igénybe, ez függ a CPU és a Memória teljesítményétől.
- Kernelfordítás elkezdéséhez, adjuk ki az alábbi parancsot.
- Kernel telepítése
- Kernelfordítás és csomagolás eredménye 2db deb telepítőcsomag. Az egyik a Kernel Image, a másik a Kernel Headers.
- Lépjünk egyel feljebbi mappaszintre:
- cd ..
- Telepítsük őket dpkg-vel, az alábbi módon:
- dpkg -i [csomagnév].deb
- Például:
- dpkg -i linux-headers-2.6.30.4-gorkhaanmod_2.6.30.4-gorkhaanmod-10.00.Custom_amd64.deb
- Grub Rendszerbetöltő beállítása
- Miközben a csomagokat telepíted a rendszer megkérdezi, hogy felülírja e a régi /boot/grub/menu.lst fájlt. Itt válaszd ki, hogy lecserélje a Grub menu.lst fájlt. ( első lehetőség )
- Install the package maintainers version
- Indítsd újra a rendszered, majd használd az új kernelt.





No comments yet.