Reference

kldconfig(8)

display or modify the kernel module search path

NAME

kldconfig – display or modify the kernel module search path

SYNOPSIS

kldconfig [-dfimnUv] [-S sysctlname] [path ...]

kldconfig -r

DESCRIPTION

The kldconfig utility displays or modifies the search path used by the kernel when loading modules using the kldload(8) utility or the kldload(2) syscall.

The following options are available:

-d

Remove the specified paths from the module search path.

-f

Do not fail if a path specified for adding is already present in the search path, or if a path specified for removing is not present in the search path. This may be useful in startup/shutdown scripts for adding a path to a file system which is still not mounted, or in shutdown scripts for unconditionally removing a path that may have been added during startup.

-i

Add the specified paths to the beginning of the search path, not to the end. This option can only be used when adding paths.

-m

Instead of replacing the module search path with the set of paths specified, “merge” in the new entries.

-n

Do not actually change the module search path.

-r

Display the current search path. This option cannot be used if any paths are also specified.

-S sysctlname

Specify the sysctl name to use instead of the default kern.module_path.

-U

“Unique-ify” the current search path - if any of the directories is repeated one or more times, only the first occurrence remains. This option implies -m.

-v

Verbose output: display the new module search path. If the path has been changed, and the -v flag is specified more than once, the old path is displayed as well.

FILES

/boot/kernel, /boot/modules, /modules

The default module search path used by the kernel.

EXIT STATUS

The kldconfig utility exits 0 on success, and >0 if an error occurs.

EXAMPLES

Show the module search path

$ kldconfig -r
/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays

Try to delete the /boot directory from the search path. The command will fail:

$ kldconfig -d /boot
kldconfig: not in module search path: /boot
$ echo $?
1

Same as above but forcing the operation. This time the command will succeed:

$ kldconfig -d -f /boot
$ echo $?
0

Add the /boot directory to the beginning of the search path and display extra verbose output:

$ kldconfig -i -m -vv /boot
/boot/kernel;/boot/modules -> /boot;/boot/kernel;/boot/modules

Without -m the -i flag will overwrite the contents of the search path list:

$ kldconfig -i -vv /boot
/boot;/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays -> /boot

Same as above but using -n to simulate the operation without actually doing it:

$ kldconfig -i -n -vv /boot
/boot;/boot/kernel;/boot/modules;/boot/dtb;/boot/dtb/overlays -> /boot

Add directories to the search path removing duplicates. Note the need of -f to force the operation in case any of the directories is already in the search path. The /boot/kernel directory will be added once:

$ kldconfig -f -U /boot/kernel /boot/kernel /boot/modules /boot/dtb /boot/dtb/overlays

SEE ALSO

kldload(2), kldload(8), kldxref(8), sysctl(8)

HISTORY

The kldconfig utility first appeared in FreeBSD 4.4.

AUTHORS

Peter Pentchev ⟨[email protected]⟩

History