source: final-system/common/udev.xml @ 2f551f6

Last change on this file since 2f551f6 was 2f551f6, checked in by Jim Gifford <clfs@…>, 18 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.