Компіляція ядра (3

На даний момент, є 2 види ядра Linux, це класична версія безпосередньо від Лінуса і ко. і версія від команди GNU. Остання відрізняється тим, що з неї прибирають все закриті прошивки і інший закритий код і намагаються замінити їх на свої відкриті реалізації. В іншому ядра повністю ідентичні один одному.

Спершу, необхідно отримати вихідний код ядра. Можна зробити це через wget, консольний браузер Lynx і йому подібні, або іншими графічними додатками які можуть завантажувати з мережі.

Виконуємо в консолі:

Далі, необхідно розпакувати архів з отриманим кодом:

tar xvflinux-libre-3.6.6-gnu.tar.bz2 - зауважу, що розпакування краще проводити не від рута і не в системних каталогах. Краще де-небудь в / home а потім перемістити;

cd /usr/src/linux-3.6.6 - перемещяемся в каталог з вихідним кодом;

Компіляція ядра (3

За замовчуванням, в ядро ​​включено мінімальну кількість опції. Тому, якщо ви не впевнені в тій чи іншій опції або ж ви просто боїтеся що у вас щось не запрацює, то можна запозичити фаил .config і папки вихідного коду який поставляється разом з Слак. На даний момент це 3.2.29.

cp /usr/src/linux-3.2.29/.config /usr/src/linux-3.6.6/.config- Патрік використовує практично всі доступні опції. Тому, якщо ви компілюєте в перший раз, то краще уважно почитати HELP по деяких опцій які викликають у вас інтерес. Зі свого досвіду можу сказати що, якщо ви компілюєте для домашнього пк, то великий інтерес у вас повинен викликати розділи Device Drivers => HID support => HID bus support => Special HID drivers і Device Drivers => USB support. тому що сдесь зберігаються драйвера для переважної більшості різнорідного usb господарства. Туди входять підтримка мишок від Apple, контролерів PS2 і PS3 і іншого. Якщо вас це не цікавить і вам це не потрібно, можна сміливо відключати ці опції. Так само, особисто для мене цікавий розділ File System. Ядро Linux, так само охоплює велику кількість різних Файлових систем які вам вдома зовсім можуть і не знадобиться. У своєму випадку я відключив майже все ФС крім EXT2, EXT4 і UDF (для підтримки дисків). Так само, вам відразу кинеться в очі розділ з ФС NTFS (Windows FS), за великим рахунком, цю опцію теж можна відключити. Правда, в тому випадку, якщо у вашій системі встановлено NTFS-3G. Розробкою драйвера для підтримки ntfs займається інша команда. За фактом, їх драйвер набагато сильніше ніж той, що розробляють (і розробляють чи донині?) В команді Лінуса.

Так само, я думаю ви помітили що деякі опції позначаються знаками «*» і «М». Що це означає:

  • * - дана опція буде за компілювати безпосередньо в ядро
  • М - дана опція буде винесена в модуль

Після того, як ви визначилися з параметрами вашого ядра, необхідно зберегти конфіг. Наступним кроком буде компіляція коду:

make bzImage modules modules_install

  • bzImage - це нове стислий в архів ядро. якщо все проходить нормально, то цей файл з'являється в / arch / x86 / boot / bzImage
  • modules - make, після того як закінчить з ядром відразу переступить компілювати ваші модулі
  • проводиться установка модулів в систему

Все що вам залишається в цей момент - чекати. Компіляція займає невизначену кількість часу. Багато що залежить від:

  • потужності ПК
  • Кількості коду, яке необхідно закомпіліровать
  • завантаженості ПК

Після того як все, необхідно покласти пару трійку файлів в директорію / boot і вказати їх завантажувачу.

Спершу, необхідно скопіювати файл ядра:

Схожі статті