Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Where'd modprobe -l go?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
danomac
l33t
l33t


Joined: 06 Nov 2004
Posts: 881
Location: Vancouver, BC

PostPosted: Sun Aug 26, 2012 1:14 am    Post subject: Where'd modprobe -l go? Reply with quote

Where'd modprobe -l go to? I used to use it all the time (well, until a recent update) and now it's just gone. It's not even referenced in the manpages.

Yes, I know they're in /lib/modules (which I happened to have a brain fart and couldn't remember, it'd been so long since I manually had to look there.)
Back to top
View user's profile Send private message
kimmie
Guru
Guru


Joined: 08 Sep 2004
Posts: 531
Location: Australia

PostPosted: Sun Aug 26, 2012 1:23 am    Post subject: Reply with quote

From man modprobe:
Code:
-l --list
               List all modules matching the given wildcard (or "*" if no wild‐
               card is given).  This option is provided for backwards  compati‐
               bility  and  may  go away in future: see find(1) and basename(1)
               for a more flexible alternative.

I guess you've hit the future! What's it like there?
Back to top
View user's profile Send private message
VoidMage
Watchman
Watchman


Joined: 14 Oct 2006
Posts: 6196

PostPosted: Sun Aug 26, 2012 3:01 am    Post subject: Reply with quote

Most likely the answer is simple - sys-apps/kmod.
Back to top
View user's profile Send private message
rhill
Retired Dev
Retired Dev


Joined: 22 Oct 2004
Posts: 1629
Location: sk.ca

PostPosted: Sun Aug 26, 2012 5:11 am    Post subject: Reply with quote

Try `lsmod`.
_________________
by design, by neglect
for a fact or just for effect
Back to top
View user's profile Send private message
cach0rr0
Bodhisattva
Bodhisattva


Joined: 13 Nov 2008
Posts: 4123
Location: Houston, Republic of Texas

PostPosted: Sun Aug 26, 2012 8:49 am    Post subject: Reply with quote

dirtyepic wrote:
Try `lsmod`.


doesnt quite do the same thing
loaded modules (via /proc/modules) as opposed to listing all modules, or, the same as doing

Code:

# find /lib/modules/`uname -r` -name '*.ko'


i.e.

Code:

# find /lib/modules/`uname -r` -name '*.ko'
/lib/modules/3.2.11-hardened/kernel/drivers/scsi/scsi_wait_scan.ko
/lib/modules/3.2.11-hardened/kernel/drivers/firmware/dmi-sysfs.ko
/lib/modules/3.2.11-hardened/kernel/drivers/virtio/virtio_mmio.ko
/lib/modules/3.2.11-hardened/kernel/lib/libcrc32c.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc-ccitt.ko
/lib/modules/3.2.11-hardened/kernel/lib/cordic.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc7.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc8.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc16.ko
/lib/modules/3.2.11-hardened/kernel/net/ipv4/netfilter/iptable_raw.ko
/lib/modules/3.2.11-hardened/kernel/net/netfilter/xt_mark.ko


Code:

# modprobe -l
/lib/modules/3.2.11-hardened/kernel/net/netfilter/xt_mark.ko
/lib/modules/3.2.11-hardened/kernel/net/ipv4/netfilter/iptable_raw.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc16.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc8.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc7.ko
/lib/modules/3.2.11-hardened/kernel/lib/cordic.ko
/lib/modules/3.2.11-hardened/kernel/lib/crc-ccitt.ko
/lib/modules/3.2.11-hardened/kernel/lib/libcrc32c.ko
/lib/modules/3.2.11-hardened/kernel/drivers/virtio/virtio_mmio.ko
/lib/modules/3.2.11-hardened/kernel/drivers/firmware/dmi-sysfs.ko
/lib/modules/3.2.11-hardened/kernel/drivers/scsi/scsi_wait_scan.ko


VS

Code:

# lsmod
Module                  Size  Used by
iptable_raw             1391  0
xt_mark                 1369  0

_________________
Lost configuring your system?
dump lspci -n here | see Pappy's guide | Link Stash
Back to top
View user's profile Send private message
danomac
l33t
l33t


Joined: 06 Nov 2004
Posts: 881
Location: Vancouver, BC

PostPosted: Sun Aug 26, 2012 3:47 pm    Post subject: Reply with quote

Code:

 # modprobe -l
modprobe: invalid option -- 'l'


No worky.

Quote:

OPTIONS
-a --all
Insert all module names on the command line.

-b --use-blacklist
This option causes modprobe to apply the blacklist commands in the configuration files (if any) to module names as well. It is usually used by udev(7).

-C --config
This option overrides the default configuration directory (/etc/modprobe.d).

This option is passed through install or remove commands to other modprobe commands in the MODPROBE_OPTIONS environment variable.

-c --showconfig
Dump out the effective configuration from the config directory and exit.

--dump-modversions
Print out a list of module versioning information required by a module. This option is commonly used by distributions in order to package up a Linux kernel module using module versioning deps.

-d --dirname
Directory where modules can be found, /lib/modules/RELEASE by default.

