source: chapter06/hotplug.xml@ ad6dca1

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 6.0 6.1 6.1.1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 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 ad6dca1 was 6f31272, checked in by Matthew Burgess <matthew@…>, 20 years ago

Fixed minor typo (Chris Lingard - IRC)

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

  • Property mode set to 100644
File size: 6.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
3 <!ENTITY % general-entities SYSTEM "../general.ent">
4 %general-entities;
5]>
6<sect1 id="ch-system-hotplug" xreflabel="Hotplug" role="wrap">
7<title>Hotplug-&hotplug-version;</title>
8<?dbhtml filename="hotplug.html"?>
9
10<indexterm zone="ch-system-hotplug"><primary sortas="a-Hotplug">Hotplug</primary></indexterm>
11
12<sect2 role="package"><title/>
13
14<para>The Hotplug package contains scripts that react upon various changes
15in the kernel state, in particular, addition and removal of hardware. This
16package also detects existing hardware during boot and inserts the relevant
17modules into the running kernel.
18</para>
19<segmentedlist>
20<segtitle>&buildtime;</segtitle>
21<segtitle>&diskspace;</segtitle>
22<seglistitem><seg>0.01 SBU</seg><seg>0.1 MB</seg></seglistitem>
23</segmentedlist>
24
25</sect2>
26
27<sect2 role="installation">
28<title>Installation of Hotplug</title>
29
30<para>
31Apply the patch that avoids bogus dependencies of the
32<command>usb.rc</command> script
33upon <application>which</application> and
34<application>usbutils</application> packages:
35</para>
36
37<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-bogus_deps-1.patch</userinput></screen>
38
39<para>
40USB coldplugging is somewhat broken in Hotplug by default. Fix this with the
41following patch:
42</para>
43
44<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-device-2.patch</userinput></screen>
45
46<para>
47At last, there is an optional patch that adds ISAPNP hardware detection
48capabilities to Hotplug. It is not well tested. If you chose to apply it,
49run the following command:
50</para>
51
52<screen><userinput>patch -Np1 -i ../hotplug-&hotplug-version;-isapnp-2.patch</userinput></screen>
53
54
55<para>And finally install the Hotplug package:</para>
56
57<screen><userinput>make install</userinput></screen>
58
59<para>Remove Hotplug's not-so-clean init script, since we're going to be using
60the script including with LFS-Bootscripts:</para>
61
62<screen><userinput>rm -rf /etc/init.d</userinput></screen>
63
64<para>
65If you have applied the ISAPNP patch, add some required entries to
66<filename>/etc/modprobe.conf</filename>:</para>
67
68<screen><userinput>cat &gt;&gt;/etc/modprobe.conf &lt;&lt;"EOF"
69# Begin /etc/modprobe.conf entries for ISAPNP hardware detection script
70# by Marco d'Itri
71alias pnp:dPNP0511 irtty-sir
72alias pnp:dPNP0700 floppy
73alias pnp:dPNP0800 pcspkr
74alias pnp:dPNP0B00 rtc
75alias pnp:dPNP0303 atkbd
76alias pnp:dPNP0F13 psmouse
77alias pnp:dPNPB02F analog
78# End /etc/modprobe.conf entries for ISAPNP hardware detection script
79EOF</userinput></screen>
80
81<para>These entries may not be needed in newer versions of the Linux kernel,
82since Marco d'Itri will try to convince developers to put them into the
83corresponding modules themselves.</para>
84
85</sect2>
86
87
88<sect2 id="contents-hotplug" role="content"><title>Contents of Hotplug</title>
89
90<variablelist>
91<varlistentry id="hotplug">
92<term><command>/sbin/hotplug</command></term>
93<listitem>
94<indexterm zone="ch-system-hotplug hotplug"><primary
95sortas="b-hotplug">hotplug</primary></indexterm>
96<para>This script is called by default by Linux kernel when something
97changes in its internal state (e.g., a new device is added or removed).</para>
98</listitem>
99</varlistentry>
100
101<varlistentry id="hotplug-rc">
102<term><command>*.rc</command> files in
103<filename class="directory">/etc/hotplug</filename> directory</term>
104<listitem>
105<indexterm zone="ch-system-hotplug hotplug-rc"><primary
106sortas="e-/etc/hotplug/*.rc">/etc/hotplug/*.rc</primary></indexterm>
107<para>These scripts are used for cold plugging, i.e., detection and other
108specific actions upon hardware already present during system startup.
109They are called by the <filename>hotplug</filename> initscript that comes
110from the lfs-bootscripts package.
111The <command>*.rc</command>
112scripts try to find kernel modules corresponding to your hardware and insert
113them into the running kernel.
114</para>
115</listitem>
116</varlistentry>
117
118<varlistentry id="hotplug-agent">
119<term><command>*.agent</command> files in
120<filename class="directory">/etc/hotplug</filename> directory</term>
121<listitem>
122<indexterm zone="ch-system-hotplug hotplug-agent"><primary
123sortas="e-/etc/hotplug/*.agent">/etc/hotplug/*.agent</primary></indexterm>
124<para>These scripts are called by <command>/sbin/hotplug</command>
125in response to different types of hotplug events generated by the kernel.
126Their action is to insert corresponding kernel modules and call user-provided
127scripts, if any.
128</para>
129</listitem>
130</varlistentry>
131
132<varlistentry id="hotplug-functions">
133<term><filename>/etc/hotplug/hotplug.functions</filename></term>
134<listitem>
135<indexterm zone="ch-system-hotplug hotplug-functions"><primary
136sortas="e-/etc/hotplug/hotplug.functions">/etc/hotplug/hotplug.functions</primary></indexterm>
137<para>This file contains common functions used by other scripts in Hotplug
138package.
139</para>
140</listitem>
141</varlistentry>
142
143<varlistentry id="hotplug-blacklist">
144<term><filename>/etc/hotplug/blacklist</filename></term>
145<listitem>
146<indexterm zone="ch-system-hotplug hotplug-blacklist"><primary
147sortas="e-/etc/hotplug/blacklist">/etc/hotplug/blacklist</primary></indexterm>
148<para>This file contains the list of modules that should never be
149inserted into the kernel by hotplug scripts.
150</para>
151</listitem>
152</varlistentry>
153
154<varlistentry id="hotplug-subdirs">
155<term><filename class="directory">/etc/hotplug/{pci,usb}</filename></term>
156<listitem>
157<indexterm zone="ch-system-hotplug hotplug-subdirs"><primary
158sortas="e-/etc/hotplug/{pci,usb}">/etc/hotplug/{pci,usb}</primary></indexterm>
159<para>These directories are supposed to contain user-written handlers for
160hotplug events.
161</para>
162</listitem>
163</varlistentry>
164
165<varlistentry id="hotplug-usb.usermap">
166<term><filename>/etc/hotplug/usb.usermap</filename></term>
167<listitem>
168<indexterm zone="ch-system-hotplug hotplug-usb.usermap"><primary
169sortas="e-/etc/hotplug/usb.usermap">/etc/hotplug/usb.usermap</primary></indexterm>
170<para>This file contains rules that determine which user-defined handlers to
171call for each USB device, based on its vendor, id and other attributes.
172</para>
173</listitem>
174</varlistentry>
175
176<varlistentry id="hotplug-hotplug.d">
177<term><filename class="directory">/etc/hotplug.d</filename></term>
178<listitem>
179<indexterm zone="ch-system-hotplug hotplug-hotplug.d"><primary
180sortas="e-/etc/hotplug.d">/etc/hotplug.d</primary></indexterm>
181<para>This directory contains programs (or symlinks to them)
182that are interested in receiving all hotplug events. E.g.,
183<application>udev</application> puts its symlink here during installation.
184</para>
185</listitem>
186</varlistentry>
187</variablelist>
188</sect2>
189</sect1>
Note: See TracBrowser for help on using the repository browser.