Команда Modprobe в Linux

Ядро Linux — это основной компонент операционной системы Linux. Он управляет ресурсами системы и является мостом между оборудованием и программным обеспечением вашего компьютера.

Ядро Linux имеет модульную конструкцию. Модуль ядра, или часто называемый драйвером, — это фрагмент кода, расширяющий функциональность ядра. Модули либо скомпилированы как загружаемые модули, либо встроены в ядро. Загружаемые модули могут быть загружены и выгружены в работающем ядре по запросу без необходимости перезагрузки системы.

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

Вы можете вручную загрузить модуль в ядро с помощью команды modprobe или автоматически во время загрузки с помощью файлов /etc/modules или /etc/modules-load.d/*.conf .

В этой статье мы объясним, как использовать modprobe для добавления и удаления модулей из ядра Linux. modprobe является частью kmod , двоичного kmod , который реализует несколько программ, используемых для управления модулями ядра Linux.

Добавление модулей ядра

Модули ядра хранятся в каталоге /lib/modules/<kernel_version> . Вы найдете версию работающего ядра , используйте команду uname -r .

Только пользователи с правами администратора могут управлять модулями ядра.

Чтобы загрузить модуль, вызовите команду modprobe за которой следует имя модуля:

modprobe module_name

Команда modprobe загрузит данный модуль и любые дополнительные зависимости модуля. В командной строке можно указать только один модуль.

Используйте команду lsmod чтобы убедиться, что модуль загружен:

lsmod | grep module_name

Чтобы загрузить модуль с дополнительными параметрами, используйте синтаксис parameter=value :

modprobe module_name parameter=value

Команда принимает несколько пар parameter=value разделенных пробелом.

Как правило, вам необходимо загрузить модуль во время загрузки системы. Вы можете сделать это, указав модуль и его параметры в файле внутри каталога /etc/modules-load.d . Файлы должны заканчиваться на .conf и иметь любое имя:

/etc/modules-load.d/module_name.conf
option module_name parameter=value

Параметры, указанные в этих файлах, считываются программой udev , которая загружает модули при запуске системы с помощью modprobe .

Удаление модулей ядра

Чтобы удалить модуль, вызовите команду modprobe с параметром -r за которым следует имя модуля:

modprobe -r module_name

modprobe также удалит неиспользуемые зависимости модуля.

При вызове с -r команда принимает несколько модулей в качестве аргументов:

modprobe -r module_name1 module_name2
Вы также можете использовать команду rmmod для выгрузки модуля из ядра Linux.

Если вы хотите предотвратить загрузку модуля ядра во время загрузки, создайте файл .conf с любым именем внутри /etc/modprobe.d . Синтаксис:

/etc/modprobe.d/blacklist.conf
blacklist module_name

Если вы хотите внести в черный список дополнительные модули, укажите модули в новой строке или создайте новый файл .conf .

Выводы

Команда modprobe позволяет добавлять и удалять модули ядра Linux.

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Оставьте комментарий