Ядро, яке йде разом з дистрибутивом 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? За ідеєю ядро має зібратися з тими опціями, з якими і було зібрано дефолтний ядро.