Сглобяване на ядрото в Ubuntu

Сглобяване на ядрото в Ubuntu. Стъпка по стъпка инструкции.

Наличната информация за изграждането на ядрото варира в широки граници, така че ние ще опишем ядрото, построени специално за Ubuntu. Ние ще се опитаме. че в инструкциите, написани в тази статия, nebylo грешки. В описанието на процеса на компилация не спира само при получаване на ядрото. Вземете работещо ядро ​​- това не е достатъчно. За собственици на Nvidia карти, тук е описание на това как да се получи на системата за работа с графики на новия ядрото. Освен това, програмата ще работи в старата ядрото и новото.

1. Инсталирайте изходния код на ядрото

На първо място, ние ще трябва източниците на ядрото. За Ubuntu 7.04, те вече са в хранилището, което трябва да намерите пакет Linux-източник tratata (в нашия случай това ще бъде Linux-източник-6.2.20), и да го инсталирате (това може да бъде направено чрез Synaptic). След инсталирането на Завета, в директорията / ЮЕсАр / SRC ще бъде файл с име Linux-източник 2-6-20.tar.bz2.

Ние правим команда Sudo

коригират 777 / ЮЕсАр / SRC


Отиди обикновен потребител в директорията / ЮЕсАр / SRC и разопаковането този файл

катран -jxvf Linux-източник 2-6-20.tar.bz2


Ще източник директория / ЮЕсАр / SRC / Linux-източник-06.02.20. Файлът се изтрива архив (ще трябва корен достъп).


2. Инсталиране на придружаващия пакет

За да се сглоби необходимостта все още е на ядрото-пакет. libncurses5-Dev. fakeroot. Задайте тях чрез Synaptic. Разбира се, че системата трябва да бъде инсталиран GCC компилатор и Dev -packet за системни библиотеки, като например libc6-Dev.


3. Създаване на конфигурационен файл

Сега имаме нужда от основен конфигурация, която щеше да се в основата на Ubuntu. Влизаме в / обувка. и да видим къде типа на файла довереник-2.6.20-15-родово. Той ни е необходимо. Копирайте го в директорията на източник / ЮЕсАр / SRC / Linux-източник-06.02.20, и го преименувайте на .config. Имайте предвид, че името на файла започва с една точка, това не е печатна грешка.

Сега е в директорията / ЮЕсАр / SRC / Linux-източник-06.02.20. давайки като обикновен потребител команда


Това ще стартира текст конфигурационен интерфейс. Можете също така да стартирате инсталационната в режим на GUI


И в двата случая, отворете interfeysik с кърлежи, чрез които да конфигурират ядрото. Изглежда, че по подразбиране просто отворете .config файла. който понастоящем е стандартна конфигурация и включва Ubuntu ядро.

В края на конфигурацията, изберете елемента "Save tratata kofiguratsiyu", името на файла, различна от .config. например .config_my_01. Ние си тръгне.

Сега преименувате .config в .config_ubuntu. И вие получавате два файла - .config_ubuntu и .config_my_01. Можете да видите разликата между стандарта и вашата конфигурация като тази

разл .config .config_my_01


Сега копирайте вашата конфигурация .config_my_01 под .config за името. Т.е. вие получавате 3 конфигурационния файл. При съставянето да използвате .config файла. .config_ubuntu .config_my_01 файлове и ще ни помогне в бъдеще за нова компилация. Това е само в случай, че новото ядро ​​ще бъде неработещ или бъги.

Преди съставянето непременно проверите наличието на свободно пространство (в участъка, където се намира източникът). Би било хубаво, Met 4-5Gb (!) На склад. При съставяне на директория с размера на източник може да нарасне до 3,5Gb. Проверете свободното пространство с командата


Сега, като обикновен потребител в директорията / ЮЕсАр / SRC / Linux-източник-2.6.20. Ние даваме на командата, която ще изтрие изходния код, съставен от някой obektniki че остана от предишната компилация и се съхраняват в архива.


След това чрез Sudo получите достъп до корен и да започне компилацията.

