Kernel: Porovnání verzí
Bez shrnutí editace |
|||
Řádek 37: | Řádek 37: | ||
make-kpkg clean | make-kpkg clean | ||
fakeroot make-kpkg --revision=kernel-dvb kernel_image | fakeroot make-kpkg --revision=kernel-dvb kernel_image | ||
=Kompilace modulů= | |||
Pokud je potřeba do stávajícího kernelu přeložit pouze nějaký novější modul, není potřeba překládat celý kernel - stačí mít jen správný balíček kernel-headers-x-y a správné symlink-y v /usr/src. | |||
Nejjednoduší je ovšem použít module-assistant: | |||
apt-get install module-assistant | |||
m-a update | |||
m-a prepare | |||
Příkaz m-a umí stáhnout deb balíček se zdrojákem modulu přímo z repozitáře debianu, přeložit ho a nainstalovat, např.: | |||
m-a a-i ndiswrapper | |||
Pokud ale chceme modul, který debian v repozitáři nemá - např. poslední verzi driveru ath5k nebo e1000, pak role m-a končí příkazem "m-a prepare". Následuje běžné stažení a pak kompilace a instalace modulu přes "make install". | |||
=Problémy= | =Problémy= |
Verze z 26. 7. 2010, 16:18
Kompilace
Nainstalujeme potřebné balíky.
apt-get install kernel-package ncurses-dev fakeroot wget bzip2
Stáhneme si potřebnou verzi kernelu ze stránek http://www.kernel.org/pub/linux/kernel/v2.6/.
cd /usr/src wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.gz
nebo
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2
a rozbalíme
tar zxvf linux-2.6.30.tar.gz
nebo
tar xjf linux-2.6.30.tar.bz2
Přejdeme do složky
cd linux-2.6.30
Pod debianem zkompilujeme kernel následujícím způsobem.
Nakonfigurujeme kernel pomocí
make menuconfig
nebo použijeme nastavení aktuálního kernelu
make oldconfig
No a přeložíme kernel. Vznikne nám deb balíček a ten jednoduče nainstalujeme pomocí dpkg -i
make-kpkg clean fakeroot make-kpkg --revision=kernel-dvb kernel_image
Kompilace modulů
Pokud je potřeba do stávajícího kernelu přeložit pouze nějaký novější modul, není potřeba překládat celý kernel - stačí mít jen správný balíček kernel-headers-x-y a správné symlink-y v /usr/src.
Nejjednoduší je ovšem použít module-assistant:
apt-get install module-assistant m-a update m-a prepare
Příkaz m-a umí stáhnout deb balíček se zdrojákem modulu přímo z repozitáře debianu, přeložit ho a nainstalovat, např.:
m-a a-i ndiswrapper
Pokud ale chceme modul, který debian v repozitáři nemá - např. poslední verzi driveru ath5k nebo e1000, pak role m-a končí příkazem "m-a prepare". Následuje běžné stažení a pak kompilace a instalace modulu přes "make install".
Problémy
Překlad vlastního linux kernelu je vždy porod - s novými verzemi přichází stále nová překvapení.
Momentálně zápasím s Romanovým 2.6.21.7-smp-xeon, který ve VmWare jede, ale při bootu se objeví tato chybová hláška: