Můžete použít příkaz "locate" nebo "find" na těchto modulech, abyste zjistili, kde se nacházejí, například
[[email protected] core_src]# lsmod
Module Size Used by
iptable_filter 2793 0
ipt_MASQUERADE 2466 1
iptable_nat 6158 1
vmware_balloon 7199 0
i2c_piix4 12608 0
i2c_core 31276 1 i2c_piix4
shpchp 33482 0
ext4 371331 2
mbcache 8144 1 ext4
jbd2 93312 1 ext4
sd_mod 39488 4
crc_t10dif 1541 1 sd_mod
sr_mod 16228 0
cdrom 39803 1 sr_mod
mptspi 17051 3
mptscsih 36828 1 mptspi
mptbase 94005 2 mptspi,mptscsih
scsi_transport_spi 26151 1 mptspi
pata_acpi 3701 0
ata_generic 3837 0
ata_piix 22846 0
dm_mirror 14101 0
dm_region_hash 12170 1 dm_mirror
dm_log 10122 2 dm_mirror,dm_region_hash
dm_mod 81692 2 dm_mirror,dm_log
[[email protected] core_src]# locate vmware_balloon
/lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/misc/vmware_balloon.ko
Omlouvám se, pokud odpověď přichází trochu pozdě, ale právě dnes jsem na tuto konkrétní otázku narazil...
Abych minimalizoval manuální práci, zde je můj seznam cest, ze kterých jsou aktuálně načtené moduly načteny:
awk '{ print $1 }' /proc/modules | xargs modinfo -n | sort
Potřeboval jsem to k vytvoření minimálního obrazu jádra obsahujícího pouze moduly, které skutečně potřebuji. Bohužel lsmod
zobrazí pouze pole názvu, které se vždy neshoduje s názvem souboru modules# (např. phy-am335x-control.ko
a phy_am335x_control
). Doufám, že to pomůže.
Získejte cesty ze seznamu načtených modulů. Bez potřeby awk
.
while IFS= read -r line;
do modinfo -n "${line%% *}"
done < /proc/modules | sort