грим kpkg --initrd --revision = mybuild.1.0 kernel_image kernel_headers


Когато вместо "mybuild.1.0" пиша това, което трябва. Допустими английски букви, цифри периоди. Подчертава и тирета не са разрешени.

В действителност, по приятелски начин, компилиране на ядрото, е необходимо да се направи обикновен потребител. Формално, създаването на двоичен ядрото е същото като съставянето на изпълними файлове от всяка друга програма. Но ние не се събира ръчно (чрез команди като грим bzImage модули), а на полуфинала (чрез грим kpkg). И тази програма, след преминаването на компилацията ще се изчерпи програма Dpkg-дебютантка да получите дебютантка -Package с ядрото. Тук, в този момент и ще изисква достъп до корен.

Сега нека да разгледаме това, което прави по-горе команда. Той съставя ядрото и след това създава дебютантка -packet име Linux-образ-versiya.deb. които ще бъдат двоични ядрото и модули на ядрото (това се прави чрез kernel_image цел). И също така, че ще се създаде дебютантка -Package име на Linux заглавията-versiya.deb. тя ще бъде заглавията на ядрото (това се прави чрез kernel_headers цел). Получените пакети ще бъдат в директорията / ЮЕсАр / SRC.

Вижте какви файлове са в тези дебютантка -Package може да бъде в Konqueror (в Kubuntu), кликнете с десен бутон върху интересуват дебютантка файл и изберете "Kubuntu меню пакет" -> "Показване на информация за пакет". Информация ще се формира по-скоро бавно, в продължение на около минута, тъй като големите опаковки.

Сега ние си поставихме за ядрото. Да бъдеш като корен в директорията / ЮЕсАр / SRC. ние даваме команда

Dpkg -i Linux-образ-versiya.deb


след което ядрото (файл vmlinuz-2.6.20.3-ubuntu1) ще бъдат поставени в директорията / багажника (всички предишни ядро ​​също не се ходи никъде, ще остане в сила), и по директорията / ИЪ / модули. в непосредствена близост до директорията с модули обикновено ядрото (в Ubuntu 7.04 нарича /lib/modules/2.6.20-15-generic) се появява с модули директория на новото ядро ​​(в нашия случай това ще /lib/modules/2.6.20.3-ubuntu1). Новото ядро ​​ще бъдат автоматично регистрирани в /boot/grub/menu.lst.

По принцип, това вече може да бъде претоварен и Grub зареждащ екран ще бъде нов елемент, за да си ядро. Новото ядро ​​ще се появи в списъка. Но докато не бързат, и нека друг отбор

Dpkg -I Linux-горни-versiya.deb


който ще се инсталира и хедърите на ядрото в директорията / ЮЕсАр / SRC / Linux-заглавията-версия. в нашия случай тя ще /usr/src/linux-headers-2.6.20.3-ubuntu1 директория. Тези заглавия от които се нуждаем, например, да компилирате на NVIDIA драйвери за новото ядро.

Но потребителите NVIDIA карти. който е бил използван от водача, инсталирани чрез "имуществена мениджър на водача" или да използвате драйвер от пакета за NVIDIA-GLX (или там NVIDIA-GLX-нова), давам 99% гаранция, че вие ​​не сте късметлия! И графиките по новото ядро, няма да видите!


7. Инсталиране на драйвери nvidia.com сайта на NVIDIA

За да получите работни Х под новото ядро, първото нещо, което идва на ум - е да инсталирате нов nvidia.com сайт шофьор ядро. И това е грешно решение! Веднага след като дървото ще бъде създадена в рамките на новото ядро ​​в стария си ядрото проверява графика няма повече да работи (поради факта, че водачите NVIDIA файлове здраво обвързани с версията и името на ядрото). И тъй като изпълнението на новото ядро, ти наистина не проверих, можете да получите на системата "с родния ядрото, но не и графика" и "бъги ядро, но с графика." Мисля, че една такава ситуация не отговаря.

