Един от най -фундаменталните елементи във всяка дистрибуция на Linux е ядрото и въпреки че сме чували за него, в много случаи не знаем със сигурност каква роля играе в системата.
Ядрото на Linux е основно централният компонент на операционната система GNU / Linux и неговата функция е свързана с управлението на хардуерните ресурси на компютъра като процесор, памет и твърди дискове, като по този начин предлага най -доброто използване на тези ресурси, и в по същия начин с ядрото се предоставят драйвери за устройства, които са свързани към различни системни шини като USB, PCI, SATA или IDE.
За проблеми с администрирането или контрола, в някои специфични случаи можем да прибегнем до персонализирано ядро на Linux, за да активираме или деактивираме специфични функции на споменатото ядро, които не са налични по подразбиране в ядрото за разпространение. За да направи това, Solvetic ще обясни подробно как да компилира и използва най -новото ядро на Linux, взето от източниците в CentOS 7.
1. Как да инсталирате необходимите пакети за компилиране на Kernel Linux CentOS 7
Първо, ще актуализираме хранилищата на софтуерните пакети, ще продължим да инсталираме инструментите за разработка, необходими за компилиране на ядро, и ще инсталираме библиотеката ncurses с командата yum, както следва:
yum update yum install -y ncurses-devel make gcc bc bison flex elfutils-libelf-devel openssl-devel grub2
2. Как да компилирате и инсталирате ядрото CentOS 7 на Linux
Следващата стъпка е да изтеглите най -новите източници на ядрото 4.17 с помощта на командата wget в директорията / usr / src / или алтернативно да изтеглите най -новото ядро, като посетите следната връзка:
ЗабележкаСтабилната версия в момента е 4.17.11.
Етап 1
Първо, имаме достъп до посочената директория:
cd / usr / src /След това изтегляме ядрото, като изпълним:
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.11.tar.xz
Стъпка 2
Продължаваме да извличаме компресираните файлове и да променяме директориите, като използваме следните команди:
tar -xvf linux -4.17.11.tar.xz
Сега имаме достъп до директорията на ядрото, както следва:
cd linux-4.17.11 /
3. Как да конфигурирате ядрото на Linux на CentOS 7
Етап 1
Ядрото за CentOS 7 трябва да бъде конфигурирано правилно със следните опции за конфигуриране, които са необходими в системната среда:
CONFIG_KVM_GUEST = и CONFIG_VIRTIO_PCI = и CONFIG_VIRTIO_PCI_LEGACY = и CONFIG_BLK_DEV_SD CONFIG_SCSI_VIRTIO = и CONFIG_VIRTIO_NET = и CONFIG_SERIAL_8250 и CONFIG_SERIAL_8250 и CONFIG_SERIAL_8250 и CONFIG_SERIAL_8250 и CONFIG_SERIAL_8250Сега ще копираме текущата конфигурация на ядрото (.config) от директорията / boot в новото ядро на Linux-4.17.11, както следва:
cp -v /boot/config-3.10.0-693.5.2.el7.x86_64 /usr/src/linux-4.17.11/.configСега ще изпълним командата make menuconfig, за да конфигурираме ядрото на Linux и веднага след като командата бъде изпълнена, ще се покаже изскачащ прозорец с всички менюта на ядрото, там ще бъде възможно да се активира или деактивира някои функции на ядрото и ако искаме да излезем, просто натиснете клавиша ESC, за да излезете от съветника.
Стъпка 2
Ще се покаже следният съветник, където ще определим параметрите, които сметнем за необходими.
Стъпка 3
Когато правим желаните промени, избираме опцията Запазване, за да приложим тези промени и ще видим следното. Избираме „Ok“, за да завършим процеса.
Стъпка 4
Ще се покаже следното, кликнете върху „Изход“, за да излезете от съветника.
4. Как да компилирате ядрото на CentOS 7 (Linux)
Преди да започнем процеса, трябва да потвърдим свободното пространство във файловата система, за това изпълняваме следното:
df -h
Сега ще компилираме и инсталираме ядрото и модулите със следните команди, това може да отнеме значително време, процесът на компилиране разпределя файловете в директорията / boot и създава нов запис на ядрото във файла grub.conf:
make bzImage make modules make make install make modules_install
След като този процес приключи, ще рестартираме системата и ще проверим новото ядро, като изпълним следното:
uname -sr
По този начин се научихме да компилираме ядрото на Linux на CentOS 7.