Kerneli kohandamine pole kõigile mõeldud. Pange tähele, enne kui proovite mõnda seda, et see võib teie süsteemi murda.
Seal on hulgaliselt põhjuseid, mida soovite oma kerneli kohandada. Võimalik, et tahate oma kerneli piirata ainult vajalike teenustega, eriti kui kasutate serverit või pühendunud seadet, mis vajab ainult olulisi asju. Võib-olla peate oma kerneli parandama, et toetada riistvara, mida praegu ei toeta kernel.
See artikkel ei selgita, kuidas teie kernelit parandada, vaid seda, kuidas kohandada oma praegust. Mul on veel üks täiendav artikkel, mis selgitab, kuidas teie kernel parandada ja mõned praktilised põhjused, miks te tahate seda teha.
Alustamiseks peame välja selgitama, millise versiooni kernel meil praegu töötab. Me kasutame selleks uname-käsklust
$ uname -r
2.6.17-10-generic
Nüüd peame oma kerneli linuxi allika installima, märkan, et käivitan 2.6.17-10 kerneli, nii et paigaldaja joon seda peegeldab. Selle artikli tähenduses võite asendada kerneli numbritega kõik, mida te töötate. Peame ka curses library ja mõned muud tööriistad, et aidata meil koostada.
sudo apt-get install linux-source-2.6.17 kernel-package libncurses5-dev fakeroot
Kui teil on uudishimulik, kus Linuxi allikas installitakse, võite kasutada käsku dpkg pakettide failide edastamiseks. Siin on minu süsteemi väljund:
$ dpkg -L linux-source-2.6.17 /. /usr /usr/src /usr/src/linux-source-2.6.17.tar.bz2 /usr/share /usr/share/doc /usr/share/doc/linux-source-2.6.17 (trimmed)
Näeme, et allikas on installitud kataloogi / usr / src kataloogi.
Et teha asju lihtsamaks, paneme end juurerežiimi, kasutades sudo uut shelli avamiseks. Selleks on ka teisi võimalusi, kuid eelistan sellisel viisil.
sudo /bin/bash
Nüüd vahetage kataloog allika asukohta, et saaksime seda installida. Pange tähele, et peate installima bunzip-utiliidi, kui see pole installitud. (see oli minu juures)
cd /usr/src
bunzip2 linux-source-2.6.17.tar.bz2
tar xvf linux-source-2.6.17.tar
ln -s linux-source-2.6.17 linux
Tehke oma olemasoleva kerneli konfiguratsiooni koopia, mida kasutada kohandatud kompileerimisprotsessi jaoks. Pange tähele, et "tähemärk on tilde all"
cp /boot/config-`uname -r` /usr/src/linux/.config
Nüüd käivitame utiliidi, mis võimaldab meil kerneli kohandada:
cd /usr/src/linux
make menuconfig
Esiteks, mine alla alternatiivse konfiguratsioonifaili laadimisele ja laadige.config-fail. (vajuta lihtsalt sisenemiseks)
Nüüd, kui oleme utiliidi sees, võime seada meie kohandatud kerneli valikud. Navigeerimine on üsna lihtne, kui sa kaotad, on ülaosas legend. Otsustasin valida Networking ja vajuta Enter klahvi, et minna sellesse kategooriasse.
Kui olete lõpetanud mõnevõrra vajaliku valiku, vajutage nuppu Välju ja salvestage konfiguratsioon, kui seda küsitakse.
Nüüd on koostamiseks valmis konfiguratsioon. Kõigepealt teeme puhtaks, et veenduda, et kõik on kompileerimiseks valmis.
make-kpkg clean
Järgmisena koondame kerneli tegelikult. See võtab LONG FREAKING TIME, nii et leiate midagi huvitavat.
fakeroot make-kpkg –initrd –append-to-version=-custom kernel_image kernel_headers
See protsess loob kahte.deb-faili kataloogis / usr / src, mis sisaldavad kernelit. Faile linux-image **** on kerneli tegelik pilt ja teine fail sisaldab seda, mida saab installida mõlema dpkg-ga. Failinimed on teie süsteemis tõenäoliselt erinevad.
Pidage meeles, et kui käivitate järgmisi käske, seab see uue kerneli uueks vaikerakuks. See võib murda asju! Kui teie masin ei käivitu, võite GRUBi laadimismenüüs esile jõuda Esc ja valida oma vana kerneli. Seejärel saate kerneli keelata menüüs /boot/grub/menu.lst või proovida ja uuesti kompileerida.
dpkg -i linux-image-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
dpkg -i linux-headers-2.6.17.14-ubuntu1-custom_2.6.17.14-ubuntu1-custom-10.00.Custom_i386.deb
Nüüd käivita masin uuesti. Kui kõik töötab, peaksite kasutama oma uut kohandatud kernelit. Seda saate kontrollida uname'i abil. Pange tähele, et täpne arv teie arvutis on erinev.
uname -r
2.6.17.14-ubuntu1-custom
Ma kavatsen kirjutada rea artikleid kerneli kohandamise kohta, nii et tellige värskenduste RSS-voog.
Ka täieliku avalikustamise huvides õppisin seda HowtoForge'st artiklist, mis on suurepärane veebisait mõningate väga laialdaste Linuxi õpetuste jaoks. Pange tähele, et paljud selles artiklis toodud sammud on sarnased, kuigi ma proovisin seda artiklit rohkem "Ubuntu" muuta.