В популярната статия "Ядрена физика за домакини", има препоръки как да се планират и за двете ядра. Ние предлагаме следния начин - да има най-инсталация пакет готова с дърва за огрев nvidia.com, а ако искате да заредите специфичен ядрото, трябва първо да се зареди конзола режим този основен набор дърва за огрев, а след това зареждане обикновено има. Мисля, че този подход е твърде малко хора се радват.

Ние ще направим така, че графиките ще работят с по-стари ядки, и в новото ядро, и то не е необходимо да бъде всеки път, когато стартирате инсталацията (компилация) на дърва за огрев. За да направите това ще трябва да се извърши само при едно условие - че графичен дърва за огрев от различни ядра са една и съща версия.

Кратък план за действие - слагам дърва nvidia.com сайт за ядрото по подразбиране в пълен размер. Ние се уверете, че те работят. След това от една и съща опаковка сложим дърва за домашно приготвено ядрото, но режим "само графичния модул".


8. Инсталиране на NVIDIA драйвери при нормална ядрото

Всичко по-долу е написан, и е подходящ за тези, които току-що са решили да инсталирате нова дърво NVIDIA под стандартното ядро!

Изтегляне от дърва за огрев на сайта nvidia.com под linuh. Аз самият поклати дърва версия 96.43. Файлът се нарича NVIDIA-Linux-x86-96.43.01-pkg1.run. Но можете да опитате други стабилни версии, които съществуват на сайта на NVIDIA.

За да инсталирате, да се създаде директория / ЮЕсАр / SRC директория наречена NVIDIA. да копирате този файл. Докато в тази поддиректория, дай файла права за изпълнение

коригират 777 NVIDIA-Linux-x86-96.43.01-pkg1.run


Всичко на тази работа в графичния интерфейс на времето да изтече. Преди да напусне grafrezhima, стартирайте Synaptic. и се уверете, че имате

  • правоспособност. Този интерфейс черупка на мениджъра на пакети за текстов режим.
  • Линукс заглавията-2.6.20-15. Това заглавни файлове (хедър) за неизпълнение на задълженията си ядро.
  • Linux-горни-2.6.20-15-родово. Само не кажа защо, по дяволите, този пакет, но нека да бъде.


Добър съвет - трябва raspechatany текст на тази статия върху парче хартия, или да го запишете като текстов файл, който може да бъде видян в режим на текст.

Прехвърлени в конвенционален режим конзола ядро ​​(в Grub има точка). В Ubuntu, вие автоматично ще получите права корен, дори и парола влезе неуместно. Сега ние трябва да се премахне NVIDIA дърва за огрев. които са в системата. Ако сте инсталирали на дървесината чрез "имуществена мениджър шофьор" (или чрез инсталиране на NVIDIA-GLX пакет или NVIDIA-GLX-нова), пакетът NVIDIA-GLX / NVIDIA-GLX-нов е необходимо да се премахне от системата, а не само да деинсталирате и деинсталирате в чистка режим.

Аз съм сигурен, глупав потребител, а вместо това се занимават с опции Dpkg. в програмата за конзола употреба правоспособност. напишете командата


и вие ще се окажете в една черупка, наподобяваща otalenno Synaptic. На върха ще се преобърнат ключовете. За да стигнете до менюто, натиснете Ctrl + T (неудобно, но какво да се направи). В менюто
стрелките и Enter бутон намерят и изберете функцията "Намери". Писане на търсене низ - NVIDIA-GLX. Акценти ще получат желания пакет. Повикването на менюто, и да намерят там точка "чистка". Натиснете го, и пакет, в който има осветление, ще бъдат маркирани за пълно деинсталиране всичките си файлове от системата (самата опаковка ще остане в кеш паметта, ще бъде възможно да преинсталирате, ако е необходимо). В долната част, ще бъдете подканени - "Е - Огледайте -. Remove". Натиснете "Е" - и да видим какво пакети ще бъдат премахнати. Ако пакетите ще зависят от NVIDIA-GLX, тогава те ще също да се деинсталира. Обикновено, този пакет NVIDIA-GLX-Dev. Не се притеснявайте, той ще бъде изтрит също.

