Проверка опции отладки ядра Linux
-
05-07-2019 - |
Вопрос
Как я могу узнать, установлены ли в стандартном ядре, представленном в моем варианте Linux, флаги DEBUG KERNEL ENABLED или нет??
Я думаю, что опция DEBUG должна быть включена, чтобы использовать такие инструменты, как kprobe, systemtap ??
Решение
Чтобы узнать, как настроено ваше ядро, перейдите в каталог / boot /
. В зависимости от того, как работает ваш дистрибутив, может быть файл config - *
, который показывает параметры конфигурации ядра, которые использовались для сборки ядра. Найдите параметры отладки (например, CONFIG_DEBUG_KERNEL
).
Другие советы
Предполагая, что в ядре есть функция «предоставить конфигурацию через proc», вы можете проверить конфигурацию работающего ядра, просмотрев /proc/config.gz.
gunzip -c /proc/config.gz | less
Если это RHEL / CentOS / Fedora:
Конфигурация ядра находится внутри пакета kernel-devel . Р>
Конкретная конфигурация, используемая Red Hat для сборки ядра вашего дистрибутива, хранится в / usr / src / kernels / версия /. config .
В RHEL 5 вы также можете проверить все драйверы, которые установлены на сервер через ядро:
gunzip -c /boot/symvers-2.6.18-274.3.1.el5.gz | less
Обратите внимание, вы можете получить полный путь:
rpm -ql kernel | grep -i symver*
Также lsmod | больше
должно делать то же самое. Надеюсь, это поможет.
Стандартное ядро, вероятно, НЕ было бы скомпилировано с включенными этими флагами, так как это увеличило бы размер ядра. Накладные расходы были бы недостатком для большинства пользователей.
У вас всегда есть возможность перекомпилировать свою собственную версию ядра, и в этом случае вы можете выбрать свой собственный набор параметров . Р>
Вы можете перечислить модули, скомпилированные в ядро, с помощью команды lsmod
.