Як зібрати ядро ​​для opensuse 11, блог веселого програміста

Як зібрати ядро ​​для opensuse 11, блог веселого програміста

Ядро, яке йде разом з дистрибутивом OpenSuSe 11. досить компактне і непогано напхане всякими примочками. Але якщо є бажання вичавити зі своєї системи максимум можливостей, без пересборки ядра не обійтися.

Для початку треба встановити пакет kernel-source через Yast. Вихідні тексти ядра ляжуть в свої директорії, і створиться симлінк на ці вихідні - / usr / src / linux.

Після цього виконуємо наступні команди:

cd / usr / src / linux
make mrproper

make mrproper створює таку ж конфігурацію для компіляції ядра, яка зараз використовується в системі. Це дуже зручно, з неї всього лише треба буде викинути лішее або додати бажане.

Це самий відповідальний етап. Тут викидається всяка непотрібна хрень. Наприклад, я збирав ядро ​​для свого ноутбука. Там була маса всякої непотрібної гидоти, яка абсолютно точно не стане в нагоді на ньому - підтримка RAID-масивів, віртуалізація і багато іншого. Якщо ці фічі повідключали, ядро ​​стає менше і відповідно, при використанні полегшеного ядра залишається більше ресурсів для інших процесів. Тут ще важливо поміняти назву ядра. Якщо воно іменувалося як default, то краще його перейменувати, наприклад, в mykernel001. Тому що при виході нового ядра kernel-default Yast просто-напросто перепише полегшене ядро ​​новою версією.

Далі я роблю ось що:

Ядро збирається дуже довго, на моєму старому ноутбуці процес складання зайняв близько двох годин.
RPM знадобиться, якщо у вас є кілька ноутбуків однакових моделей. Для установки на інший ноутбук зібраного ядра достатньо скопіювати одержавши rpm. Немає потреби повторно збирати ядро.
Вийшло ядро ​​у вигляді rpm легко встановити на будь-який з ноутбуків за допомогою команд:

rpm -ivh kernel-2.6.25.160.1-2.i386.rpm
mkinitrd

Після цього залишається тільки поправити конфиг завантажувача (grub або lilo), щоб була можливість вибрати версію ядра, з якої буде завантажуватися система. Відразу відмовлятися від старого перевіреного ядра не варто, раптом при складанні ядра відключили щось лішее і який-небудь пристрій перестало працювати. Тому не виключено, що ядро ​​доведеться збирати заново кілька разів для того, щоб досягти оптимальної продуктивності системи.

Камрад, який у тебе виходить розмір rpm після складання ядра через make rpm?
У мене воно просто гігантське виходить, хоча роблю на основі чинного конфіга. rpm 215 метрів.

По-різному виходить. Якщо вклепать в ядро ​​все завантажувані модулі, ядро ​​дійсно вийде гігантське, але це не наш шлях.
Останнє ядро ​​що я зібрав займало приблизно 2,6 Мб. Але як правило, компактне ядро ​​виходить не відразу, періодично доводиться збирати заново його по кілька разів з різними можливостями.

В тому то й річ, що для проби зібрав готове дефолтний ядро ​​на основі конфіга з / boot. 245 мегов як з куща вся rpm-ка. І саме ядерце 80 метрів в / boot зайняло.
через make # 038; # 038; make install вийшло як годиться, хоча конфиг не міняв.

Дивно. Збірку починав з make mrproper? За ідеєю ядро ​​має зібратися з тими опціями, з якими і було зібрано дефолтний ядро.