Шаг 1
Загрузите ядро linux с https://www.kernel.org/pub/linux/kernel/. Для целей данного PoC мы загрузили ядро linux-4.16.18.tar.gz
по ссылке выше.
Шаг2 Распакуйте ядро
$ tar -xzvf linux-4.16.18.tar.gz
Шаг 3
Перейдите в исходный каталог ядра
$ cd linux-4.16.18
Шаг 4
Установка зависимостей сборки ядра
$ sudo apt install git build-essential kernel-package fakeroot libncurses5-dev libssl-dev ccache bison flex
Шаг 5
Запуск конфигурации ядра
$make menuconfig
Шаг 6
Перейдите к General setup
─> Control Group Support
─> CPU controller
─> Group scheduling for SCHED_RR/FIFO
, как показано ниже:
Перейдите к General setup
─> Kernel .config support
и разрешите доступ к .config
через /proc/config.gz
Шаг 7
Скомпилируйтеядро
$ make -j20
Создание модулей и установка
$ sudo make modules_install -j20
$ sudo make install -j20
Шаг 8
Откройте файл grub.cfg
, чтобы проверить, установлено ли ядро
$ vim /boot/grub/grub.cfg
Найдите пункт меню с menuentry 'Ubuntu, with Linux linux-4.16.18'
Если это не ядро по умолчанию, измените GRUB_DEFAULT=0
значение для вашего ядра
Шаг 9
Перезагрузите систему
sudo reboot
Шаг 10
Проверьте систему с помощью следующей команды:
# zcat /proc/config.gz | grep RT_GROUP
CONFIG_RT_GROUP_SCHED=y