source: chapter06/systemd.xml@ 92905ed

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 7.5 7.6 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 92905ed was 92905ed, checked in by Bruce Dubbs <bdubbs@…>, 10 years ago

typo

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@10463 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 7.7 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 <sect1info condition="script">
12 <productname>udev</productname>
13 <productnumber>&systemd-version;</productnumber>
14 <address>&systemd-url;</address>
15 </sect1info>
16
17 <title>Udev-&systemd-version; (Extracted from systemd-&systemd-version;)</title>
18
19 <indexterm zone="ch-system-udev">
20 <primary sortas="a-Udev">Udev</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <para>The Udev package contains programs for dynamic creation of device
27 nodes. The development of udev has been merged with systemd, but
28 most of systemd is incompatible with LFS. Here we build and install just
29 the needed udev files.</para>
30
31 <segmentedlist>
32 <segtitle>&buildtime;</segtitle>
33 <segtitle>&diskspace;</segtitle>
34
35 <seglistitem>
36 <seg>&systemd-ch6-sbu;</seg>
37 <seg>&systemd-ch6-du;</seg>
38 </seglistitem>
39 </segmentedlist>
40 </sect2>
41
42 <sect2 role="installation">
43 <title>Installation of Udev</title>
44
45 <note><para>This package is a little different from other packages. The
46 initial package that is extracted is
47 <filename>systemd-&systemd-version;.tar.xz</filename> even though the
48 application we are installing is udev. After changing to the
49 systemd directory, follow the instructions below.</para></note>
50
51 <para>The udev-lfs tarball contains LFS-specific files used to build
52 Udev. Unpack it into the systemd source directory:</para>
53
54<screen><userinput remap="pre">tar -xvf ../&udev-lfs;.tar.bz2</userinput></screen>
55
56 <para>Create two symbolic links to header files and set an
57 environment variable to properly use <xref linkend="ch-tools-util-linux"/>.</para>
58
59<screen><userinput remap="pre">ln -svf /tools/include/blkid /usr/include
60ln -svf /tools/include/uuid /usr/include
61export LD_LIBRARY_PATH=/tools/lib</userinput></screen>
62
63 <para>Build the package:</para>
64
65<screen><userinput remap="make">make -f &udev-lfs;/Makefile.lfs</userinput></screen>
66
67 <para>Install the package:</para>
68
69<screen><userinput remap="install">make -f &udev-lfs;/Makefile.lfs install</userinput></screen>
70
71 <caution><para>There are several places within the
72 <application>systemd</application> source code that have explicit directory
73 paths embedded. For instance, the binary version of the hardware
74 database's path and file name used at run time,
75 <filename>/etc/udev/hwdb.bin</filename>, cannot be changed without explicit
76 changes to the source code.</para></caution>
77
78 <para>Now initialize the hardware database:</para>
79
80<screen><userinput remap="install">build/udevadm hwdb --update</userinput></screen>
81
82 <para>Finally set up the persistent network udev rules. This task will be
83 explained in detail in <xref linkend='stable-net-names'/>. Note that the
84 <filename class='directory'>/sys</filename> and <filename
85 class='directory'>/proc</filename> filesystems must be mounted in the
86 chroot environment as explained at the beginning of this chapter for the
87 following script to work.</para>
88
89<screen><userinput remap="install">bash &udev-lfs;/init-net-rules.sh</userinput></screen>
90
91 <para>Do some cleanup:</para>
92
93<screen><userinput remap="install">rm -fv /usr/include/{uuid,blkid}
94unset LD_LIBRARY_PATH</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 libraries</segtitle>
104 <segtitle>Installed directories</segtitle>
105
106 <seglistitem>
107 <seg>accelerometer, ata_id, cdrom_id, collect, mtd_probe,
108 scsi_id, v4l_id, udevadm, and udevd</seg>
109
110 <seg>libudev.so</seg>
111
112 <seg>/etc/udev, /lib/udev, /lib/firmware, /usr/share/doc/udev</seg>
113 </seglistitem>
114 </segmentedlist>
115
116 <variablelist>
117 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
118 <?dbfo list-presentation="list"?>
119 <?dbhtml list-presentation="table"?>
120
121 <varlistentry id="ata_id">
122 <term><command>ata_id</command></term>
123 <listitem>
124 <para>Provides Udev with a unique string and
125 additional information (uuid, label) for an ATA drive</para>
126 <indexterm zone="ch-system-udev ata_id">
127 <primary sortas="b-ata_id">ata_id</primary>
128 </indexterm>
129 </listitem>
130 </varlistentry>
131
132 <varlistentry id="cdrom_id">
133 <term><command>cdrom_id</command></term>
134 <listitem>
135 <para>Provides Udev with the capabilities of a
136 CD-ROM or DVD-ROM drive</para>
137 <indexterm zone="ch-system-udev cdrom_id">
138 <primary sortas="b-cdrom_id">cdrom_id</primary>
139 </indexterm>
140 </listitem>
141 </varlistentry>
142
143 <varlistentry id="collect">
144 <term><command>collect</command></term>
145 <listitem>
146 <para>Given an ID for the current uevent and a list of
147 IDs (for all target uevents), registers the current ID
148 and indicates whether all target IDs have been registered</para>
149 <indexterm zone="ch-system-udev collect">
150 <primary sortas="b-collect">collect</primary>
151 </indexterm>
152 </listitem>
153 </varlistentry>
154
155 <varlistentry id="scsi_id">
156 <term><command>scsi_id</command></term>
157 <listitem>
158 <para>Provides Udev with a unique SCSI identifier
159 based on the data returned from sending a SCSI INQUIRY command to
160 the specified device</para>
161 <indexterm zone="ch-system-udev scsi_id">
162 <primary sortas="b-scsi_id">scsi_id</primary>
163 </indexterm>
164 </listitem>
165 </varlistentry>
166
167 <varlistentry id="udevadm">
168 <term><command>udevadm</command></term>
169 <listitem>
170 <para>Generic udev administration tool: controls the udevd daemon,
171 provides info from the Udev database, monitors uevents, waits for
172 uevents to finish, tests Udev configuration, and triggers uevents
173 for a given device</para>
174 <indexterm zone="ch-system-udev udevadm">
175 <primary sortas="b-udevadm">udevadm</primary>
176 </indexterm>
177 </listitem>
178 </varlistentry>
179
180 <varlistentry id="udevd">
181 <term><command>udevd</command></term>
182 <listitem>
183 <para>A daemon that listens for uevents on the netlink socket,
184 creates devices and runs the configured external programs in
185 response to these uevents</para>
186 <indexterm zone="ch-system-udev udevd">
187 <primary sortas="b-udevd">udevd</primary>
188 </indexterm>
189 </listitem>
190 </varlistentry>
191
192 <varlistentry id="libudev">
193 <term><filename class="libraryfile">libudev</filename></term>
194 <listitem>
195 <para>A library interface to udev device information</para>
196 <indexterm zone="ch-system-udev libudev">
197 <primary sortas="c-libudev">libudev</primary>
198 </indexterm>
199 </listitem>
200 </varlistentry>
201
202 <varlistentry id="etc-udev">
203 <term><filename class="directory">/etc/udev</filename></term>
204 <listitem>
205 <para>Contains Udev configuration files,
206 device permissions, and rules for device naming</para>
207 <indexterm zone="ch-system-udev etc-udev">
208 <primary sortas="e-/etc/udev">/etc/udev</primary>
209 </indexterm>
210 </listitem>
211 </varlistentry>
212
213 </variablelist>
214
215 </sect2>
216
217</sect1>
Note: See TracBrowser for help on using the repository browser.