--first-time
Normally, modprobe will succeed (and do nothing) if told to insert a module which is already present or to remove a module which isn't present. This is ideal for simple scripts; however, more complicated scripts often want to know
whether modprobe really did something: this option makes modprobe fail in the case that it actually didn't do anything.

--force-vermagic
Every module contains a small string containing important information, such as the kernel and compiler versions. If a module fails to load and the kernel complains that the "version magic" doesn't match, you can use this option to
remove it. Naturally, this check is there for your protection, so this using option is dangerous unless you know what you're doing.

This applies to any modules inserted: both the module (or alias) on the command line and any modules on which it depends.

--force-modversion
When modules are compiled with CONFIG_MODVERSIONS set, a section detailing the versions of every interfaced used by (or supplied by) the module is created. If a module fails to load and the kernel complains that the module disagrees
about a version of some interface, you can use "--force-modversion" to remove the version information altogether. Naturally, this check is there for your protection, so using this option is dangerous unless you know what you're
doing.

This applies any modules inserted: both the module (or alias) on the command line and any modules on which it depends.

-f --force
Try to strip any versioning information from the module which might otherwise stop it from loading: this is the same as using both --force-vermagic and --force-modversion. Naturally, these checks are there for your protection, so
using this option is dangerous unless you know what you are doing.

This applies to any modules inserted: both the module (or alias) on the command line and any modules it on which it depends.

-i --ignore-install --ignore-remove
This option causes modprobe to ignore install and remove commands in the configuration file (if any) for the module specified on the command line (any dependent modules are still subject to commands set for them in the configuration
file). Both install and remove commands will currently be ignored when this option is used regardless of whether the request was more specifically made with only one or other (and not both) of --ignore-install or --ignore-remove.
See modprobe.d(5).

-n --dry-run --show
This option does everything but actually insert or delete the modules (or run the install or remove commands). Combined with -v, it is useful for debugging problems. For historical reasons both --dry-run and --show actually mean the
same thing and are interchangeable.

-q --quiet
With this flag, modprobe won't print an error message if you try to remove or insert a module it can't find (and isn't an alias or install/remove command). However, it will still return with a non-zero exit status. The kernel uses
this to opportunistically probe for modules which might exist using request_module.

-R --resolve-alias
Print all module names matching an alias. This can be useful for debugging module alias problems.

-r --remove
This option causes modprobe to remove rather than insert a module. If the modules it depends on are also unused, modprobe will try to remove them too. Unlike insertion, more than one module can be specified on the command line (it
does not make sense to specify module parameters when removing modules).

There is usually no reason to remove modules, but some buggy modules require it. Your distribution kernel may not have been built to support removal of modules at all.

-S --set-version
Set the kernel version, rather than using uname(2) to decide on the kernel version (which dictates where to find the modules).

--show-depends
List the dependencies of a module (or alias), including the module itself. This produces a (possibly empty) set of module filenames, one per line, each starting with "insmod" and is typically used by distributions to determine which
modules to include when generating initrd/initramfs images. Install commands which apply are shown prefixed by "install". It does not run any of the install commands. Note that modinfo(8) can be used to extract dependencies of a
module from the module itself, but knows nothing of aliases or install commands.

-s --syslog
This option causes any error messages to go through the syslog mechanism (as LOG_DAEMON with level LOG_NOTICE) rather than to standard error. This is also automatically enabled when stderr is unavailable.

This option is passed through install or remove commands to other modprobe commands in the MODPROBE_OPTIONS environment variable.

-V --version
Show version of program and exit.

-v --verbose
Print messages about what the program is doing. Usually modprobe only prints messages if something goes wrong.

This option is passed through install or remove commands to other modprobe commands in the MODPROBE_OPTIONS environment variable.


It's definitely gone.

Code:

# equery list kmod
 * Searching for kmod ...
[IP-] [  ] sys-apps/kmod-9-r3:0


I guess it is kmod. But why would they remove something useful? Lately linux in general has been pissing me off. Imagine a newbie experimenting with a kernel to list all modules... instead of a simple command he has to literally search manually. It's kind of stupid.

As cach0rr0 mentioned, lsmod doesn't work, I want all modules built in the kernel, not just the ones that are loaded. I do know how to find them manually, I'm just pissed that something that used to be a few keystokes is now a couple of dozen. Feh. :evil:
Back to top
View user's profile Send private message
Logicien
Veteran
Veteran


Joined: 16 Sep 2005
Posts: 1555
Location: Montréal

PostPosted: Sun Aug 26, 2012 6:54 pm    Post subject: Reply with quote

Hello,
reading your posts, I worked on a Bash function that can be include in a Bash configuration file and could do about the same than the command modprobe -l:
Code:
function fmod() {

[ "$1" = '' ] && find /lib/modules/$(uname -r) -iname *.ko -print | awk -F $(uname -r)/ '{print $NF}'

[ "$1" != '' ] && find /lib/modules/$(uname -r) -iname "$1".ko -print | awk -F $(uname -r)/ '{print $NF}'

}

The output of
Code:
fmod *2800*

should be the same as
Code:
modprobe -l *2800*

Both give me
Code:
kernel/drivers/net/wireless/rt2x00/rt2800lib.ko
kernel/drivers/net/wireless/rt2x00/rt2800usb.ko

_________________
Paul
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum