Giunsa ang pag-compile sa Linux Kernel sa CentOS 7


Ang pagpadagan sa usa ka naandan nga gihugpong nga Linux Kernel kanunay nga mapuslanon, labi na kung nangita ka nga mahimo o dili pag-disable ang piho nga mga bahin sa Kernel, nga wala magamit sa mga default nga gihatag nga mga kernel nga gihatag.

Sa kini nga artikulo, akong ipasabut kung giunsa ang pag-compile ug paggamit sa labing bag-o nga Linux Kernel gikan sa mga gigikanan sa pag-apod-apod sa CentOS 7 (ang mga panudlo nga gihatag dinhi magamit usab sa RHEL ug Fedora).

Kung dili nimo gusto nga moagi niining komplikado nga pag-setup, unya sunda ang among dali nga artikulo nga nagpatin-aw Giunsa ang Pag-install o Pag-upgrade sa Kernel sa CentOS 7 gamit ang third-party nga RPM repository.

I-install ang Gikinahanglan nga mga Pakete alang sa Kernel Compilation

Una, siguruha nga i-update ang imong mga repositoryo sa software package, i-install ang mga himan sa pag-uswag nga gikinahanglan alang sa pag-compile sa usa ka kernel, ug i-install ang librarya sa ncurses gamit ang mosunod nga yum command.

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

Pag-compile ug Pag-install sa Kernel sa CentOS 7

I-download ang pinakabag-o nga mga tinubdan sa Kernel 4.17 gamit ang kernel.org.

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

Kuhaa ang mga naka-archive nga mga file ug usba ang mga direktoryo gamit ang mosunod nga mga sugo.

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

I-configure ang Kernel sa CentOS 7

Ang Kernel kinahanglan nga husto nga ma-configure sa mosunod nga gikinahanglan nga mga opsyon sa pag-configure sulod sa CentOS 7 nga palibot.

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

Gisugyot ko nga imong kopyahon ang nagdagan nga Kernel configuration (.config) gikan sa /boot directory ngadto sa bag-ong kernel linux-4.17.11 directory.

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

Karon padagana ang make menuconfig command para ma-configure ang Linux kernel. Sa higayon nga imong ipatuman ang ubos nga sugo usa ka pop up window makita uban sa tanan nga mga menu. Dinhi mahimo nimong palihokon o i-disable ang pipila nga mga bahin sa kernel. Kung dili ka pamilyar niini nga mga menu, pindota lang ang ESC key aron makagawas.

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

Kung mabutang na ang imong mga kapilian sa pag-configure sa kernel, i-klik ang Save aron ma-save ang interface sa pagsumpo ug paggawas gikan sa menu.

I-compile ang Kernel sa CentOS 7

Sa dili pa magsugod ang kernel compilation, siguroha nga ang imong sistema adunay labaw pa sa 25GB nga libre nga luna sa file system. Aron makumpirma, mahimo nimong susihon ang file system nga libre nga wanang gamit ang df command sama sa gipakita.

# df -h

Karon pag-compile ug pag-install sa kernel ug modules gamit ang mosunod nga mga sugo (kini mahimong molungtad og pipila ka oras). Ang proseso sa pag-compile nagbutang sa mga file ubos sa /boot directory ug maghimo usab og bag-ong kernel entry sa imong grub.conf file.

# make bzImage
# make modules
# make
# make install
# make modules_install

Kung makompleto na ang compilation, i-reboot ang sistema ug i-verify ang bag-ong na-install nga Kernel.

# uname -sr

Mao na. Nanghinaut ko nga kining artikuloha makatabang kaayo kaninyong tanan. Kung nag-atubang ka sa bisan unsang mga problema o mga kalisud samtang nag-compile o nag-install sa kernel mobati nga gawasnon sa pagpangutana o pag-post sa imong mga pangutana gamit ang among porma sa komento sa ubos.