archeolog.cz: Obří Hrad Keltské oppidum Stradonice Habrůvka, jeskyně Býčí skála pravěk datace, časová osa, pravěké dějiny
Apple iPad Smart Case šedá - Samsung Galaxy Tab 10.1 černé - Samsung Galaxy Tab 10.1 bíle - Puzdro Asus Eee Pad Versa černé - Pouzdro Apple iPad Smart Cover černé - Pouzdro POINT OF VIEW Mobii 7" černé - Pouzdro ZTE V9C-1 černé - Pouzdro Google Nexus 7 oražové - Pouzdro Google Nexus 7 šedé - Pouzdro Samsung Galaxy Note 10.1 bíle - Pouzdro Samsung Galaxy Note 10.1 černé
   Témata: Home

Výlety

Foto

Technika

Výhledy

Cestování

K zamyšlení


LINUX4ALL archiv

Na webu

Pobavení

Příroda

Report, Dokument

Sport

11.1 Kurz Linuxu - Priprava prekladu jadra

- STEFi - 2000-12-31 10:00:00
Tento serial o Linuxu byl vytvoren Milanem Cermakem v roce 2000 a s jeho svolenim zverejnen na strankach linux4all.misto.cz......


Příprava překladu jádra
=======================

Jako první se nabízí pochopitelná otázka, proč vůbec jádro překládat?
Důvodů může být několik.

1, Staré jádro nepodporovalo některou z vašich karet, ale nové jádro
už ano.
2, Vypuštěním nepotřebných ovladačů můžete zvýšit rychlost systému a
zmenšit velikost jádra (a tím uvolnit část paměti).
3, Nová verze jádra je rychlejší.
4, Nové jádro je prostě nové. (Častý důvod.)

Co pro to musíme udělat? Nejprve musíme sehnat zdrojový kód jádra.
Jakožto uživatelé Linuxu a licence GPL na to máme právo. Kódy jádra
jsou samozřejmě i součástí distribuce (aspoň o RedHatu a Debianu to
vím jistě). Druhým místem je internet. Primarním serverem je
"ftp.kernel.org", zrcadlem například brněnský "ftp.fi.muni.cz", kde se
aktuální zdrojové kódy objevují s půl az denním zpožděním.

Teď by asi nebylo od věci zmínit se o číslování verzí. Jde o to, že se
souběžně vydávají jak verze 2.0.xx, tak i 2.1.xx. Rozdíl je v tom, že
liché verze jsou vývojové a sudé jsou stabilní. Vývojové verze často
obsahují podporu pro různý nestandardní hardware, ale nejsou
odzkoušené a občas se i stane, že poslední verze nejde vůbec přeložit.
Stabilní verze jsou odzkoušené a, jak už název napovídá, stabilní.
Na serveru jsou verze odděleny různých adresářích. V každém z nich je
soubor (něco jako "LATEST-IS-2.0.36"), který udává číslo poslední
verze jádra.

!POZOR! Velikosti balíků jádra je pohybují kolem 8 MB u stabilní a
10 MB u vývojové řady.

Dále budeme pro překlad potřebovat programy "gcc", "binutils",
"bin86" a "make", případně některé další (což si RedHat a Debian
pohlídají). Všechny tyto programy by měly být součástí distribuce.

Když už tedy máme jádro stažené na svém počítači, rozbalíme ho do
adresáře "/usr/src" a zkontrolujeme, jestli jsou spravně nastaveny
symbolické linky v adresáři "/usr/include". To můžeme udělat například
příkazem:

ls -l linux asm scsi

mělo by se zobrazit toto:

asm -> /usr/src/linux/include/asm/
linux -> /usr/src/linux/include/linux/
scsi -> /usr/src/linux/include/scsi/

Může se stát, že tyto názvy jsou jmény adresářů. Ty pro jistotu
přejmenujte (třeba na "asm.old" apod.) a založte nové linky:

ln -s /usr/src/linux/include/asm asm
ln -s /usr/src/linux/include/linux linux
ln -s /usr/src/linux/include/scsi scsi

V adresáři "/usr/src" musí existovat link "linux", který má uvazovat
na adresář se zdrojovými kódy jádra.

Těsně před překladem bude nevhodnější staré jádro zazálohovat. Ono by
to nové třeba taky nemuselo fungovat. Tím nejmenším je asi kopie
jádra. Pokud tedy máte jádro v adresáři "/boot", zkopírujte ho
například takto:

cp /boot/vmlinuz /boot/vmlinuz.old

Pak je ještě vhodné upravit LILO tak, aby bylo schopné zavést i staré
jádro, například volbou "old".

Poslední věcí, kterou je vhodné udělat (zvlaště pokud je nové jádro
stejné verze a bude používat moduly), je přejmenovat adresář, kde jsou
umístěny moduly současného jádra. Pokud je naše jádro verze "2.0.34",
bude to tedy adresář "/lib/modules/2.0.34", který přejmenujeme na
"/lib/modules/2.0.34.old".

Tím jsme dokončili přípravu a můžeme se pustit do konfigurace a
překladu nového jádra. Ale až příště.
STEFi (c) 2004 - stefi [at] netdev [dot] cz
Pokud chcete zde publikované materiály použít, prosím, informujte mě. If you wish to use these published materials, please, let me know.
0.005 sec