Penguin
Annotated edit history of depmod(8) version 2, including all changes. View license author blame.
Rev Author # Line
1 perry 1 DEPMOD
2 !!!DEPMOD
3 NAME
4 SYNOPSIS
5 DESCRIPTION
6 OPTIONS
7 CONFIGURATION
8 STRATEGY
9 FILES
10 SEE ALSO
11 BUGS
12 AUTHORS
13 ----
14 !!NAME
15
16
17 depmod - handle dependency descriptions for loadable kernel modules
18 !!SYNOPSIS
19
20
21 __depmod__ [[-aA] [[-ehnqrsuvV] [[-C ''configfile''] [[-F
22 ''kernelsyms''] [[-b ''basedirectory'']
23 [[''forced_version'']__
24 depmod__ [[-enqrsuv] [[-F ''kernelsyms''] module1.o
25 module2.o ...
26 !!DESCRIPTION
27
28
29 The __depmod__ and __modprobe__ utilities are intended
30 to make a Linux modular kernel manageable for all users,
31 administrators and distribution maintainers.
32
33
34 __Depmod__ creates a
35 __modprobe__ to automatically load the
36 correct module or stack of modules.
37
38
39 The normal use of __depmod__ is to include the
40 line
41
42
43 __/sbin/depmod -a__
44
45
46 somewhere in the rc-files in ''/etc/rc.d'', so that the
47 correct module dependencies will be available immediately
48 after booting the system. Note that the option __-a__ is
49 now optional. For boot-up purposes, the option __-q__
50 might be more appropriate since that makes depmod silent
51 about unresolved symbols.
52
53
54 It is also possible to create the dependency file
55 immediately after compiling a new kernel. If you do
56 depmod -a 2.2.99__
57 __-F__, __-C__ and __-b__ above for more
58 information on handling this.
59
60
61 While building the relationship between modules and the
62 symbols exported by other modules, __depmod__ does not
63 consider the GPL status of the modules nor of the exported
64 symbols. That is, depmod will not flag an error if a module
65 without a GPL compatible license refers to a GPL only symbol
66 (EXPORT_SYMBOL_GPL in the kernel). However insmod will
67 refuse to resolve GPL only symbols for non-GPL modules so
68 the actual load will fail.
69 !!OPTIONS
70
71
72 __-a__, __--all__
73
74
75 Search for modules in all directories specified in the
76 (optional) configuration file
77 ''/etc/modules.conf''.
78
79
80 __-A__, __--quick__
81
82
83 Compare file timestamps and, if necessary, act like
84 __depmod -a__. This option only updates the dependency
85 file if anything has changed.
86
87
88 __-e__, __--errsyms__
89
90
91 Show all the unresolved symbols for each
92 module.
93
94
95 __-h__, __--help__
96
97
98 Display a summary of options and immediately
99 exit.
100
101
102 __-n__, __--show__
103
104
105 Write the dependency file on stdout instead of in the
106 ''/lib/modules'' tree.
107
108
109 __-q__, __--quiet__
110
111
112 Tell depmod to keep quiet and not to complain about missing
113 symbols.
114
115
116 __-r__, __--root__
117
118
119 Some users compile modules under a non-root userid then
120 install the modules as root. This process can leave the
121 modules owned by the non-root userid, even though the
122 modules directory is owned by root. If the non-root userid
123 is compromised, an intruder can overwrite existing modules
124 owned by that userid and use this exposure to bootstrap up
125 to root access.
126
127
128 By default, modutils will reject attempts to use a module
129 that is not owned by root. Specifying __-r__ will
130 suppress the error and allow root to load modules that are
131 not owned by root.
132
133
134 __Use of -r is a major security exposure and is not
135 recommended.__
136
137
138 __-s__, __--syslog__
139
140
141 Write all error messages via the syslog daemon instead of
142 stderr.
143
144
145 __-u__, __--unresolved-error__
146
147
148 __depmod__ 2.4 does not set a return code when there are
149 any unresolved symbols. The next major release of modutils
150 (2.5) will set a return code for unresolved symbols. Some
151 distributions want a non-zero return code in modutils 2.4
152 but that change might cause problems for users who expect
153 the old behaviour. If you want a non-zero return code in
154 depmod 2.4, specify __-u__. __depmod__ 2.5 will
155 silently ignore the __-u__ flag and will always give a
156 non-zero return code for unresolved symbols.
157
158
159 __-v__, __--verbose__
160
161
162 Show the name of each module as it is being
163 processed.
164
165
166 __-V__, __--version__
167
168
169 Display the version of __depmod__.
170
171
172 The following options are useful for people managing
173 distributions:
174
175
176 __-b__ ''basedirectory'', __--basedir__
177 ''basedirectory''
178
179
180 If the directory tree ''/lib/modules'' containing the
181 sub-trees of modules is moved somewhere else in order to
182 handle modules for a different environment, the __-b__
183 option tells depmod where to find the moved image of the
184 ''/lib/modules'' tree. The file references in the depmod
185 output file that is built, ''modules.dep'', will not
186 contain the ''basedirectory'' path. This means that when
187 the file tree is moved back from
188 ''basedirectory/lib/modules'' into ''/lib/modules'' in
189 the final distribution, all references will be
190 correct.
191
192
193 __-C__ ''configfile'', __--config__
194 ''configfile''
195
196
197 Use the file ''configfile'' instead of
198 ''/etc/modules.conf''. The environment variable
199 __MODULECONF__ can also be used to select a different
200 configuration file from the default ''/etc/modules.conf''
201 (or ''/etc/conf.modules'' (deprecated)).
202
203
204 __-F kernelsyms__,__--filesyms__
205 ''kernelsyms''
206
207
208 When building dependency files for a different kernel than
209 the currently running kernel, it is important that
210 __depmod__ uses the correct set of kernel symbols to
211 resolve the kernel references in each module. These symbols
212 can either be a copy of ''System.map'' from the other
213 kernel, or a copy of the output from ''/proc/ksyms''. If
214 your kernel uses versioned symbols, it is best to use a copy
215 of the ''/proc/ksyms'' output, since that file contains
216 the symbol versions of the kernel symbols. However you can
217 use a ''System.map'' even with versioned
218 symbols.
219 !!CONFIGURATION
220
221
222 The behavior of __depmod__ and __modprobe__ can be
223 adjusted by the (optional) configuration file
224 ''/etc/modules.conf''.
2 perry 225 See modprobe(8) and modules.conf(5) for a
1 perry 226 complete description.
227 !!STRATEGY
228
229
230 Each time you compile a new kernel, the command
231 make modules_install__
232 __
233
234
235 When you get a module unrelated to the kernel distribution
236 you should place it in one of the version-independent
237 directories under ''/lib/modules''.
238
239
240 This is the default strategy, which can be overridden in
241 ''/etc/modules.conf''.
242 !!FILES
243
244
245 ''/etc/modules.conf'' (alternatively but deprecated ''/etc/conf.modules'')
246 ''/lib/modules/*/modules.dep'',
247 ''/lib/modules/*
248 ''
249 !!SEE ALSO
250
251
2 perry 252 modules.conf(5), modprobe(8),
1 perry 253 modinfo(8), lsmod(8),
254 ksyms(8)
255 !!BUGS
256
257
258 __depmod__ [[ -V | --version ] should exit immediately.
259 Instead, it prints the version information and behaves as if
260 no options were given.
261 !!AUTHORS
262
263
264 Jacques Gelinas (jack@solucorp.qc.ca)
265 Bjorn Ekwall (bj0rn@blox.se)
266 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.