Kako da kompajlirate Linux kernel na Debian-u?

Debian kao i ostale Linux distribucije dolazi sa svojim prepodešenim generičkim kernelom koji uključuje podršku za veliki broj hardverskih komponenti. Generalno, velika većina drajvera uključena u generički kernel vam nije potrebna, i samo bespotrebno zauzima raspoložive resurse.

Kompajliranjem kernela, vi možete isti optimizovati i prilagoditi svojim hardverskim komponentama, i time dobiti respozivniji sistem, bolju upotrebu memorijskih i procesorskih resursa, kao i obezbediti podršku za hardver koja nije dostupna u generičkom kernelu.

U ovom tutorialu ćemo objasniti kako da kompajlirate Linux kernel na Debian-u koristeći nemodifikovani izvorni kod kernela sa http://www.kernel.org/.

Pre nego što se upustite u proces kompajliranja, potrebno da na svom sistemu instalirate neophodne alatke za kompajliranje. Otvorite Terminal i pokrenite sledeću komandu:

# apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential libqt3-mt-dev

Zatim, sa http://kernel.org/ preuzmite najnoviju stabilnu verziju Linux kernela (trenutna stabilna verzija je 2.6.37.2):

# cd /tmp
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.37.2.tar.bz2

Raspakujte preuzetu tar.bz2 arhivu u /usr/src direktorijum:

# tar -xvjf linux-2.6.37.2.tar.bz2 -C /usr/src

Prebacite se u /usr/src/linux-2.6.37.2 direktorijum:

# cd /usr/src/linux-2.6.37.2

Zatim, iskopirajte konfiguracioni fajl starog kernela, čime ćete u značajnoj meri olakšati konfiguraciju novog:

# cp /boot/config-`uname -r` ./.config

Spremni ste za konfigurisanje novog kernela. Za tu namenu možete koristiti neku od sledećih alatki: menuconfig, xconfig (Qt) i gconfig (Gtk). U ovom tutorialu koristićemo xconfig zbog jednostavnosti upotrebe ove alatke. Pokrenite:

# make xconfig

Nakon pokretanja make xconfig komande, otvoriće se prozor sa puno konfiguracionih opcija. Ono što je bitno, u General setup meniju pronađite i uključite Optimize for size opciju. Takođe pokrenite kombinaciju tastera Ctrl+F i u prozoru koji se otvorio unesite u pretragu kernel debug i kliknite na Search. Isključivanje kernel debug opcije će u značajnoj meri smanjiti veličinu kernela.

Kada završite sa podešavanjima, kliknite na Save ikonicu i izađite iz prozora aplikacije.

Zatim, pokrenite komandu:

# make-kpkg clean

I započnite kompajliranje novog kernela pokretanjem komande:

# fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers

Umesto -custom možete staviti bilo koju reč kojom ćete identifikovati novi kernel, ali ista mora počinjati sa (-) znakom, na primer -pera.

Nakon završenog kompajliranja, u vašem /usr/src direktorijumu su kreirana dva .deb paketa linux-image i linux-headers. Možete ih instalirati jednostavno dvoklikom ili upotrebom komande dpkg:

# cd ..
# dpkg -i linux-image-2.6.37.2-custom_2.6.37.2-custom-10.00.Custom_i386.deb
# dpkg -i linux-headers-2.6.37.2-custom_2.6.37.2-custom-10.00.Custom_i386.deb

Ove .deb pakete možete instalirati i na drugim Debian sistemima, bez potrebe da ih kompajlirate ponovo.

I na kraju, restartujte sistem:

# reboot

Ukoliko budete imali nekih problema sa novim kernelom, uvek iz Grub menija možete odabrati stari generic kernel.

Kategorija članka: 

Dodaj novi komentar