Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am automating some configurations on my systems using Puppet (however, that is not really relevant here). For a group of machines I want to load a kernel module at boot time. The most elegant way seems to edit /etc/modules and add one on an individual line. However, I would like to use separate files in a ".d" directory structure for easier maintainability, rather than having Puppet editing a file.

For modprobe and specifying the options for or blacklisting modules, there's /etc/modprobe.d/, but what's the most elegant way for actually loading modules at boot time using a single new file? Basically, I'm looking for the non-existing /etc/modules.d/ directory.

Any suggestions?

share|improve this question

You should be able to put additional .conf files in /etc/modprobe.d/ to do module loading as well (even though the default files in there are all about blacklisting things).

You may be able to just put the module name on a line by itself, or if you need more complex behaviour, you can use 'install' at the beginning of a line. From the manpage:

install modulename command...
    This is the most powerful primitive: it tells modprobe to run your command 
    instead of inserting the module in the kernel as normal.

share|improve this answer
Are you sure about that "to do module loading as well"? Does not seem to work for me. I've put a file in /etc/modprobe.d/mymodule.conf containing one line acpiphp, but the module isn't loaded on reboot. Same when prepending it with install. Additionally, when modprobing manually, now getting warnings: WARNING: /etc/modprobe.d/mymodule.conf line 1: ignoring bad line starting with 'acpiphp' – gertvdijk Dec 12 '12 at 20:49
I'm not sure about putting it on a line by itself, but I'm positive that you can load modules using a line that starts with "install". – ImaginaryRobots Dec 12 '12 at 21:03
Nope, as I said, same when prepending with install: WARNING: /etc/modprobe.d/mymodule.conf line 1: ignoring bad line starting with 'install' – gertvdijk Dec 12 '12 at 21:07
you might have to write your own startup script, at that point. – ImaginaryRobots Dec 13 '12 at 22:05

When using a file in /etc/modules.d directory you have to use install directive.

Since "install" is expecting [module_name] [command]

install your_module /bin/true

will do the trick ;)

share|improve this answer
Thanks, I'll try it out and let you know. Do you have any source for this? The only source I find using Google on modules.d install is your answer (rest of the results is irrelevant noise). – gertvdijk Dec 31 '13 at 0:05

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.