Bii o ṣe le ṣajọ Kernel Linux lori CentOS 7


Ṣiṣe aṣa ti a ṣe akojọpọ Kernel Linux jẹ iwulo nigbagbogbo, pataki nigbati o n wa lati jẹki tabi mu awọn ẹya Kernel kan pato, eyiti ko si ni awọn ekuro pinpin ti a pese.

Ninu àpilẹkọ yii, Emi yoo ṣalaye bi a ṣe le ṣajọ ati lo Kernel Linux tuntun lati awọn orisun ni pinpin CentOS 7 (awọn itọnisọna ti a pese nibi tun ṣiṣẹ lori RHEL ati Fedora).

Ti o ko ba fẹ lati kọja nipasẹ iṣeto eka wọnyi, lẹhinna tẹle nkan ti o rọrun wa ti o ṣalaye Bawo ni lati Fi sii tabi Igbesoke si Kernel lori CentOS 7 ni lilo ibi-ipamọ RPM ẹni-kẹta.

Fi Awọn idii ti o nilo sii fun Akopọ Ekuro

Ni akọkọ, rii daju lati ṣe imudojuiwọn awọn ibi ipamọ package sọfitiwia rẹ, fi sori ẹrọ awọn irinṣẹ idagbasoke ti o nilo fun ikojọpọ ekuro kan, ki o fi ẹrọ ikawe ncurses sii nipa lilo pipaṣẹ yum atẹle.

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

Ṣajọ ati Fi Ekuro sii ni CentOS 7

Ṣe igbasilẹ awọn orisun Kernel 4.17 tuntun nipa lilo kernel.org.

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

Jade awọn faili ti a gbe pamọ ki o yipada awọn ilana nipa lilo awọn ofin atẹle.

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

Ṣe atunto Kernel ni CentOS 7

Ekuro gbọdọ wa ni tunto ni deede pẹlu awọn aṣayan atunto ti a beere wọnyi laarin agbegbe CentOS 7.

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

Mo daba ni iyanju fun ọ lati daakọ iṣeto Kernel ti n ṣiṣẹ ( .config ) lati inu itọsọna/bata si ekuro linux-4.17.11 ekuro tuntun.

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

Bayi ṣiṣe awọn ṣe menuconfig pipaṣẹ lati tunto ekuro Linux. Lọgan ti o ba ṣe pipaṣẹ ni isalẹ window window agbejade kan yoo han pẹlu gbogbo awọn akojọ aṣayan. Nibi o le mu tabi mu awọn ẹya ekuro kan ṣiṣẹ. Ti o ko ba mọ pẹlu awọn akojọ aṣayan wọnyi, kan lu bọtini ESC lati jade.

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

Lọgan ti a ba ṣeto awọn aṣayan iṣeto ekuro rẹ, tẹ lori Fipamọ lati fipamọ wiwo iṣeto ni ki o jade kuro ni akojọ aṣayan.

Ṣajọ ekuro ni CentOS 7

Ṣaaju ki o to bẹrẹ akopọ ekuro, rii daju pe eto rẹ ni diẹ sii ju 25GB ti aaye ọfẹ lori eto faili. Lati jẹrisi, o le ṣayẹwo aye ọfẹ eto faili nipa lilo pipaṣẹ df bi o ti han.

# df -h

Bayi ṣajọ ati fi ekuro ati awọn modulu sii nipa lilo awọn ofin atẹle (o le gba awọn wakati pupọ). Ilana akojọpọ gbe awọn faili labẹ/itọsọna bata ati tun ṣe titẹsi ekuro tuntun ninu faili grub.conf rẹ.

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

Lọgan ti akopọ naa pari, tun atunbere eto naa ki o jẹrisi Kernel ti a fi sii tuntun.

# uname -sr

O n niyen. Mo nireti pe nkan yii yoo wulo pupọ fun gbogbo rẹ. Ti o ba nkọju si eyikeyi awọn iṣoro tabi awọn iṣoro lakoko ti o ṣajọ tabi fifi ekuro sii lero ọfẹ lati beere tabi firanṣẹ awọn ibeere rẹ nipa lilo fọọmu asọye wa ni isalẹ.