Сега натиснете (за надарени - Shift + 1), този начин ние сме съгласни с нашите изменения "!". След това натиснете "Q" (изход). Когато излизате от програмата ще премахне пакетите ни маркирани.

Сега такъв момент. В момента сме на ниво от 1 първоначален (конзола само, много от услугите не се работи). Ако започнете инсталирането на NVIDIA драйвери. тя ще се оплаче, че е възможно да не използвате devfs на услуги. който обикновено започва на ниво 3. Следователно, даде команда

и натоварването на системата е най-желаната услуга, и в същото време от режим на единичен потребител (тя ще се появи на няколко конзоли, които могат да бъдат включвани клавиши ALT + F1. ALT + F6). За бъдещата работа, ние просто се нуждаят от две конзоли. Между другото, системата ще се опита да зареди график, той няма да успее, защото шофьор ние просто отстранени. И тя ще остане в 7-та конзола с празен екран. Не изпадайте в паника, натиснете ALT + F1. Ние виждаме първата конзола, която въведете потребителско име, парола, както и в графичен вход (само след потребителско име и парола натиснете Enter, вместо да TAB).

Вход, обадете MC суперпотребител


Отиди в / ЮЕсАр / SRC инсталацията директорията / NVIDIA и команда за старт на дърва за огрев


Опцията "-Д" ще ни позволи да видим доклада за дейността и да се види конфликтните файлове. Ние започнете инсталирането. Съгласни сме с лиценза. Ние отказваме възобновяване на източници от FTP Nvidia. Ние казваме, ОК, който ще бъде създаден от нас Инс. На въпросите на входните пътеки просто натиснете Enter.

В крайна сметка, точно преди инсталацията ще бъде показан списък на файловете, които ще бъдат инсталирани. В началото на списъка (ако е намерен) изглежда конфликтни файлове. Тя ще бъде написано "Backup файла." - тук е това, което имат. В моя случай, това беше файловете

Веднага след като видите списък logintes втората конзола (отидете - ALT + F2), стартирайте


и методично изпълнява тези противоречащи си файлове на нишка в отделна папка в дома си директория, като се позовава на списъка в първата конзола. Защо да издържи и да не се изтрие? Факт е, че имената на файловете в Linuhe "chelovekonechitaemye", и лесно можете да направите грешка и изтриване на грешен файл.

След като сте премахнали всички файлове на Backup. назад към първата конзола. Прекъсване настройка (Ctrl + C) и да го стартирате отново. Ако "Backup файл." Ще бъде не повече, след което ще завърши инсталацията. Всичко трябва да върви гладко. Можете да съм съгласен с xorg.conf на корекция. vseravno sodastsya архивен файл.

Сега, внимание! Най-важното нещо в този момент не се рестартира! И отидете до файла / и т.н. / по подразбиране / Линукс-ограничен-модули-често срещаните. и добавете опция модули DISABLED_MODULES NV и nvidia_new. Правил съм го, така че


Ако това не бъде направено, след това следващия път, когато файла (който сте изтрили!) /lib/modules/2.6.20-15-generic/volatile/nvidia.ko автоматично ще бъде възстановен от опаковката NVIDIA-ограничени-модули. А вашият файл, който съставя по време на инсталацията на драйверите, наречена /lib/modules/2.6.20-15-generic/kernel/drivers/video/nvidia.ko. Така че, първия файл ще се намери, когато стартирате "Х". И това няма да дойде до вашия файл. И Х, няма да могат да зареди.

Рестартирайте В стандартното ядро ​​в пълна готовност. Ако всичко е направено правилно, zapustyatsya знаците Х. Радвайте се поне все още имате работеща система.


9. Инсталиране на NVIDIA драйвери за домашно ядрото

Сега, една последна стъпка - да се направи график на работа в новото ядро. Това е достатъчно проста. Boot в конзолен режим домашно ядро. ние даваме команда


данни за вход, и се движат в първата конзола