RSS Feed

Kompilacja kernela dla leniwych

2010/06/11 by admin

Wszystkie operacje instalacji możemy przeprowadzić albo w konsoli albo za pomocą Yasta (tych tłumaczyć nie będę bo możemy je wyklikać).
Otwieramy konsole i logujemy się na rooota za pomocą polecenia su.
Wpisujemy:

zypper install make ncurses-devel gcc gcc-c++ gcc-objc gcc-locale kernel-source kernel-syms

wszystkie pakiety zaczynające się na gcc-* to kompilator i jego okolice, kernel-* to żródła właściwe, ncurses-* to biblioteka potrzebna do konfiguracji źródeł (metodą menuconfig – nie mylić z niezbędne lub konieczne) by ostatecznie otrzymać plik .config.

Wydajemy następną komendę:

make menuconfig

po niedługiej chwili pokazuje się konfigurator w którym poruszamy się za pomocą strzałek klawiatury, entera i 2 x ESC.

Przechodzimy do sekcji Processor type and features >> Processor family (tu wybieramy właściwy dla nas) oraz Preemption model >> Preemtible kernel (Low-Latency Desktop) i jeszcze jedna ważna opcja do zmiany Time Frequency >> 1000 Hz.

Można po odznaczać nie potrzebne nam moduły szczególnie innych procesorów oraz dodatków do laptopów jeśli to maszyna stacjonarna. Jednakże napisałem w temacie, że dla leniwych bo właściwie większość opcji zostaje skopiowanych z dystrybucyjnego configa który jest zapisany w katalogu /boot.

Po wykonaniu tych operacji, wykonujemy następujący ciąg :

make -jx(+1) && make modules

x(+1) to liczba rdzeni /procesorów które ma wykorzystać kompilator, według przyjętej normy zawsze ta licza powinna być powiększona o jeden. Więc jeśli mamy 4 rdzenie do dyspozycji dobrą liczą będzie 3 jeśli nadal chcemy korzystać z komputera podczas kompilacji.

Teraz najprzyjemniejsza rzecz idziemy na kawę, pograć w bilard, na piwo etc.

Make jest o tyle wygodny, że jeśli mamy potrzebę przerwania go, to robimy w skrótem ctrl + c i możemy go wznowić wywołując ponownie powyższą komendę.

Więc po 30 do 45 min  make powinien zakończyć się i moduły powinny być gotowe do instalacji. Zanim jednak wywołamy instalacje modułów kernela wykonamy jeszcze jedne polecenie ( !! tylko jeśli kompilujemy źródła kernela już zainstalowanego, czyli tą samą wersję na której właśnie siedzicie :) ).

mv /lib/modules/2.6.xx-x-default/ /lib/modules/2.6.xx-x-default.old/

to spowoduje że wszystkie zainstalowane już moduły trafiają do innego katalogu, i nie nadpiszemy ich następną komendą

make modules_install && make install .

Jeżeli w katalogu /boot będziemy mieli zainstalowany taki sam kernel to zostanie również zmieniona jego nazwa na old, jeżeli coś pójdzie nie tak to zawsze możemy zajrzeć do pliku menu.lst lub lilo.conf (koniecznie pamiętaj wykonać komendę lilo w momencie gdy zmieniałeś cokolwiek w pliku konfiguracyjnym lilo.conf).

Ostatnia komenda to reboot po której okaże się czy coś spartoliliśmy czy też nie ;-) .



Brak komentarzy »

Brak komentarzy.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>