Поиск по сайту:

Как установить заголовки ядра в CentOS 7


Когда вы компилируете собственный модуль ядра, такой как драйвер устройства, в системе CentOS, вам необходимо установить в системе файлы заголовков ядра, которые включают файлы заголовков C для ядро Linux. Файлы заголовков ядра предоставляют различные виды определений функций и структур, необходимые при установке или компиляции любого кода, взаимодействующего с ядром.

При установке Заголовков ядра убедитесь, что они соответствуют текущей версии ядра, установленной в системе. Если ваша версия ядра поставляется с дистрибутивом по умолчанию или вы обновили ядро с помощью менеджера пакетов yum из базовых репозиториев системы, то вам необходимо установить соответствующие заголовки ядра только с помощью менеджера пакетов. Если вы скомпилировали ядро из исходников, вы можете устанавливать заголовки ядра только из исходников.

Читайте также: как установить заголовки ядра в Ubuntu и Debian

В этой статье мы объясним, как установить Заголовки ядра в дистрибутивах CentOS/RHEL 7 и Fedora с помощью диспетчера пакетов по умолчанию.

Установите заголовки ядра в CentOS 7

Сначала убедитесь, что соответствующие заголовки ядра уже установлены в папке /usr/src/kernels/ в вашей системе, используя следующие команды.

cd /usr/src/kernels/
ls -l

Если в каталоге /usr/src/kernels/ нет соответствующих заголовков ядра, установите заголовки ядра, которые предоставляются пакетом kernel-devel, который может установить с помощью менеджера пакетов по умолчанию, как показано.

yum install kernel-devel   [On CentOS/RHEL 7]
dnf install kernel-devel   [On Fedora 22+]

После установки пакета kernel-devel вы можете найти все файлы заголовков ядра в каталоге /usr/src/kernels, используя следующую команду.

ls -l /usr/src/kernels/$(uname -r) 

Обратите внимание, что на VPS (например, Linode VPS) ядро может иметь индивидуальное имя версии. В таком случае вам придется вручную определить версию ядра и проверить установленные заголовочные файлы ядра, используя следующие команды. .

uname -r	
ls -l /usr/src/kernels/3.10.0-862.2.3.el7.x86_64

Пример вывода
total 4544
drwxr-xr-x.  32 root root    4096 May 16 12:48 arch
drwxr-xr-x.   3 root root    4096 May 16 12:48 block
drwxr-xr-x.   4 root root    4096 May 16 12:48 crypto
drwxr-xr-x. 119 root root    4096 May 16 12:48 drivers
drwxr-xr-x.   2 root root    4096 May 16 12:48 firmware
drwxr-xr-x.  75 root root    4096 May 16 12:48 fs
drwxr-xr-x.  28 root root    4096 May 16 12:48 include
drwxr-xr-x.   2 root root    4096 May 16 12:48 init
drwxr-xr-x.   2 root root    4096 May 16 12:48 ipc
-rw-r--r--.   1 root root     505 May  9 19:21 Kconfig
drwxr-xr-x.  12 root root    4096 May 16 12:48 kernel
drwxr-xr-x.  10 root root    4096 May 16 12:48 lib
-rw-r--r--.   1 root root   51205 May  9 19:21 Makefile
-rw-r--r--.   1 root root    2305 May  9 19:21 Makefile.qlock
drwxr-xr-x.   2 root root    4096 May 16 12:48 mm
-rw-r--r--.   1 root root 1093137 May  9 19:21 Module.symvers
drwxr-xr-x.  60 root root    4096 May 16 12:48 net
drwxr-xr-x.  14 root root    4096 May 16 12:48 samples
drwxr-xr-x.  13 root root    4096 May 16 12:48 scripts
drwxr-xr-x.   9 root root    4096 May 16 12:48 security
drwxr-xr-x.  24 root root    4096 May 16 12:48 sound
-rw-r--r--.   1 root root 3409102 May  9 19:21 System.map
drwxr-xr-x.  17 root root    4096 May 16 12:48 tools
drwxr-xr-x.   2 root root    4096 May 16 12:48 usr
drwxr-xr-x.   4 root root    4096 May 16 12:48 virt
-rw-r--r--.   1 root root      41 May  9 19:21 vmlinux.id

Кроме того, если вам нужны файлы заголовков для ядра Linux для использования glibc, установите пакет kernel-header, используя следующую команду.

yum install kernel-headers   [On CentOS/RHEL 7]
dnf install kernel-headers   [On Fedora 22+]

Теперь вы можете приступить к компиляции собственных или существующих модулей ядра для такого программного обеспечения, как VirtualBox и многих других.

Вот и все! В этой статье мы объяснили, как установить пакеты kernel-devel и kernel-header в CentOS/RHEL 7 и Fedora<. системы. Помните, что прежде чем вы сможете скомпилировать модули ядра, такие как драйвер устройства, в системе Linux, у вас должны быть установлены необходимые файлы заголовков ядра. Если у вас есть вопросы, пожалуйста, используйте форму комментариев ниже, чтобы связаться с нами.