Dobrodošli na wiki srpske Slackware zajednice. Za izmenu sadržaja je neophodno registrovati nalog. Pre uređivanja ili dodavanja sadržaja poigrajte se sa wiki sintaksom u igralištu.

Rezime: ovo uputstvo se bavi instalacijom novijeg kernela na Slackware sistem na primeru kernela 3.5.3.

Uputstvo podrazmeva da ste ulogovani kao root. Ako niste, otvorite emulator terminala (xterm, rxvt, urxvt, konsole, Xfce Terminal) i otkucajte:

su

Zatim nastavite sa praćenjem uputstva.

Priprema

Izvorni kod Linuks kernela se nalazi u /usr/src. Prebacite se u taj direktorijum:

cd /usr/src

Preuzmite i raspakujte arhivu sa izvornim kodom:

wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.5.3.tar.bz2
tar xvf linux-3.5.3.tar.bz2

Uklonite arhivu i prebacite se u novokreirani direktorijum:

rm linux-3.5.3.tar.bz2  
cd linux-3.5.3

Konfiguracija

Prekopirajte konfiguraciju trenutno aktivnog kernela:

zcat /proc/config.gz > .config

Da bismo prilagodili konfiguraciju starijeg kernela novom, potrebno je pokrenuti:

make oldconfig

ili

make silentoldconfig

Razlika između ove dve opcije je da će oldconfig postaviti pitanja za svaku od dodatih opcija u novoj verziji kernela. Silentoldconfig će automatski primeniti podrazumevana podešavanja za nove opcije.

Ako izaberete silentoldconfig, uvek možete naknadno pokrenuti:

make menuconfig

… i izabrati potrebne opcije u ncurses meniju. Prednost menija je i u tome što su opcije kategorizovane. To znači i da je lakše naći opciju ili opcije koje potrebno promeniti.

Za ljubitelje grafičkog interfejsa, takođe je moguće pokrenuti i grafičke menu interfejse:

make xconfig

odnosno

make gconfig

Imajte na umu da ove dve opcije zahtevaju dodatne zavisnosti (Qt odnosno Gtk).

Izgradnja

Da biste izgradili kernel i odgovarajuće module dovoljno je otkucati:

make

Za naprednije korisnike će možda biti zanimljive i dodatne opcije izgradnje (kao i konfiguracije i instalacije):

make help

Instalacija

Prvo instaliramo module kernela:

make modules_install

Zatim kopiramo kernel, konfiguraciju i tabelu simbola koju koristi kernel u /boot:

cp arch/i386/boot/bzImage /boot/vmlinuz-3.5.3-smp 
cp .config /boot/config-3.5.3-smp
cp System.map /boot/System.map-3.5.3-smp

Zatim dodajte novi unos /etc/lilo.conf. Umesto /dev/sda6, unesite particiju na kojoj se nalazi Slackware na vašoj mašini.

image = /boot/vmlinuz-3.5.3-smp
   root = /dev/sda6
   label = Linux-Test
   read-only

Da bi unos bio dodat potrebno je i pozvati lilo bez parametra:

lilo

Pri sledećem bootu, u LILO boot meniju će se pojaviti nova opcija: „Linux-Test“. Izaberite je i pokrenite sistem.

Postavljanje novog kernela kao podrazumevanog

Ukoliko ste testirali novi kernel i sve radi ok, možete ga postaviti i kao podrazumevani:

cd /boot
rm vmlinuz System.map config
ln -s /boot/vmlinuz-3.5.3-smp /boot/vmlinuz
ln -s /boot/System.map-3.5.3-smp /boot/System.map
ln -s /boot/config-3.5.3-smp /boot/config

Zatim obrišite Linux-Test unos iz lilo.conf i pokrenute lilo bez parametara:

lilo

Takođe možete napraviti i unos za stari Linux kernel. Ovo je preporučljivo kao backup opcija u slučaju problema sa novim kernelom. Napr:

image = vmlinuz-huge-smp-3.2.28-smp
   root = /dev/sda6
   label = Linux-Old
   read-only

Napomene

Vlasnički drajveri za grafičke karte

Ukoliko koristite vlasničke drajvere za grafiku, biće potrebno ponovo pokrenuti instalacioni program. Ukoliko vam se sistem pokreće u init nivou 4, najbolje je da to privremeno promenite u 3 (/etc/inittab). Nakon restarta, sistem neće automatski pokrenuti X server i bićete u mogućnosti da pokrenete instalacioni program vlasničkog drajvera. Nakon što se instalacija uspešno završi, možete vratiti podrazumevani init nivo na 4.

Ako imate problema sa instalacijom vlasničkih drajvera na nekom od novijih kernela, pogledajte da li je izašla novija verzija. Ako nije, najčešće je patch dostupan na nekoj od brojnih mailing lista ili internet forumima.

VirtualBox virtualni drajveri

Nakon reinstalacije kernela potrebno je i prekompajlirati drajvere za VirtualBox uređaje. Instalacija Non-Free verzije VirtualBoxa postavlja simbolički link ka izvornom kodu u /usr/src/vboxhost-<VERZIJA>, gde je <VERZIJA> numerička vrednost instalirane verzije VBox-a (napr: vboxhost-4.1.20).

cd /usr/src/vboxhost-4.1.20
make
make install

LILO

Koliko sam primetio iz tema na ovom forumu, većina multibootera koristi grub2 kao primarni boot loader na sistemu. GRUB2 pokušava da učita boot loader s početka particije na kojoj se nalazi Slackware, ali pošto on ne postoji (podrazumevano se LILO instalira u MBR i biva prepisan prilikom instalacije GRUB2), pokušava da pročita vrednosti iz lilo.conf.

Jedna od opcija za rešavanje problema je i pokušaj da se boot sektor zapiše na početak particije umesto u MBR. Za ovo je potrebno samo promeniti opciju boot u /etc/lilo.conf. Tj. umesto:

boot=/dev/sda

upisati:

boot=/dev/sda[n]

Gde je [n] broj particije na čiji početak pokušavamo da instaliramo LILO boot sektor (napr: /dev/sda3 ili /dev/sdb6).

I zatim pokrenuti LILO bez parametara:

lilo

QR Code
QR Code uputstva:kompajliranje_i_instalacija_novog_kernela (generated for current page)