xref: /freebsd/sbin/kldload/kldload.8 (revision 2ff63af9b88c7413b7d71715b5532625752a248e)
1.\"
2.\" Copyright (c) 1997 Doug Rabson
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\" $FreeBSD$
27.\"
28.Dd February 11, 2021
29.Dt KLDLOAD 8
30.Os
31.Sh NAME
32.Nm kldload
33.Nd load a file into the kernel
34.Sh SYNOPSIS
35.Nm
36.Op Fl nqv
37.Ar
38.Sh DESCRIPTION
39The
40.Nm
41utility loads
42.Ar file Ns Pa .ko
43into the kernel using the kernel linker.
44Note that if multiple modules are specified then an attempt will
45be made to load them all, even if some fail.
46The
47.Pa .ko
48extension name is not mandatory when loading a given module
49using
50.Nm .
51It does not hurt to specify it though.
52.Pp
53If a bare filename is requested it will only be loaded if it is found within
54the module path as defined by the sysctl
55.Va kern.module_path .
56To load a module from the current directory it must be specified as a full or
57relative path.
58The
59.Nm
60utility will warn if a module is requested as a bare filename and is present
61in the current directory.
62.Pp
63The following options are available:
64.Bl -tag -width indent
65.It Fl n
66Do not try to load module if already loaded.
67.It Fl v
68Be more verbose.
69.It Fl q
70Silence any extraneous warnings.
71.El
72.Sh NOTES
73The kernel security level settings may prevent a module from being
74loaded or unloaded by giving
75.Em "Operation not permitted" .
76.Sh FILES
77.Bl -tag -width /boot/kernel -compact
78.It Pa /boot/kernel
79directory containing loadable modules.
80Modules must have an extension of
81.Pa .ko .
82.El
83.Sh EXIT STATUS
84.Ex -std
85.Sh EXAMPLES
86To load by module name:
87.Bd -literal -offset indent
88\*[Gt] kldload foo
89.Ed
90.Pp
91To load by file name within the module path:
92.Bd -literal -offset indent
93\*[Gt] kldload foo.ko
94.Ed
95.Pp
96To load by relative path:
97.Bd -literal -offset indent
98\*[Gt] kldload ./foo.ko
99.Ed
100.Pp
101To load by full path:
102.Bd -literal -offset indent
103\*[Gt] kldload /boot/kernel/foo.ko
104.Ed
105.Sh AUTOMATICALLY LOADING MODULES
106Some modules (pf, ipfw, ipf, etc.) may be automatically loaded at boot
107time when the corresponding
108.Xr rc.conf 5
109statement is used.
110Modules may also be auto-loaded through their addition to
111.Xr loader.conf 5
112or kld_list in
113.Xr rc.conf 5 .
114.Pp
115Only those modules necessary for booting the system, including those
116required for mounting the root filesystem, should be handled by
117.Xr loader.conf 5 .
118.Sh SEE ALSO
119.Xr kldload 2 ,
120.Xr loader.conf 5 ,
121.Xr rc.conf 5 ,
122.Xr security 7 ,
123.Xr kldconfig 8 ,
124.Xr kldstat 8 ,
125.Xr kldunload 8 ,
126.Xr kldxref 8
127.Sh HISTORY
128The
129.Nm
130utility first appeared in
131.Fx 3.0 ,
132replacing the
133.Nm lkm
134interface.
135.Sh AUTHORS
136.An Doug Rabson Aq Mt dfr@FreeBSD.org
137