Portál AbcLinuxu, 30. dubna 2025 12:58

Jak jsem kompiloval jádro

2.4.2005 18:10 | Přečteno: 1507× | slack

Můj již několikátý pokus o kompilaci jádra nedopadl nejlépe :o(

Už před časem jsem přešel od řady 2.4 na 2.6, což proběhlo bez komplikací, jelikož jsem si dal práci se čtením souboru README.initrd. Proto jsem hned po instalaci balíčků použil zaklínadlo

mkinitrd -c -k 2.6.10 -m reiserfs -f reiserfs -r /dev/hdb1
Mám totiž na prvním disku WXP kvůli hrám a Linux mám na druhém na reiserfs.Systém mi tehdy naběhl úplně v pohodě.

Teď jsem si tedy stáhl jádro 2.6.11 a postup zopakoval. Chtěl jsem si ho ale trochu přiohnout a to se mi žel nepovedlo. Neprováděl jsem žádné veké změny, jen jsem vybral typ procesoru (K7 neboli Athlon XP) a chtěl podporu reiserfs přímo v jádře a ne jako modul.
Pak následovala klasika

make bzImage
make modules
make modules_install
make install
To mi sice výsledek hodilo do /, ale já ho přesunul tam kde má být.

Po rebootu šlo vše v pořádku až do chvíle, kdy se měl natáhnout modul iptables. Začalo to řvát 'incorrect module format' a já byl v pytli.

Po několika pokusech jsem to vzdal, upravil symlinky v /boot zpátky a jedu na 2.6.11-generic, což mne vůbec netěší :o(

       

Hodnocení: -

zatím nehodnoceno
        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

2.4.2005 18:26 Lados | skóre: 6
Rozbalit Rozbalit vše Kompilace jádra 2.6
Odpovědět | Sbalit | Link | Blokovat | Admin
..a není pro jádro řady 2.6 správně
make && make modules_install
??
Max avatar 2.4.2005 21:00 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
presne tak....
#make && make modules_install
#cp /usr/src/linux/System.map /boot/
#cp /usr/src/linux/arch/i386/boot/bzImage /boot/kernelXXL
Zdar Max
Měl jsem sen ... :(
2.4.2005 21:06 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Já se raději vždy držím klasického postupu:
make oldconfig  # chceme-li stejnou konfiguraci jádra jako předchozí
make menuconfig # nepovinně, chceme-li ještě něco doupravit
make bzImage && make modules && make modules_install # jdeme na kafe :-)
a pak se už jen upraví /etc/lilo.conf a jádro nakopíruje do /boot a provést příkaz lilo a restartovat počítač.
2.4.2005 21:08 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Jo, ještě se musí nakopírovat System.map atd... ale to je snad jasné.

Stále hledám co možná nejjednodušší popis kompilace kernelu, aby byl ale zároveň co možná nejsrozumitelnější. Tohle je možná už zase až moc stručné...
2.4.2005 21:51 Michal
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
System.map jsem nikdy nekopiroval a tak nejak to funguje... Prichazim o neco kdyz to do /boot nedavam?
2.4.2005 21:57 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Ano.
2.4.2005 22:17 Michal
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
A o co?
2.4.2005 22:40 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
http://www.dirac.org/linux/system.map/

Jinak hledej na Googlu :-)
3.4.2005 00:53 Michal
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Diky, precteno. Presne jak jsem si myslel- neprichazim o nic.
3.4.2005 01:22 Michal Kubeček
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Přicházíte např. o hodnoty sloupce WCHAN ve výpisu 'ps l'.
2.4.2005 23:09 Robert Krátký | skóre: 94 | blog: Robertův bloček
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
make bzImage && make modules && make modules_install
make modules je u jader 2.6 skutečně zbytečné. Úplně stačí zadat
make && make modules_install
3.4.2005 01:25 Michal Kubeček
Rozbalit Rozbalit vše Re: Kompilace jádra 2.6
Zkuste použít 'make help' a zjistíte, že 'make' je totéž jako

  make vmlinux
  make bzImage
  make modules

Vzhledem k tomu, že cíle vmlinux a bzImage se liší jen nepatrně, je to prakticky totéž, jako používá tazatel.

2.4.2005 20:59 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše make oldconfig
Odpovědět | Sbalit | Link | Blokovat | Admin
pro příště
2.4.2005 21:07 Pavell | skóre: 22 | blog: Linuxový poznámkový blog | Hradec Králové
Rozbalit Rozbalit vše make install
Odpovědět | Sbalit | Link | Blokovat | Admin
S kompilací jádra problémy nemám. make xconfig
make clean
make bzImage && make modules (asi stačí jen make, ale tohle je ze zvyku :-))
Jako root pak make modules_install

make install jsem použil asi jednou. A pak už nikdy. Myslím si, že je tuhle poslední část lepší udělat ručně. Ale může to být třeba jen můj osobní vtroch. Je to zkopírování /usr/src/linux/arch/i386/boot/bzImage do /boot/jakekoliv_jmeno a take /usr/src/linux/System.map do /boot/System.map-verze-jadra. Pak ještě úprava zavaděče (při hraní je asi nej GRUB) a reboot.

Třeba je problém v tom initramdisku. Zkus všechno, co je ptřeba při startu dát do jádra. Pak není initrmdisk potřeba.
Kdyby každý nespokojený student napsal virus, neexistoval by jiný software.
2.4.2005 21:10 © | skóre: 37 | blog: escaped
Rozbalit Rozbalit vše Re: make install
Není to je váš osobní vrtoch, chci-li mít kontrolu, dělám to ručně. A to platí skoro o všem.
2.4.2005 21:54 akovi | skóre: 2
Rozbalit Rozbalit vše Re: make install
make install udělá v první řadě to, že zkotroluje, jestli existuje /sbin/installkernel, a když ano, tak ho spustí. Takže to nedělám patnáctrát ručně, ale jednou si napíšu skript (případně ho za mě už někdo napsal) a pak ho přes make install spouštím...

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.