Existe uma maneira de determinar em qual versão do kernel um módulo do kernel foi compilado?

6

Eu tenho brincado recentemente com a criação de módulos do kernel usando algumas colunas para uma configuração embutida.

Seria útil para mim no futuro ter a capacidade de identificar a versão do kernel em que esses módulos foram criados. Não consigo encontrar nenhuma informação on-line sobre isso, então estou começando a pensar que talvez não seja possível.

Então, minha pergunta é se existem utilitários de linha de comando que possam determinar os cabeçalhos da versão do kernel com os quais um arquivo * .ko foi compilado?

    
por mathematician1975 09.04.2015 / 12:00

1 resposta

11

Execute o comando modinfo <kernel_module_name> e procure por vermagic

shw@shw:/tmp # modinfo btrfs
filename: /lib/modules/3.13.0-36-generic/kernel/fs/btrfs/btrfs.ko
license: GPL
alias: devname:btrfs-control
alias: char-major-10-234
alias: fs-btrfs srcversion: EA2C07F0B841AE2A6D8F91F
depends: libcrc32c,raid6_pq,xor
intree: Y
vermagic: 3.13.0-36-generic SMP mod_unload modversions 686 <==
signer: Magrathea: Glacier signing key
sig_key: FF:9A:DA:11:B8:55:51:6A:72:98:65:9D:4E:3F:BB:76:C5:4A:D3:30
sig_hashalgo: sha512

    
por 09.04.2015 / 12:06