source: BOOK/final-system/common/udev.xml@ 8909b16

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 8909b16 was 4faecfa, checked in by Jim Gifford <clfs@…>, 19 years ago

r1120@server (orig r1118): chris | 2006-01-31 19:29:01 -0800
Added a sed command to udev instructions to account for the new 'test' program location

  • Property mode set to 100644
File size: 7.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-system-udev" role="wrap">
9 <?dbhtml filename="udev.html"?>
10
11 <title>Udev-&udev-version;</title>
12
13 <indexterm zone="ch-system-udev">
14 <primary sortas="a-Udev">Udev</primary>
15 </indexterm>
16
17 <sect2 role="package">
18 <title/>
19
20 <para>The Udev package contains programs for dynamic creation of device
21 nodes.</para>
22
23 <segmentedlist>
24 <segtitle>&dependencies;</segtitle>
25
26 <seglistitem>
27 <seg>Coreutils, GCC, Make, Perl, and Tree</seg>
28 </seglistitem>
29 </segmentedlist>
30
31 </sect2>
32
33 <sect2 role="installation">
34 <title>Installation of Udev</title>
35
36 <para os="a">Compile the package:</para>
37
38<screen os="b"><userinput>make EXTRAS="extras/firmware extras/run_directory"</userinput></screen>
39
40 <variablelist os="c">
41 <title>The meaning of the make parameter:</title>
42
43 <varlistentry>
44 <term><parameter>EXTRAS="extras/firmware extras/run_directory"</parameter></term>
45 <listitem>
46 <para>This builds the <command>udev_run_devd</command> and
47 <command>udev_run_hotplugd</command> binaries, which are required for
48 correct handling of hotpluggable devices.</para>
49 </listitem>
50 </varlistentry>
51
52 </variablelist>
53
54 <para os="d">If you want to run the testsuite, you need to change
55 a hardcoded reference to the <command>test</command>
56 program:</para>
57
58 <para os="e"><userinput>sed -i 's@/usr/bin/test@/bin/test@' test/udev-test.pl</userinput></para>
59
60 <para os="f">To test the results, issue:
61 <userinput>make test</userinput>.</para>
62
63 <para os="g">Install the package:</para>
64
65<screen os="h"><userinput>make DESTDIR=/ EXTRAS="extras/firmware extras/run_directory" install</userinput></screen>
66
67 <variablelist os="i">
68 <title>The meaning of the make parameter:</title>
69
70 <varlistentry>
71 <term><parameter>DESTDIR=/</parameter></term>
72 <listitem>
73 <para>This prevents the Udev build process from killing any
74 <command>udevd</command> processes that may be running on the
75 system.</para>
76 </listitem>
77 </varlistentry>
78
79 </variablelist>
80
81 <para os="j">Udev's configuration is far from ideal by default, so install
82 the configuration files here:</para>
83
84<screen os="k"><userinput>cp ../&udev-config-file; /etc/udev/rules.d/25-lfs.rules</userinput></screen>
85
86 <para os="l">Install the documentation that explains how to create
87 Udev rules:</para>
88
89<screen os="m"><userinput>install -m644 -D docs/writing_udev_rules/index.html /usr/share/doc/udev-&udev-version;/index.html</userinput></screen>
90
91 <para os="n">Run the <command>udevstart</command> program to create our full
92 complement of device nodes.</para>
93
94<screen os="o"><userinput>/sbin/udevstart</userinput></screen>
95
96 </sect2>
97
98 <sect2 id="contents-udev" role="content">
99 <title>Contents of Udev</title>
100
101 <segmentedlist>
102 <segtitle>Installed programs</segtitle>
103 <segtitle>Installed directory</segtitle>
104
105 <seglistitem>
106 <seg>udev, udevcontrol, udevd, udevinfo, udevmonitor, udevsend,
107 udevstart and udevtest</seg>
108 <seg>/etc/udev</seg>
109 </seglistitem>
110 </segmentedlist>
111
112 <variablelist>
113 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
114 <?dbfo list-presentation="list"?>
115 <?dbhtml list-presentation="table"?>
116
117 <varlistentry id="udev">
118 <term><command>udev</command></term>
119 <listitem>
120 <para>Creates device nodes in <filename
121 class="directory">/dev</filename> or renames network interfaces (not
122 in LFS) in response to hotplug events</para>
123 <indexterm zone="ch-system-udev udev">
124 <primary sortas="b-udev">udev</primary>
125 </indexterm>
126 </listitem>
127 </varlistentry>
128
129 <varlistentry id="udevcontrol">
130 <term><command>udevcontrol</command></term>
131 <listitem>
132 <para>Configures a number of options for the running
133 <command>udevd</command> daemon, such as the log level.</para>
134 <indexterm zone="ch-system-udev udevcontrol">
135 <primary sortas="b-udevcontrol">udevcontrol</primary>
136 </indexterm>
137 </listitem>
138 </varlistentry>
139
140 <varlistentry id="udevd">
141 <term><command>udevd</command></term>
142 <listitem>
143 <para>A daemon that reorders hotplug events before submitting them to
144 <command>udev</command>,
145 thus avoiding various race conditions</para>
146 <indexterm zone="ch-system-udev udevd">
147 <primary sortas="b-udevd">udevd</primary>
148 </indexterm>
149 </listitem>
150 </varlistentry>
151
152 <varlistentry id="udevinfo">
153 <term><command>udevinfo</command></term>
154 <listitem>
155 <para>Allows users to query the <command>udev</command> database for
156 information on any device currently present on the system; it also
157 provides a way to query any device in the <systemitem
158 class="filesystem">sysfs</systemitem> tree to help create udev
159 rules</para>
160 <indexterm zone="ch-system-udev udevinfo">
161 <primary sortas="b-udevinfo">udevinfo</primary>
162 </indexterm>
163 </listitem>
164 </varlistentry>
165
166 <varlistentry id="udevmonitor">
167 <term><command>udevmonitor</command></term>
168 <listitem>
169 <para>Prints the event received from the kernel and the event which
170 <command>udev</command> sends out after rule processing</para>
171 <indexterm zone="ch-system-udev udevmonitor">
172 <primary sortas="b-udevmonitor">udevmonitor</primary>
173 </indexterm>
174 </listitem>
175 </varlistentry>
176
177 <varlistentry id="udevsend">
178 <term><command>udevsend</command></term>
179 <listitem>
180 <para>Delivers hotplug events to <command>udevd</command></para>
181 <indexterm zone="ch-system-udev udevsend">
182 <primary sortas="b-udevsend">udevsend</primary>
183 </indexterm>
184 </listitem>
185 </varlistentry>
186
187 <varlistentry id="udevstart">
188 <term><command>udevstart</command></term>
189 <listitem>
190 <para>Creates device nodes in <filename class="directory">/dev</filename>
191 that correspond to drivers compiled directly into the kernel; it
192 performs that task by simulating hotplug events presumably dropped by
193 the kernel before invocation of this program (e.g., because the root
194 filesystem has not been mounted) and submitting such synthetic hotplug
195 events to <command>udev</command></para>
196 <indexterm zone="ch-system-udev udevstart">
197 <primary sortas="b-udevstart">udevstart</primary>
198 </indexterm>
199 </listitem>
200 </varlistentry>
201
202 <varlistentry id="udevtest">
203 <term><command>udevtest</command></term>
204 <listitem>
205 <para>Simulates a <command>udev</command> run for the given device,
206 and prints out the name of the node the real <command>udev</command>
207 would have created or (not in LFS) the name of the renamed network
208 interface</para>
209 <indexterm zone="ch-system-udev udevtest">
210 <primary sortas="b-udevtest">udevtest</primary>
211 </indexterm>
212 </listitem>
213 </varlistentry>
214
215 <varlistentry id="etc-udev">
216 <term><filename class="directory">/etc/udev</filename></term>
217 <listitem>
218 <para>Contains <command>udev</command> configuation files,
219 device permissions, and rules for device naming</para>
220 <indexterm zone="ch-system-udev etc-udev">
221 <primary sortas="e-/etc/udev">/etc/udev</primary>
222 </indexterm>
223 </listitem>
224 </varlistentry>
225
226 </variablelist>
227
228 </sect2>
229
230</sect1>
Note: See TracBrowser for help on using the repository browser.