Как установить заголовки ядра в Ubuntu и Debian
В нашей последней статье мы объяснили, как установить заголовки ядра в CentOS 7. Заголовки ядра содержат файлы заголовков C для ядра Linux, которые предлагают различные функции и структуру. определения, необходимые при компиляции любого кода, взаимодействующего с ядром, например, модулей ядра или драйверов устройств и некоторых пользовательских программ.
Очень важно отметить, что устанавливаемый вами пакет заголовков ядра должен совпадать с текущей установленной версией ядра в вашей системе. Если ваша версия ядра поставляется с установкой дистрибутива по умолчанию или вы обновили ядро с помощью dpkg или диспетчера пакетов apt из базовых репозиториев Ubuntu или Debian, то вы должны установить соответствующие заголовки ядра только с помощью диспетчера пакетов. И если вы скомпилировали ядро из исходников, вы также должны установить заголовки ядра из исходников.
В этой статье мы объясним, как установить Kernel Headers в дистрибутивах Ubuntu и Debian Linux с помощью диспетчера пакетов по умолчанию.
Установите заголовки ядра в Ubuntu и Debian
Сначала проверьте установленную версию ядра, а также пакет заголовка ядра, который соответствует вашей версии ядра, используя следующие команды.
$ uname -r $ apt search linux-headers-$(uname -r)

В Debian, Ubuntu и их производных все заголовочные файлы ядра можно найти в каталоге /usr/src. Вы можете проверить, установлены ли в вашей системе соответствующие заголовки ядра для вашей версии ядра, используя следующую команду.
$ ls -l /usr/src/linux-headers-$(uname -r)

Из приведенного выше вывода ясно, что соответствующий каталог заголовков ядра не существует, а это означает, что пакет еще не установлен.
Прежде чем вы сможете установить соответствующие заголовки ядра, обновите индекс пакетов, чтобы получить информацию о последних выпусках пакетов, используя следующую команду.
$ sudo apt update
Затем выполните следующую команду, чтобы установить пакет заголовков ядра Linux для вашей версии ядра.
$ sudo apt install linux-headers-$(uname -r)

Затем проверьте, установлены ли в вашей системе соответствующие заголовки ядра, используя следующую команду.
$ ls -l /usr/src/linux-headers-$(uname -r)

Вот и все! В этой статье мы объяснили, как установить заголовки ядра в Ubuntu и Debian Linux и других дистрибутивах в генеалогическом дереве Debian.
Всегда помните, что для компиляции модуля ядра вам понадобятся заголовки ядра Linux. Если у вас есть какие-либо вопросы или мысли, которыми вы хотите поделиться, используйте форму комментариев ниже, чтобы связаться с нами.
Все права защищены. © Linux-Console.net • 2019-2024
linux, установка linux-headers
У меня установлена linux версии 5.4.0-kali3-amd64. Для нее просто нет linux-headers нужной версии. Что делать? Где их взять? Как их установить?
Отслеживать
задан 30 апр 2020 в 19:10
11 5 5 бронзовых знаков
А как вы установили linux указанной версии?
30 апр 2020 в 19:14
Вроде это был уже установленный образ для vmwere с kali.org
30 апр 2020 в 19:33
Что вы видете тут apt-cache search linux-headers
30 апр 2020 в 22:39
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Cмотри версию ядра
uname -a
Доступные хидеры можно посмотреть через
apt-cache search linux-headers
Если есть нужная версия — установи
apt install linux-headers-ВЕРСИЯ-amd64
Если нет совпадений — обновляй ядро и хидеры
Актуальная версия 5.5.17-1kali1
apt update apt install linux-image-amd64 linux-headers-amd64 apt upgrade apt autoremove
Обновится вся система и будут установленны image и headers одной последней версии. Потом понадобится перезагрузится.
Как установить linux headers
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нем неправильно.
Необходимо обновить браузер или попробовать использовать другой.
B правой части каждого сообщения есть стрелки ⇧ и ⇩ . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок ✔ в правой части сообщения.
Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе «Анализ защищенности веб-приложений» Записаться бесплатно!
CTF с учебными материалами Codeby Games Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.
linux⚓︎
Файлы заголовков определяют способ определения функций в исходном файле. Они используются таким образом, чтобы компилятор мог проверить правильность использования функции в качестве сигнатуры функции (возвращаемое значение и параметры) в файле заголовка. Для этой задачи фактическая реализация функции не требуется.
Когда вы компилируете драйвер устройства как модуль ядра, вам необходимы установленные заголовочные файлы ядра. Также они требуются, если вы собираете пользовательское приложение, которое взаимодействует напрямую с ядром.
Версия заголовочных файлов должна соответствовать версии устанавливаемого ядра.
Сборка⚓︎
Обратите внимание
Данный пакет является частью архива с ядром Linux.
Убедитесь, что в архив не включены файлы которые могут помешать сборке.
make mrproper
Эта команда выполнит очистку дерева исходных текстов и удалит файлы конфигурации. Разработчики ядра рекомендуют, чтобы эта команда выполнялась перед каждым процессом компиляции.
Подготовьте заголовки для использования:⚓︎
make headers
Установка⚓︎
find usr/include -name '.*' -delete rm usr/include/Makefile cp -rv usr/include $LIN/usr
Заголовочные файлы, расположенные в системном каталоге /usr/include , должны всегда быть те, которые использовались при компиляции Glibc. Их никогда не следует заменять на чистые заголовочные файлы ядра или любые другие подготовленные заголовочные файлы.
Установленные файлы⚓︎
Данный пакет устанавливает множество заголовочных файлов, в частности /usr/include/asm/*.h, /usr/include/asm-generic/*.h, /usr/include/drm/*.h, /usr/include/linux/*.h, /usr/include/misc/*.h, /usr/include/mtd/*.h, /usr/include/rdma/*.h, /usr/include/scsi/*.h, /usr/include/sound/*.h, /usr/include/video/*.h, and /usr/include/xen/*.h