Подготовка к установки:
Импортируем ключ репозитория:
# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
Воспользовавшись ссылкой, устанавливаем сам репозиторий:
# yum -y install https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
Обновляем список репозиториев и обновляемся если нужно:
# yum -y update
Устанавливаем инструменты для компиляции пакетов:
# yum -y groupinstall "Development Tools"
# yum -y install ncurses-devel make gcc bc bison flex elfutils-libelf-devel openssl-devel grub2
После того как репозиторий был подключен, можно посмотреть какая версия ядра там доступна.
Для этого используйте такую команду:
# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
-ml это стабильно стоковое ядро
# yum --enablerepo=elrepo-kernel install kernel-ml (установить ядро 5.5.7 стабильное)
-lt это стабильные старые ядра
# yum --enablerepo=elrepo-kernel install kernel-lt (установить ядро 4.19.107 стабильное)
НАСТРОЙКА ЗАГРУЗЧИКА GRUB
Откройте конфигурационный файл vi /etc/default/grub и измените значение переменной GRUB_DEFAULT на 0:
vi /etc/default/grub
GRUB_DEFAULT=0
Чтобы обновить конфигурацию выполните команду:
# grub2-mkconfig -o /boot/grub2/grub.cfg
РУЧНАЯ КОМПИЛЯЦИЯ
Сайт https://www.kernel.org/
Выбрать ядро и ПКМ скопировать ссылку за тем вставить в терминал
Пример:
Для 4-го ядра
# wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.107.tar.xz
установить wget — yum -y install wget
Распаковываем скачанный архив:
# tar -xvf linux-4.19.107.tar.xz -C /usr/src
в данном примере мы распаковываем архив linux-4.19.107.tar.xz в каталог /usr/src/linux-4.19.107 папка ядра
Переходим в каталог, и смотрим куда распаковали исходник ядра:
# cd /usr/src/ && ls
# cd linux-4.19.107 && ls
ВАЖНО!!!! Копируем конфиг установленнго ядра. Узнаем текущую версию:
(можем очистить все файлы предыдущей конфигурации# make clean && make mrproper)
- Метод ручками:
# uname -r
(выхлоп vmlinuz-3.10.0-1062.12.1.el7.x86_64)
за тем копируем в папку с распакованным новым ядром
# cp -v /boot/vmlinuz-3.10.0-1062.12.1.el7.x86_64 /usr/src/linux-4.19.107/.config
(выхлоп cp: overwrite ‘/usr/src/linux-4.19.107/.config’? y (соглащаемся с перезаписью)
/boot/vmlinuz-3.10.0-1062.12.1.el7.x86_64 -> /usr/src/linux-4.19.107/.config (видим результат))
2. Метод одной командой
# cp /boot/config-`uname -r` ./.config
Устанавливаем инструменты для компиляции пакетов:
# yum -y groupinstall "Development Tools"
# yum -y install ncurses-devel* make* gcc* bc* bison* flex* elfutils-libelf-devel* openssl-devel* grub2
Компилируем ядро:
# make -j 4 (использовать 4 оптока при компиляции, если они есть)
# make install
# make modules_install
Для 5-го ядра
# wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.7.tar.xz
Распаковываем скачанный архив:
# tar -xvf linux-5.5.7.tar.xz -C /usr/src
в данном примере мы распаковываем архив linux-5.5.7.tar.xz в каталог /usr/src/linux-5.5.7 папка ядра
Переходим в каталог, и смотрим куда распаковали исходник ядра:
# cd /usr/src/ && ls
# cd /linux-5.0-rc8
ВАЖНО!!!! Копируем конфиг установленнго ядра. Узнаем текущую версию:
# uname -r
(выхлоп vmlinuz-3.10.0-1062.12.1.el7.x86_64)
за тем копируем в папку с распакованным новым ядром
# cp -v /boot/vmlinuz-3.10.0-1062.12.1.el7.x86_64 /usr/src/linux-4.19.107/.config
(выхлоп cp: overwrite ‘/usr/src/linux-4.19.107/.config’? y (соглашаемся с перезаписью)
‘/boot/vmlinuz-3.10.0-1062.12.1.el7.x86_64’ -> ‘/usr/src/linux-4.19.107/.config’ (видим результат))
Устанавливаем инструменты для компиляции пакетов:
# yum -y groupinstall "Development Tools"
# yum -y install ncurses-devel* make* gcc* bc* bison* flex* elfutils-libelf-devel* openssl-devel* grub2
1) Создаем свою конфигурацию для ядра:
# make menuconfig
2) Или используем текущую конфигурацию для ядра:
# make oldconfig
(дохрена раз нажать ВВОД)
Компилируем ядро:
# make -j 4 bzImage
# make -j 4 modules
# make -j 4
# make install
# make modules_install
После устанавливаем ядро и модули:
# make modules_install install
НАСТРОЙКА ЗАГРУЗЧИКА GRUB
Откройте конфигурационный файл vi /etc/default/grub и измените значение переменной GRUB_DEFAULT на 0:
vi /etc/default/grub
GRUB_DEFAULT=0
Чтобы обновить конфигурацию выполните команду:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Молимся и перезагружаемся
# reboot
Наглядный пример:
