Skip to main content

# 06-B.5: Kernel Module Management - lsmod/modinfo Command

## The lsmod Command

The lsmod command is used to display the status of modules in the Linux kernel. It results in a list of loaded modules. lsmod is a trivial program which nicely formats the contents of the/proc/modules, showing what kernel modules are currently loaded.

Syntax:

lsmod

Example:

pbmac@pbmac-server $lsmod Module Size Used by hid_logitech_hidpp 36864 0 hid_logitech_dj 20480 0 vmw_vsock_vmci_transport 32768 0 vsock 36864 1 vmw_vsock_vmci_transport vmw_vmci 69632 1 vmw_vsock_vmci_transport  Output Format: There are three columns in output. • First column is used for ‘Name‘ of the module file. • Second column is used for ‘size‘ of the module in Bytes. • The third column in output is for ‘used by.‘ It is basically used to display the number of instances of the module which are used. ## The modinfo Command The modinfo command is used to display the information about a Linux Kernel module. This command extracts the information from the Linux kernel modules given on the command line. If the module name is not a file name, then the /lib/modules/$(uname -r)directory is searched by default. modinfo can understand modules from any of the Linux Kernel architecture.

Syntax:

modinfo [ OPTION ] [modulename|filename...]

modinfo Command Options

Options Options Meaning
-F, --field Only print this field value, one per line. This is most useful for scripts. Field names are case-insensitive. Common fields (which may not be in every module) include author, description, license, parm, depends, and alias. There are often multiple parm, alias and depends fields. The special field filename lists the filename of the module.
-b basedir, --basedir basedir Root directory for modules, / by default.
-k kernel Provide information about a kernel other than the running one.
-l, --files-with-matches Suppress normal output; instead print the name of each input file from which output would normally have been printed. The scanning will stop on the first match.
-o, --only-matching Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.
-v, --invert-match Invert the sense of matching, to select non-matching lines.
-f FILE, --file=FILE Obtain patterns from FILE, one per line. If this option is used multiple times or is combined with the -e (--regexp) option, search for all patterns given. The empty file contains zero patterns, and therefore matches nothing.

Taking the name returned in the output of lsmod, it is possible to find out more about a particular module as seen below.

pbmac@pbmac-server $lsmod Module Size Used by ... vboxdrv 483328 2 vboxnetadp,vboxnetflt pbmac@pbmac-server$ modinfo vboxdrv
filename:       /lib/modules/4.15.0-91-generic/misc/vboxdrv.ko
version:        6.1.6 r137129 (0x002d0001)
license:        GPL
description:    Oracle VM VirtualBox Support Driver
author:         Oracle Corporation
srcversion:     1B117C52DF5B4D7EFB983ED
depends:
retpoline:      Y
name:           vboxdrv
vermagic:       4.15.0-91-generic SMP mod_unload
parm:           force_async_tsc:force the asynchronous TSC mode (int)


Adapted from:
"lsmod command in Linux with Examples" by Narendramnitcse, Geeks for Geeks is licensed under CC BY-SA 4.0
"modinfo command in Linux with Examples" by Rahulkumarmandal, Geeks for Geeks is licensed under CC BY-SA 4.0

• Was this article helpful?