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

12 set 2022 2 min di lettura
Как просмотреть модули ядра, загруженные в Linux с помощью Lsmod
Indice dei contenuti

Введение

lsmod — это утилита командной строки, которая отображает информацию о загруженных модулях ядра Linux.

Модули ядра

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

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

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

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

Команда lsmod

lsmod — это простая утилита, которая не принимает никаких параметров или аргументов. Что делает команда, так это читает /proc/modules и отображает содержимое файла в хорошо отформатированном списке.

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

lsmod

Команда генерирует информацию для каждого загруженного модуля ядра в новой строке:

Module Size Used by
 fuse 126976 3
 sunrpc 434176 1
 nfit 61440 0
 libnvdimm 172032 1 nfit
 crct10dif_pclmul 16384 0
 crc32_pclmul 16384 0
 ghash_clmulni_intel 16384 0
 sg 40960 0
 joydev 24576 0
 pcspkr 16384 0
 virtio_balloon 20480 0
 i2c_piix4 24576 0
 ip_tables 28672 0
 ext4 733184 1
 mbcache 16384 1 ext4
 jbd2 122880 1 ext4
 sr_mod 28672 0
 sd_mod 49152 2
 cdrom 69632 1 sr_mod
 ata_generic 16384 0
 bochs_drm 24576 1
 drm_kms_helper 200704 1 bochs_drm
 syscopyarea 16384 1 drm_kms_helper
 sysfillrect 16384 1 drm_kms_helper
 sysimgblt 16384 1 drm_kms_helper
 fb_sys_fops 16384 1 drm_kms_helper
 ttm 131072 1 bochs_drm
 drm 520192 4 drm_kms_helper,bochs_drm,ttm
 ata_piix 36864 0
 libata 274432 2 ata_piix,ata_generic
 crc32c_intel 24576 2
 virtio_net 53248 0
 serio_raw 16384 0
 virtio_console 36864 1
 net_failover 24576 1 virtio_net
 virtio_scsi 20480 1
 failover 16384 1 net_failover

Каждая строка состоит из трех столбцов:

  • Module — в первом столбце указано название модуля.
  • Size — во втором столбце указан размер модуля в байтах.
  • Used by — в третьем столбце отображается число, указывающее, сколько экземпляров модуля используется в настоящее время. Нулевое значение указывает, что модуль не используется. Разделенный запятыми список после номера показывает, что использует модуль.

Чтобы узнать, загружен ли конкретный модуль, отфильтруйте вывод с помощью grep. Например, чтобы узнать, загружен ли модуль fuse, вы должны запустить:

lsmod | grep fuse
fuse 126976 3

Для получения подробной информации о модуле используйте команду modinfo

Вывод

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

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.