source: BOOK/final-system/common/udev.xml @ 2572b8e

clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since 2572b8e was 2572b8e, checked in by Joe Ciccone <jciccone@…>, 13 years ago

Create the required device nodes on the udev page instead of relying
on the bootscripts to create them.

  • Property mode set to 100644
File size: 9.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.5/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  </sect2>
24
25  <sect2 role="installation">
26    <title>Installation of Udev</title>
27
28    <para os="a">Prepare Udev for compilation:</para>
29
30<screen os="b"><userinput>./configure --prefix=/usr \
31  --exec-prefix="" --sysconfdir=/etc \
32  --sbindir=/sbin --libexecdir=/lib/udev \
33  --libdir=/usr/lib --with-systemdsystemunitdir=/lib/systemd/system \
34  --disable-extras --disable-introspection</userinput></screen>
35
36    <para os="c">Compile the package:</para>
37
38<screen os="d"><userinput>make</userinput></screen>
39
40    <para os="g">Install the package:</para>
41
42<screen os="h"><userinput>make install</userinput></screen>
43
44    <para os="i">Create a directory for storing firmware that can be
45    loaded by <command>udev</command>:</para>
46
47<screen os="j"><userinput>install -dv /lib/firmware</userinput></screen>
48
49  </sect2>
50
51  <sect2 id="conf-udev" role="configuration">
52    <title>Configuring Udev</title>
53
54    <para>When systemd starts a tmpfs filesystem is mounted over
55    <filename class="directory">/dev</filename> and the previous entries are
56    no-longer available. The folling command creates files that are copied
57    over when udevd starts:</para>
58
59<screen><userinput>mkdir -pv /lib/udev/devices/{pts,shm}
60mknod -m 0600 /lib/udev/devices/console c 5 1
61mknod -m 0666 /lib/udev/devices/null c 1 3
62mknod -m 0666 /lib/udev/devices/zero c 1 5
63mknod -m 0600 /lib/udev/devices/kmsg c 1 11
64ln -snvf /proc/self/fd /lib/udev/devices/fd
65ln -snvf /proc/self/fd/0 /lib/udev/devices/stdin
66ln -snvf /proc/self/fd/1 /lib/udev/devices/stdout
67ln -snvf /proc/self/fd/2 /lib/udev/devices/stderr
68ln -snvf /proc/kcore /lib/udev/devices/core</userinput></screen>
69
70  </sect2>
71
72  <sect2 id="contents-udev" role="content">
73    <title>Contents of Udev</title>
74
75    <segmentedlist>
76      <segtitle>Installed programs</segtitle>
77      <segtitle>Installed library</segtitle>
78      <segtitle>Installed directories</segtitle>
79
80      <seglistitem>
81        <seg>ata_id, cdrom_id, collect, create_floppy_devices, edd_id,
82        firmware.sh, fstab_import, path_id, scsi_id, udevadm, udevd, usb_id,
83        v4l_id, write_cd_rules, write_net_rules</seg>
84        <seg>libudev</seg>
85        <seg>/etc/udev, /lib/firmware, /lib/udev, /usr/share/doc/udev</seg>
86      </seglistitem>
87    </segmentedlist>
88
89    <variablelist>
90      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
91      <?dbfo list-presentation="list"?>
92      <?dbhtml list-presentation="table"?>
93
94      <varlistentry id="udevadm">
95        <term><command>udevadm</command></term>
96        <listitem>
97        <para>Controls the runtime behavior of Udev, requests kernel
98        events, manages the event queue, and provides simple debugging.</para>
99          <indexterm zone="ch-system-udev udevadm">
100            <primary sortas="b-udevadm">udevadm</primary>
101          </indexterm>
102        </listitem>
103      </varlistentry>
104
105      <varlistentry id="udevd">
106        <term><command>udevd</command></term>
107        <listitem>
108          <para>A daemon that reorders hotplug events before submitting them to
109          <command>udev</command>,
110          thus avoiding various race conditions</para>
111          <indexterm zone="ch-system-udev udevd">
112            <primary sortas="b-udevd">udevd</primary>
113          </indexterm>
114        </listitem>
115      </varlistentry>
116
117 <!-- Start of Helpers -->
118      <varlistentry id="ata_id">
119        <term><command>ata_id</command></term>
120        <listitem>
121          <para>Provides Udev with a unique string and additional
122          information (uuid, label) for an ATA drive</para>
123          <indexterm zone="ch-system-udev ata_id">
124            <primary sortas="b-ata_id">ata_id</primary>
125          </indexterm>
126        </listitem>
127      </varlistentry>
128
129      <varlistentry id="cdrom_id">
130        <term><command>cdrom_id</command></term>
131        <listitem>
132          <para>Prints the capabilities of a CDROM or DVDROM drive.</para>
133          <indexterm zone="ch-system-udev cdrom_id">
134            <primary sortas="b-cdrom_id">cdrom_id</primary>
135          </indexterm>
136        </listitem>
137      </varlistentry>
138
139      <varlistentry id="collect">
140        <term><command>collect</command></term>
141        <listitem>
142          <para>DESCRIPTION REQUIRED</para>
143          <indexterm zone="ch-system-udev collect">
144            <primary sortas="b-collect">collect</primary>
145          </indexterm>
146        </listitem>
147      </varlistentry>
148
149      <varlistentry id="create_floppy_devices">
150        <term><command>create_floppy_devices</command></term>
151        <listitem>
152          <para>Creates all possible floppy devices based on the CMOS type</para>
153          <indexterm zone="ch-system-udev create_floppy_devices">
154            <primary sortas="b-create_floppy_devices">create_floppy_devices</primary>
155          </indexterm>
156        </listitem>
157      </varlistentry>
158
159      <varlistentry id="edd_id">
160        <term><command>edd_id</command></term>
161        <listitem>
162          <para>Identifies x86 disk drives from Enhanced Disk Drive calls</para>
163          <indexterm zone="ch-system-udev edd_id">
164            <primary sortas="b-edd_id">edd_id</primary>
165          </indexterm>
166        </listitem>
167      </varlistentry>
168
169      <varlistentry id="firmware.sh">
170        <term><command>firmware.sh</command></term>
171        <listitem>
172          <para>Script to load firmware for a device</para>
173          <indexterm zone="ch-system-udev firmware.sh">
174            <primary sortas="b-firmware.sh">firmware.sh</primary>
175          </indexterm>
176        </listitem>
177      </varlistentry>
178
179      <varlistentry id="fstab_import">
180        <term><command>fstab_import</command></term>
181        <listitem>
182          <para>DESCRIPTION REQUIRED</para>
183          <indexterm zone="ch-system-udev fstab_import">
184            <primary sortas="b-fstab_import">fstab_import</primary>
185          </indexterm>
186        </listitem>
187      </varlistentry>
188
189      <varlistentry id="path_id">
190        <term><command>path_id</command></term>
191        <listitem>
192          <para>Provides the shortest possible unique hardware path to a
193          device</para>
194          <indexterm zone="ch-system-udev path_id">
195            <primary sortas="b-path_id">path_id</primary>
196          </indexterm>
197        </listitem>
198      </varlistentry>
199
200      <varlistentry id="scsi_id">
201        <term><command>scsi_id</command></term>
202        <listitem>
203          <para>Retrieves or generates a unique SCSI identifier.</para>
204          <indexterm zone="ch-system-udev scsi_id">
205            <primary sortas="b-scsi_id">scsi_id</primary>
206          </indexterm>
207        </listitem>
208      </varlistentry>
209
210      <varlistentry id="usb_id">
211        <term><command>usb_id</command></term>
212        <listitem>
213          <para>Identifies a USB block device.</para>
214          <indexterm zone="ch-system-udev usb_id">
215            <primary sortas="b-usb_id">usb_id</primary>
216          </indexterm>
217        </listitem>
218      </varlistentry>
219
220      <varlistentry id="v4l_id">
221        <term><command>v4l_id</command></term>
222        <listitem>
223          <para>DESCRIPTION REQUIRED</para>
224          <indexterm zone="ch-system-udev v4l_id">
225            <primary sortas="b-v4l_id">v4l_id</primary>
226          </indexterm>
227        </listitem>
228      </varlistentry>
229
230      <varlistentry id="write_cd_rules">
231        <term><command>write_cd_rules</command></term>
232        <listitem>
233          <para>DESCRIPTION REQUIRED</para>
234          <indexterm zone="ch-system-udev write_cd_rules">
235            <primary sortas="b-write_cd_rules">write_cd_rules</primary>
236          </indexterm>
237        </listitem>
238      </varlistentry>
239
240      <varlistentry id="write_net_rules">
241        <term><command>write_net_rules</command></term>
242        <listitem>
243          <para>DESCRIPTION REQUIRED</para>
244          <indexterm zone="ch-system-udev write_net_rules">
245            <primary sortas="b-write_net_rules">write_net_rules</primary>
246          </indexterm>
247        </listitem>
248      </varlistentry>
249<!-- End of Helpers -->
250
251      <varlistentry id="libudev">
252        <term><filename class="libraryfile">libudev</filename></term>
253        <listitem>
254          <para>DESCRIPTION REQUIRED</para>
255          <indexterm zone="ch-system-udev libudev">
256            <primary sortas="c-libudev">libudev</primary>
257          </indexterm>
258        </listitem>
259      </varlistentry>
260
261      <varlistentry id="etc-udev">
262        <term><filename class="directory">/etc/udev</filename></term>
263        <listitem>
264          <para>Contains <command>udev</command> configuration files,
265          device permissions, and rules for device naming</para>
266          <indexterm zone="ch-system-udev etc-udev">
267            <primary sortas="e-/etc/udev">/etc/udev</primary>
268          </indexterm>
269        </listitem>
270      </varlistentry>
271
272      <varlistentry id="lib-udev">
273        <term><filename class="directory">/lib/udev</filename></term>
274        <listitem>
275          <para>Contains <command>udev</command> helper programs
276          and static devices which get copied to /dev when booted.</para>
277          <indexterm zone="ch-system-udev lib-udev">
278            <primary sortas="e-/lib/udev">/lib/udev</primary>
279          </indexterm>
280        </listitem>
281      </varlistentry>
282    </variablelist>
283
284  </sect2>
285
286</sect1>
Note: See TracBrowser for help on using the repository browser.