Примеры команд Linux modprobe для просмотра, установки, удаления модулей

Мы предоставляем услуги удаленного администрирования серверов

Примеры команд Linux modprobe для просмотра, установки, удаления модулей

Поделиться

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

Linux поддерживает каталог /lib/modules/$ (uname-r) для модулей и его файлов конфигурации (кроме /etc/modprobe.conf и /etc/modprobe.d).

В ядре Linux 2.6 вместо файлов .o используются модули .ko, поскольку в них содержится дополнительная информация, которую ядро ​​использует для загрузки модулей. Пример в этой статье сделан с использованием modprobe на Ubuntu.

1. Перечислите доступные модули ядра

modprobe -l отобразит все доступные модули, как показано ниже.

$ modprobe -l | less
kernel/arch/x86/kernel/cpu/mcheck/mce-inject.ko
kernel/arch/x86/kernel/cpu/cpufreq/e_powersaver.ko
kernel/arch/x86/kernel/cpu/cpufreq/p4-clockmod.ko
kernel/arch/x86/kernel/msr.ko
kernel/arch/x86/kernel/cpuid.ko
kernel/arch/x86/kernel/apm.ko
kernel/arch/x86/kernel/scx200.ko
kernel/arch/x86/kernel/microcode.ko
kernel/arch/x86/crypto/aes-i586.ko
kernel/arch/x86/crypto/twofish-i586.ko

2. Список текущих загруженных модулей

Хотя приведенная выше команда modprobe отображает все доступные модули, команда lsmod отображает все модули, которые в данный момент загружены в ядро ​​Linux.

$ lsmod | less
soundcore          7264   1 snd
ppdev                6688   0
snd_page_alloc   9156    1 snd_pcm
psmouse            56180  0
lp                     8964    0

3. Установите новые модули в ядро ​​Linux

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

Следующий пример загружает модуль vmhgfs в ядро ​​Linux на Ubuntu.

 

 

  $ sudo modprobe vmhgfs

После загрузки модуля проверьте его с помощью команды lsmod, как показано ниже.

  $ lsmod |  grep vmhgfs
 vmhgfs 50772 0

Файлы модуля имеют расширение .ko. Если вы хотите узнать полное местоположение файла определенного модуля ядра Linux, используйте команду modprobe и выполните grep имени модуля, как показано ниже.

$ modprobe | grep vmhgfs
misc/vmhgfs.ko

$ cd /lib/modules/2.6.31-14-generic/misc

$ ls vmhgfs*
vmhgfs.ko

Примечание: вы также можете использовать insmod для установки новых модулей в ядро ​​Linux.

4. Загрузите новые модули с другим именем, чтобы избежать конфликтов

Учтите, что в некоторых случаях вы должны загрузить новый модуль, но с тем же именем модуля другой модуль уже был загружен для других целей.

Если по каким-то странным причинам имя модуля, которое вы пытаетесь загрузить в ядро, используется (с тем же именем) другим модулем, то вы можете загрузить новый модуль под другим именем.

Чтобы загрузить модуль с другим именем, используйте опцию modprobe -o, как показано ниже.

  $ sudo modprobe vmhgfs -o vm_hgfs

 $ lsmod |  grep vm_hgfs
 vm_hgfs 50772 0

5. Удалить загруженный модуль

Если вы загрузили модуль в ядро ​​Linux для тестирования, вы можете выгрузить (удалить) его из ядра.

Используйте опцию modprobe -r для выгрузки модуля из ядра, как показано ниже.

  modprobe -r vmhgfs
 2019-2020 © linuxadmins all rights reserved

Facebook Twitter Vkontakte