Kaip kompiliuoti „Linux“ branduolį „CentOS 7“.


Paleisti tinkintą kompiliuotą „Linux“ branduolį visada naudinga, ypač kai norite įjungti arba išjungti konkrečias branduolio funkcijas, kurių nėra numatytuosiuose platinimo teikiamuose branduoliuose.

Šiame straipsnyje paaiškinsiu, kaip kompiliuoti ir naudoti naujausią Linux branduolį iš CentOS 7 platinimo šaltinių (čia pateiktos instrukcijos taip pat yra RHEL ir Fedora darbai ).

Jei nenorite atlikti šios sudėtingos sąrankos, vadovaukitės mūsų paprastu straipsniu, kuriame paaiškinama, kaip įdiegti arba atnaujinti į branduolį CentOS 7 naudojant trečiosios šalies RPM saugyklą.

Įdiekite būtinus branduolio kompiliavimo paketus

Pirmiausia būtinai atnaujinkite programinės įrangos paketų saugyklas, įdiekite kūrimo įrankius, reikalingus branduoliui kompiliuoti, ir įdiekite biblioteką ncurses naudodami šią yum komandą.

yum update
yum install -y ncurses-devel make gcc bc bison flex elfutils-libelf-devel openssl-devel grub2

Sukompiliuokite ir įdiekite branduolį „CentOS 7“.

Atsisiųskite naujausius branduolio 4.17 šaltinius naudodami komandą wget iš katalogo /usr/src/ arba taip pat galite atsisiųsti naujausią branduolį apsilankę kernel.org.

cd /usr/src/
wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.17.11.tar.xz

Išskleiskite archyvuotus failus ir pakeiskite katalogus naudodami šias komandas.

tar -xvf linux-4.17.11.tar.xz
cd linux-4.17.11/

Konfigūruokite branduolį „CentOS 7“.

Branduolys turi būti tinkamai sukonfigūruotas naudojant toliau nurodytas būtinas konfigūracijos parinktis CentOS 7 aplinkoje.

CONFIG_KVM_GUEST=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_PCI_LEGACY=y
CONFIG_BLK_DEV_SD
CONFIG_SCSI_VIRTIO=y
CONFIG_VIRTIO_NET=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_CONSOLE=y

Primygtinai siūlau nukopijuoti veikiančią branduolio konfigūraciją (.config) iš katalogo /boot į naują branduolio linux-4.17.11 katalogą.

cp -v /boot/config-3.10.0-693.5.2.el7.x86_64 /usr/src/linux-4.17.11/.config

Dabar paleiskite komandą make menuconfig, kad sukonfigūruotumėte Linux branduolį. Vykdydami toliau pateiktą komandą, pasirodys iššokantis langas su visais meniu. Čia galite įjungti arba išjungti tam tikras branduolio funkcijas. Jei nesate susipažinę su šiais meniu, tiesiog paspauskite ESC klavišą, kad išeitumėte.

cd /usr/src/linux-4.17.11/
make menuconfig

Kai nustatomos branduolio konfigūracijos parinktys, spustelėkite Išsaugoti, kad išsaugotumėte konfigūracijos sąsają ir išeitumėte iš meniu.

Sukompiliuokite branduolį „CentOS 7“.

Prieš pradėdami branduolio kompiliavimą, įsitikinkite, kad jūsų sistemoje yra daugiau nei 25 GB laisvos vietos failų sistemoje. Norėdami patvirtinti, galite patikrinti failų sistemos laisvą vietą naudodami komandą df, kaip parodyta.

df -h

Dabar sukompiliuokite ir įdiekite branduolį ir modulius naudodami šias komandas (tai gali užtrukti kelias valandas). Kompiliavimo procesas įdeda failus į /boot katalogą ir taip pat įveskite naują branduolio įrašą grub.conf faile.

make bzImage
make modules
make
make install
make modules_install

Kai kompiliavimas bus baigtas, iš naujo paleiskite sistemą ir patikrinkite naujai įdiegtą branduolį.

uname -sr

Viskas. Tikiuosi, kad šis straipsnis jums visiems bus labai naudingas. Jei kompiliuodami ar diegdami branduolį susiduriate su problemomis ar sunkumais, nedvejodami užduokite arba paskelbkite savo klausimus naudodami toliau pateiktą komentarų formą.