Când compilați un modul de kernel personalizat, cum ar fi un driver de dispozitiv pe un CentOS, trebuie să aveți fișiere antet de nucleu instalate pe sistem, care să includă fișierul C fișiere antet pentru nucleul Linux. Fișierele de antet ale nucleului oferă diferite tipuri de definiții ale funcțiilor și structurilor necesare la instalarea sau compilarea oricărui cod care se interfață cu nucleul.
Când instalați Anteturi Kernel, asigurați-vă că se potrivește cu versiunea kernel instalată în prezent pe sistem. Dacă versiunea dvs. Kernel vine cu instalarea de distribuție implicită sau aveți ți-ai actualizat Kernel-ul folosind managerul de pachete yum din depozitele de bază ale sistemului, atunci trebuie să instalați anteturile kernelului potrivite folosind doar managerul de pachete. Dacă ați compilat Kernel din surse, puteți instala anteturile kernelului numai din surse.
Citește și: Cum se instalează anteturile kernelului în Ubuntu și Debian
În acest articol, vom explica cum se instalează Anteturi Kernel în CentOS / RHEL 7 și Fedora distribuții folosind managerul de pachete implicit.
Mai întâi confirmați că anteturile kernelului potrivite sunt deja instalate sub /usr/src/kernels/ locația pe sistemul dvs. utilizând următoarele comenzi.
# cd / usr / src / kernels / # ls -l.
Dacă nu există anteturi de nucleu potrivite în /usr/src/kernels/ director, continuați și instalați anteturile kernelului, care este furnizat de kernel-devel pachet care poate fi instalat folosind managerul de pachete implicit așa cum se arată.
# yum install kernel-devel [Pe CentOS / RHEL 7] # dnf instalează kernel-devel [Pe Fedora 22+]
După instalarea kernel-devel pachet, puteți găsi toate fișierele anteturilor kernelului în /usr/src/kernels director folosind următoarea comandă.
# ls -l / usr / src / kernels / $ (uname -r)
Notă asupra unui VPS (de exemplu a Linode VPS), un nucleu poate avea un nume de versiune personalizat, într-un astfel de scenariu, trebuie să identificați manual versiunea nucleului și să verificați fișierele de antet ale nucleului instalate folosind următoarele comenzi.
# uname -r # ls -l /usr/src/kernels/3.10.0-862.2.3.el7.x86_64.
total 4544. drwxr-xr-x. 32 rădăcină rădăcină 4096 16 mai 12:48 arh. drwxr-xr-x. 3 rădăcină rădăcină 4096 16 mai 12:48 bloc. drwxr-xr-x. 4 rădăcină rădăcină 4096 16 mai 12:48 cripto. drwxr-xr-x. 119 rădăcină rădăcină 4096 16 mai 12:48 drivere. drwxr-xr-x. 2 rădăcină rădăcină 4096 16 mai 12:48 firmware. drwxr-xr-x. 75 rădăcină rădăcină 4096 16 mai 12:48 fs. drwxr-xr-x. 28 rădăcină rădăcină 4096 16 mai 12:48 include. drwxr-xr-x. 2 rădăcină rădăcină 4096 16 mai 12:48 init. drwxr-xr-x. 2 rădăcină rădăcină 4096 16 mai 12:48 ipc. -rw-r - r--. 1 rădăcină rădăcină 505 9 mai 19:21 Kconfig. drwxr-xr-x. 12 rădăcină rădăcină 4096 16 mai 12:48 miez. drwxr-xr-x. 10 rădăcină rădăcină 4096 16 mai 12:48 lib. -rw-r - r--. 1 rădăcină rădăcină 51205 9 mai 19:21 Makefile. -rw-r - r--. 1 rădăcină rădăcină 2305 9 mai 19:21 Makefile.qlock. drwxr-xr-x. 2 rădăcină rădăcină 4096 16 mai 12:48 mm. -rw-r - r--. 1 rădăcină rădăcină 1093137 9 mai 19:21 Module.symvers. drwxr-xr-x. 60 rădăcină rădăcină 4096 16 mai 12:48 net. drwxr-xr-x. 14 rădăcină rădăcină 4096 16 mai 12:48 mostre. drwxr-xr-x. 13 rădăcină rădăcină 4096 16 mai 12:48 scripturi. drwxr-xr-x. 9 rădăcină rădăcină 4096 16 mai 12:48 securitate. drwxr-xr-x. 24 rădăcină rădăcină 4096 16 mai 12:48 sunet. -rw-r - r--. 1 rădăcină rădăcină 3409102 9 mai 19:21 System.map. drwxr-xr-x. 17 rădăcină rădăcină 4096 16 mai 12:48 instrumente. drwxr-xr-x. 2 rădăcină rădăcină 4096 16 mai 12:48 usr. drwxr-xr-x. 4 rădăcină rădăcină 4096 16 mai 12:48 virt. -rw-r - r--. 1 rădăcină rădăcină 41 9 mai 19:21 vmlinux.id.
În plus, dacă aveți nevoie fișierele antet pentru kernel-ul Linux pentru utilizare de către glibc, instalați fișierul header-nucleu pachet folosind următoarea comandă.
# yum instala kernel-headers [Pe CentOS / RHEL 7] # dnf instalează kernel-headers [Pe Fedora 22+]
Acum sunteți bine să începeți să vă compilați modulele kernel proprii sau existente pentru software cum ar fi VirtualBox si multe altele.
Asta e! În acest articol, am explicat cum se instalează kernel-devel și header-nucleu pachete în CentOS / RHEL 7 și Fedora sisteme. Amintiți-vă că, înainte de a putea compila module kernel, cum ar fi driverul de dispozitiv pe un sistem Linux, ar trebui să aveți fișierele antet necesare kernel instalate. Dacă aveți întrebări, vă rugăm să folosiți formularul de comentarii de mai jos pentru a ne contacta.