Как да персонализирате ядрото на Ubuntu
Настройката на ядрото не е за всеки. Моля, имайте предвид, преди да опитате нещо от това, че може да наруши системата ви.
Има няколко причини, които бихте искали да персонализирате ядрото си. Може да искате да изрежете ядрото само до необходимите услуги, особено ако използвате сървър или специално устройство, което изисква само най-важното. Може също да се наложи да коригирате ядрото си, за да поддържате хардуер, който понастоящем не се поддържа от ядрото, на което работите.
В тази статия няма да обясните как да коригирате ядрото си, как да персонализирате текущото си ядро. Ще имам друга последваща статия, която обяснява как да коригирате ядрото си и някои практически причини, поради които искате да го направите.
За да започнем, трябва да разберем коя версия на ядрото, която изпълняваме в момента. Ще използваме командата uname за това
$ uname -r
2.6.17-10-родово
Сега трябва да инсталираме източник на Linux за ядрото ви, имайте предвид, че изпълнявам ядрото 2.6.17-10, така че линията на инсталатора отразява това. За целите на тази статия можете да замените номера на ядрото с каквото и да сте. Също така трябва да инсталираме библиотеката curses и други инструменти, които да ни помогнат да компилираме.
sudo apt-get install linux-source-2.6.17 kernel-пакет libncurses5-dev fakeroot
Ако сте любопитни къде да бъде инсталиран източникът на Linux, можете да използвате командата dpkg, за да ви каже файловете в пакета. Ето изхода в моята система:
$ dpkg -L linux-source-2.6.17
/.
/ ЮЕсАр
/ ЮЕсАр / SRC
/usr/src/linux-source-2.6.17.tar.bz2
/ ЮЕсАр / акции
/ ЮЕсАр / акции / док
/usr/share/doc/linux-source-2.6.17
(Почиства)
Можем да видим, че източникът е инсталиран в директорията / usr / src в компресиран файл.
За да направим нещата по-лесни, ще се поставим в root режим като използваме sudo, за да отворим нова обвивка. Има и други начини да направите това, но аз предпочитам този начин.
sudo / bin / bash
Сега променете директорията в местоположението на източника, така че да можем да инсталираме. Имайте предвид, че може да се наложи да инсталирате помощната програма bunzip, ако не е инсталирана. (беше на моя)
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
Направете копие на съществуващата конфигурация на ядрото, която да използвате за процеса на персонализирано компилиране. Забележете, че 'символът е този под тилдата'
cp / boot / config-'uname -r '/usr/src/linux/.config
Сега ще стартираме помощната програма, която ще ни позволи да персонализираме ядрото:
cd / usr / src / linux
направете menuconfig
Първо, слезте надолу, за да заредите алтернативен конфигурационен файл и заредете .config файла. (просто натиснете Enter)
Сега, когато сме вътре в програмата, можем да зададем опциите за нашето персонализирано ядро. Навигацията е доста проста, на върха има легенда, ако се загубите. Реших да избера Networking и да натисна Enter, за да отида в тази категория.
Поддръжка на радиолюбители? За какво, по дяволите, е инсталиран? Ще забележите от *, че е вградено в ядрото.
Като натиснете бутона? ключ, можем да видим помощ за този конкретен елемент. Ето обяснението:
Е, веднага ще го деактивирам. Защо, по дяволите, това е инсталирано в моето ядро? Натиснах Esc, за да излезете от екрана за помощ, и след това натиснете N, за да изключите това от ядрото.
Когато приключите с избора на какъвто и да е избор, кликнете върху Изход и запишете конфигурацията, когато бъдете подканени.
Сега имаме конфигурация, готова за компилиране. Първо ще направим чиста, само за да сме сигурни, че всичко е готово за компилирането.
make-kpkg чист
След това ще компилираме ядрото. Това ще отнеме ДЪЛГО ПРЕКЪСВАЩО ВРЕМЕ, така че отидете да намерите нещо интересно.
fakeroot make-kpkg -initrd -append-to-version = -custom kernel_image kernel_headers
Този процес ще създаде два .deb файла в / usr / src, които съдържат ядрото. Файлът linux-image **** е действителното изображение на ядрото, а другият файл съдържа Можете да инсталирате и двете с dpkg. Имената на файловете вероятно ще се различават във вашата система.
Моля, обърнете внимание, че когато стартирате следващите команди, това ще постави новото ядро като ново ядро по подразбиране. Това може да разбие нещата! Ако машината ви не се стартира, можете да натиснете клавиша Esc в менюто за зареждане на GRUB и да изберете стария си ядро. След това можете да деактивирате ядрото в /boot/grub/menu.lst или да опитате и компилирате отново.
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
Сега рестартирайте машината. Ако всичко работи, трябва да пуснете новото си ядро. Можете да проверите това, като използвате uname. Обърнете внимание, че точният номер ще бъде различен за вашата машина.
uname -r
2.6.17.14-ubuntu1-обичай
Планирам да напиша поредица от статии за персонализиране на ядрото, така че се абонирайте за RSS емисията за актуализации.
Също така, в интерес на пълното разкриване, научих как да направя това от статията в HowtoForge, който е чудесен сайт за някои много напреднали уроци по Linux. Ще забележите, че много от стъпките в тази статия са подобни, въпреки че аз се опитах да направя тази статия по-скоро „Ubuntu“..