Kernel module path

Nikolas Britton nikolas.britton at
Wed Jun 7 18:06:18 UTC 2006

On 6/7/06, Richard Jones <richard at> wrote:
> Hi,
> I'm having trouble loading kernel modules. Put simply "make
> installkernel" seems install native kernel modules into /boot/kernel/,
> but kldload seems to want to load them from /boot/modules.

3rd party kernel modules go in /boot/modules and /boot/kernel is for
FreeBSD only.

> Obviously I can load modules by hand and/or copy the modules into
> /boot/modules, but surely there's a better way - either by modifying the
> installkernel behaviour or kldload.

Yes, this drives me nuts too. For example the kqemu port gets
installed in /boot/kernel and highpoint's manuals tell you to install
drivers there too. The problem is that if you rebuild your kernel or
do a buildworld et. al. it will wipeout  everything in /boot/kernel...
This is why we have /boot/modules, everything in here will survive a
kernel rebuild, buildworld, etc...

>From the loader man page (FreeBSD 6.1):
Sets the list of directories which will be searched for modules named
in a load command or implicitly required by a dependency. The default
value for this variable is ``/boot/kernel;/boot/modules''."

>From the hier man page (FreeBSD 6.1):
  "  /boot/     programs and configuration files used during operating system

                defaults/  default bootstrapping configuration files; see
                kernel/    pure kernel executable (the operating system loaded
                           into memory at boot time).
                modules/   third-party loadable kernel modules; see kldstat(8)"

BSD Podcasts @:

More information about the freebsd-questions mailing list