lsmod
Usado para listar os módulos disponíveis no kernel e também os que estão sendo utilizados. Ele consulta o conteúdo do arquivo
/proc/modules e o formata, como no exemplo.
Exemplo: lista os módulos carregados no kernel:
$ lsmod
Module Size Used by Not tainted
snd-seq-oss 23104 0 (unused)
snd-seq-midi-event 3208 0 [snd-seq-oss]
snd-seq 33552 2 [snd-seq-oss snd-seq-midi-event]
snd-pcm-oss 28928 0 (unused)
snd-mixer-oss 11928 0 [snd-pcm-oss]
printer 7520 0
keybdev 1828 0 (unused)
mousedev 4244 1
hid 21380 0 (unused)
...
insmod
Usado para carregar um módulo para o kernel habilitando-o, ou seja, fazendo as ligações necessárias entre o núcleo e o módulo. Este comando usa o arquivo
/etc/modules.conf caso o nome do módulo não for fornecido de maneira completa.
Exemplo: carrega o módulo keybdev:
# insmod keybdev
Using /lib/modules/2.4.33.3/kernel/drivers/input/keybdev.o.gz
Sintaxe: insmod [opções] nome_do_modulo
Opções: entre as opções mais usadas estão:
- -f (força o carregamento), que pode causar danos ao sistema;
- -k (após o carregamento, o descarrega se inativo por algum tempo);
- -L (não permite carregar novamente o mesmo módulo);
- -p (testa o módulo primeiro, para ver se é possível carregá-lo);
- -s (manda a saída, seja ela qual for para o syslog /var/log/messages).
rmmod
Descarrega módulos do kernel.
Exemplo: descarrega o módulo keybdev:
# rmmod keybdev
Sintaxe: rmmod [opções] nome_do_modulo
Opções: opções mais usadas:
- -w (espera que o módulo fique ocioso para descarregá-lo);
- -a (remove todos os módulos);
- -s (manda a saída para o syslog).
modinfo
Exibe informações do módulo, tais como autor (-a), tipo de licença (-l), descrição do módulo (-d) e seus parâmetros (-p). Nem sempre o módulo apresentará todas essas informações.
Exemplo: mostra todas as informações referentes ao módulo keybdev:
# modinfo keybdev
filename: /lib/modules/2.4.33.3/kernel/drivers/input/keybdev.o.gz
description: "Input driver to keyboard driver binding"
author: "Vojtech Pavlik <vojtech@suse.cz>"
license: "GPL"
parm: jp_kbd_109 int
Sintaxe: modinfo [opções] nome_do_modulo
modprobe
Tanto carrega quanto descarrega módulos do kernel, mas de maneira inteligente, pois resolve as dependências que porventura possam existir. Essas dependências são muito comuns e normalmente são os motivos da falha do carregamento de um pacote específico. O modprobe resolve bem essa questão e é justamente por isso que é preferível usá-lo ao invés do insmod ou rmmod.
Exemplo: carrega o módulo ide-scsi detalhadamente (não é comum exibir mensagem):
# modprobe -v ide-scsi
/sbin/insmod /lib/modules/2.4.33.3/kernel/drivers/scsi/ide-scsi.o.gz
Using /lib/modules/2.4.33.3/kernel/drivers/scsi/ide-scsi.o.gz
Symbol version prefix ''
Descarrega o módulo ide-scsi detalhadamente (-v):
# modprobe -rv ide-scsi
delete ide-scsi
Sintaxe: modprobe [opções] nome_do_modulo
Opções: opções mais usadas:
- -C arquivo_configuração (fornece um arquivo que configura o comportamento do comando);
- -c (mostra as configurações atuais do comando),
- -n (realiza os procedimentos de carregamento do módulo, mas o carrega de fato);
- -r (remove o módulo);
- -s (envia a saída para o syslog);
- -f (força a instalação de um módulo);
- -l (lista os módulos, usando ou não chave de busca);
- -a (carrega todos os módulos indicados pela chave de busca informada);
- -t (tenta carregar os módulos de um determinado diretório);
- -v (verbose - detalhado).
depmod
Gera a lista de dependências para um determinado módulo, pois alguns módulos dependem de outros. Essa lista localiza-se em /lib/modules/versão-do-kernel/modules.dep.
Exemplo: gera a lista de dependências de todos os módulos:
# depmod -a
Obs.: esse arquivo gerado será usado posteriormente pelo comando modprobe pra resolver as futuras possíveis dependências.
Sintaxe: depmod [opções]
Opção:
- -a (todos os módulos);
- -n (apenas mostra as dependências na tela);
- -b diretório (indica um diretório diferente do /lib/modules/versão_do_kernel).