Kerneli uuendamine

Kernelist ja sellega seonduvast on kirjandust rohkem kui seda suudab läbi närida. Tihti tunduvad just lihtsad asjad ülemõistuse keerulised. Need, kes kernelit lähtekoodist kompileerivad, seda artiklit vast lugema ei peakski, võibolla, et kommenteerimaks kirjutist ;) Lähtekoodi siin torkima ei hakka, samuti on see manual mõeldud eelkõige Slackware kasutajatele, kes soovivad oma purgid 'current' tasemel hoida. Alles see oli, kui ilmus Slackware 10 kerneliga 2.4.26, mõned päevad tagasi ilmus Slackware Changelog'i 2.4.27. Niisiis, soov on uuendada kernel uuema vastu ja nii, et pärast vahetust kõik toimiks (loomulikult paremini kui enne); Siin näites uuendatakse kernel 2.4.26 -> 2.4.27 Serveri, kust laen paketid, on ftp.slackware.at Esmalt on vajalik laadida vajalikud pakid:
wget ftp://ftp.slackware.at/slackware-current/slackware/a/kernel-modules-2.4.27-i486-1.tgz
wget ftp://ftp.slackware.at/slackware-current/slackware/d/kernel-headers-2.4.27-i386-1.tgz
ja kerneli (mina kasutan failisüsteemina XFS) mille kerneli failid asuvad kataloogis xfs.s
wget -r -nd ftp://ftp.slackware.at/slackware-current/kernels/xfs.s
System.map on kokkupakitud, pakin lahti:
gunzip System.map.gz
Kuivõrd kerneli uuendus muutub varem või hiljem taaskord aktuaalseks, muudan need kerneli failid pisut ringi, lisades kerneli põhitunnuse ja versiooni (-xfs-2.4.27) failide lõppu
mv System.map /boot/System.map-xfs-2.4.27
mv bzImage /boot/bzImage-xfs-2.4.27
Kasutades pakettihaldusvahendeid removepkg ja installpkg, eemaldan paketid:
removepkg kernel-headers-2.4.26-i386-1
removepkg kernel-modules-2.4.26-i486-1
ja paigaldan uued paketid:
installpkg kernel-headers-2.4.27-i386-1.tgz
installpkg kernel-modules-2.4.27-i486-1.tgz
muudan jooksvaks kataloogiks /boot
cd /boot
Vaikimisi on lilo häälestatud nõnda, et ta mõistab faile:
System.map
vmlinuz
Mõnele nendest failidest võib olla tehtud sümboolne link, eemalda lingid nendelt failidelt (kui on lingitud) ja koosta uued sümboolsed lingid:
ln -s bzImage-xfs-2.4.27 vmlinuz
ln -s System.map-xfs-2.4.27 System.map
Ja ongi peaaegu kõik valmis. Nüüd veel installeerida lilo:
lilo
ning teha arvutile restart:
telinit 6
See on üks väheseid juhuseid üldse, mil linux tahab restarti. Kui kõik sujus probleemideta, näed juba promptis Linux 2.4.27. Edu!

Teemad:

Kommentaarid

.
linux: be root, windows: reboot

Ausalt öeldes uuendan mina kernelit tõmmates kuskilt uue kerneli (nt 2.6.8-1 praegu), otsin veebist moodulid, installin moodulid ja kompileerin kerneli, et saada oma vajadustele sobiv kernel.
There's no bug in Windows Linux can't fix.