Changeset 229ed25 for BOOK/bootscripts/common/eudev.xml
- Timestamp:
- Jan 4, 2014, 12:03:38 AM (11 years ago)
- Branches:
- clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
- Children:
- f90d077
- Parents:
- ec008670 (diff), e57ce38 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
BOOK/bootscripts/common/eudev.xml
rec008670 r229ed25 6 6 ]> 7 7 8 <sect1 id="ch-scripts- udev">9 <?dbhtml filename=" udev.html"?>8 <sect1 id="ch-scripts-eudev"> 9 <?dbhtml filename="eudev.html"?> 10 10 11 11 <title>Device and Module Handling on a CLFS System</title> 12 12 13 <indexterm zone="ch-scripts- udev">14 <primary sortas="a- Udev">Udev</primary>13 <indexterm zone="ch-scripts-eudev"> 14 <primary sortas="a-Eudev">Eudev</primary> 15 15 <secondary>usage</secondary> 16 16 </indexterm> 17 17 18 <para>In <xref linkend="chapter-building-system"/>, we installed the Udev18 <para>In <xref linkend="chapter-building-system"/>, we installed the Eudev 19 19 package. Before we go into the details regarding how this works, 20 20 a brief history of previous methods of handling devices is in … … 30 30 the world.</para> 31 31 32 <para>Using the Udev method, only those devices which are detected by the32 <para>Using the Eudev method, only those devices which are detected by the 33 33 kernel get device nodes created for them. Because these device nodes will be 34 34 created each time the system boots, they will be stored on a <systemitem … … 71 71 72 72 <sect2> 73 <title> Udev Implementation</title>73 <title>Eudev Implementation</title> 74 74 75 75 <sect3> … … 93 93 94 94 <sect3> 95 <title> Udev Bootscript</title>95 <title>Eudev Bootscript</title> 96 96 97 97 <para>The <command>S10udev</command> initscript takes care of creating … … 109 109 class="directory">/lib/udev/devices</filename> also provides an easy 110 110 workaround for devices that are not supported by the dynamic device 111 handling infrastructure. The bootscript then starts the Udev daemon,111 handling infrastructure. The bootscript then starts the Eudev daemon, 112 112 <command>udevd</command>, which will act on any uevents it receives. 113 113 Finally, the bootscript forces the kernel to replay uevents for any … … 120 120 <title>Device Node Creation</title> 121 121 122 <para>To obtain the right major and minor number for a device, Udev relies122 <para>To obtain the right major and minor number for a device, Eudev relies 123 123 on the information provided by <systemitem 124 124 class="filesystem">sysfs</systemitem> in <filename … … 134 134 <command>udevd</command> can't find a rule for the device it is creating, 135 135 it will default permissions to <emphasis>660</emphasis> and ownership to 136 <emphasis>root:root</emphasis>. Documentation on the syntax of the Udev136 <emphasis>root:root</emphasis>. Documentation on the syntax of the Eudev 137 137 rules configuration files is available in 138 138 <filename>/usr/share/doc/udev/writing_udev_rules/index.html</filename></para> … … 155 155 might contain the string 156 156 <quote>pci:v00001319d00000801sv00001319sd00001319bc04sc01i00</quote>. 157 The default rules provided by Udev will cause <command>udevd</command>157 The default rules provided by Eudev will cause <command>udevd</command> 158 158 to call out to <command>/sbin/modprobe</command> with the contents of the 159 159 <envar>MODALIAS</envar> uevent environment variable (that should be the … … 194 194 <title>A kernel module is not loaded automatically</title> 195 195 196 <para> Udev will only load a module if it has a bus-specific alias and the196 <para>Eudev will only load a module if it has a bus-specific alias and the 197 197 bus driver properly exports the necessary aliases to <systemitem 198 198 class="filesystem">sysfs</systemitem>. In other cases, one should 199 arrange module loading by other means. With Linux-&linux-version;, Udev is199 arrange module loading by other means. With Linux-&linux-version;, Eudev is 200 200 known to load properly-written drivers for INPUT, IDE, PCI, USB, SCSI, 201 201 SERIO and FireWire devices.</para> 202 202 203 203 <para>To determine if the device driver you require has the necessary 204 support for Udev, run <command>modinfo</command> with the module name as204 support for Eudev, run <command>modinfo</command> with the module name as 205 205 the argument. Now try locating the device directory under 206 206 <filename class="directory">/sys/bus</filename> and check whether there is … … 210 210 class="filesystem">sysfs</systemitem>, the driver supports the device and 211 211 can talk to it directly, but doesn't have the alias, it is a bug in the 212 driver. Load the driver without the help from Udev and expect the issue212 driver. Load the driver without the help from Eudev and expect the issue 213 213 to be fixed later.</para> 214 214 … … 219 219 busses. Expect this issue to be fixed in later kernel versions.</para> 220 220 221 <para> Udev is not intended to load <quote>wrapper</quote> drivers such as221 <para>Eudev is not intended to load <quote>wrapper</quote> drivers such as 222 222 <emphasis>snd-pcm-oss</emphasis> and non-hardware drivers such as 223 223 <emphasis>loop</emphasis> at all.</para> … … 226 226 227 227 <sect3> 228 <title>A kernel module is not loaded automatically, and Udev is not228 <title>A kernel module is not loaded automatically, and Eudev is not 229 229 intended to load it</title> 230 230 … … 233 233 enhances the functionality of <emphasis>snd-pcm</emphasis> by making the 234 234 sound cards available to OSS applications), configure 235 <command>modprobe</command> to load the wrapper after Udev loads the235 <command>modprobe</command> to load the wrapper after Eudev loads the 236 236 wrapped module. To do this, add an <quote>install</quote> line in 237 237 <filename>/etc/modprobe.conf</filename>. For example:</para> … … 249 249 250 250 <sect3> 251 <title> Udev loads some unwanted module</title>251 <title>Eudev loads some unwanted module</title> 252 252 253 253 <para>Either don't build the module, or blacklist it in … … 263 263 264 264 <sect3> 265 <title> Udev creates a device incorrectly, or makes a wrong symlink</title>265 <title>Eudev creates a device incorrectly, or makes a wrong symlink</title> 266 266 267 267 <para>This usually happens if a rule unexpectedly matches a device. For … … 274 274 275 275 <sect3> 276 <title> Udev rule works unreliably</title>276 <title>Eudev rule works unreliably</title> 277 277 278 278 <para>This may be another manifestation of the previous problem. If not, … … 288 288 289 289 <sect3> 290 <title> Udev does not create a device</title>290 <title>Eudev does not create a device</title> 291 291 292 292 <para>Further text assumes that the driver is built statically into the 293 293 kernel or already loaded as a module, and that you have already checked 294 that Udev doesn't create a misnamed device.</para>295 296 <para> Udev has no information needed to create a device node if a kernel294 that Eudev doesn't create a misnamed device.</para> 295 296 <para>Eudev has no information needed to create a device node if a kernel 297 297 driver does not export its data to <systemitem 298 298 class="filesystem">sysfs</systemitem>. … … 311 311 <title>Device naming order changes randomly after rebooting</title> 312 312 313 <para>This is due to the fact that Udev, by design, handles uevents and313 <para>This is due to the fact that Eudev, by design, handles uevents and 314 314 loads modules in parallel, and thus in an unpredictable order. This will 315 315 never be <quote>fixed</quote>. You should not rely upon the kernel device 316 316 names being stable. Instead, create your own rules that make symlinks with 317 317 stable names based on some stable attributes of the device, such as a 318 serial number or the output of various *_id utilities installed by Udev.318 serial number or the output of various *_id utilities installed by Eudev. 319 319 See <xref linkend="ch-scripts-symlinks"/> and 320 320 <xref linkend="chapter-network"/> for examples.</para>
Note:
See TracChangeset
for help on using the changeset viewer.