top
logo


Сборка ядра под centos 5 PDF Печать E-mail
06.09.13 18:05

Данная инструкция писалась специально для серверов хостинга host-game.net и может не работать на других машинах.

Автор Горностай Михаил

И так приступим:

1. Подготовка к установке:

Перед началом установки следует установить пакеты, иначе продолжать нету смысла...

yum install gcc ncurses-devel rpm-build redhat-rpm-config nano


2. Качаем самое новое ядро для CentOS 5, может занять некоторое время, все зависит от скорости вашего канала

wget https://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.39.tar.bz2


3. Извлекаем все из архива, может занять некоторое время...

tar jxf linux-2.6.39.tar.bz2


4. Переходим в папку с ядром

cd linux-2.6.39


5. Копируем конфиг текущего ядра

cp /boot/config-`uname -r` .config


6. Запускаем конфигуратор ядра

make menuconfig


7. Включаем эту опцию иначе ядро не запустится, нужно чуть поискать её, но включить нужно

General setup ---> enable deprecated sysfs features which may confuse old userspace


8. Создаем папки для сохранения rpm файла

mkdir -p /usr/src/redhat/SRPMS
mkdir -p /usr/src/redhat/RPMS/{i386,x86_64}


9. Открываем файл mkspec

nano scripts/package/mkspec


10. Добавим в САМЫЙ низ

echo "%post"
echo "if [ \`uname -i\` == \"x86_64\" -o \`uname -i\` == \"i386\" ]; then"
echo " if [ -f /etc/sysconfig/kernel ]; then"
echo " /bin/sed -i -e 's/^DEFAULTKERNEL=kernel-smp$/DEFAULTKERNEL=kernel/' /etc/sysconfig/kernel || exit \$?"
echo " fi"
echo "fi"
echo "/sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install "$KERNELRELEASE" || exit \$?"
echo ""

echo "%preun"
echo "/sbin/new-kernel-pkg --rminitrd --rmmoddep --remove "$KERNELRELEASE" || exit \$?"
echo ""


11. Собираем ядро, занимает уйму времени, можете идти пить кофе...

time make rpm


12. Ставим ядро на ОС, может возникнуть ошибка, повторите команду и все должно пройти успешно

rpm -ihv /usr/src/redhat/RPMS/x86_64/kernel-2.6.39-1.x86_64.rpm


13. Переходим в папку с ядром

cd /boot


14. Создает гостевое ядро (нужно для монтирования системы)

mkinitrd --with=aacraid /boot/initrd-2.6.39.img 2.6.39


15. Переходим в папку с grub, нужно же настроить что бы наше ядро запустилось при загрузке ОС

cd /boot/grub


16. Открываем menu.lst

nano menu.lst


Находим строчку с "hiddenmenu"
После нее идет "title (CenetOS) (версия вашего текущего ядра)"
Ниже можно увидеть где стоит наш загрузчик, эти строчки нас не инетересуют, нас интересуют строчки которые йдут ниже

kernel /vmlinuz-"версия вашего ядра"


Заменим на:

kernel /vmlinuz-2.6.39

 

initrd /initrd-"версия вашего ядра".img


Заменим на:

initrd /initrd-2.6.39.img


17. Перезапускаем сервер

shutdown -r now


18. И так, сервер запустился, теперь нужно проверить установилось ли ядро

uname -r


Вы должны увидеть:

#
2.6.39
#


Это значит что процесс установки нового ядра закончен.

P/s: Это как пример, и новое ядро не значит что именно это новое, есть новые но в нестабильной версии.

 

источник: http://forum.host-game.net/topic/5176-sborka-jadra-pod-centos-5/

ссылка на материал: http://www.thin.kiev.ua/unix/39-unix/789-centos-5.html

{jcomments on}

Последнее обновление 06.09.13 18:08
 
Интересная статья? Поделись ей с другими:

bottom

 

Unreal Commander PfSense по русски Яндекс.Метрика