source: chapter06/hotplug.xml@ b8a819f

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 b8a819f was b8a819f, checked in by Manuel Canales Esparcia <manuel@…>, 20 years ago

Changed the id's location in the Short descriptions sections to fix a bug in the PDF generation.

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

  • Property mode set to 100644
File size: 5.9 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<filename>usb.rc</filename> 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
53</userinput></screen>
54
55
56<para>And finally install the hotplug package:</para>
57
58<screen><userinput>make install</userinput></screen>
59
60<para>Remove hotplug's not-so-clean init script, since we're going to be using
61the script including with LFS-Bootscripts:</para>
62
63<screen><userinput>rm -rf /etc/init.d</userinput></screen>
64
65<para>
66If you have applied the ISAPNP patch, add some required entries to
67<filename>/etc/modprobe.conf</filename>:</para>
68
69<screen><userinput>cat &gt;&gt;/etc/modprobe.conf &lt;&lt;"EOF"</userinput>
70# Begin /etc/modprobe.conf entries for ISAPNP hardware detection script
71# by Marco d'Itri
72alias pnp:dPNP0511 irtty-sir
73alias pnp:dPNP0700 floppy
74alias pnp:dPNP0800 pcspkr
75alias pnp:dPNP0B00 rtc
76alias pnp:dPNP0303 atkbd
77alias pnp:dPNP0F13 psmouse
78alias pnp:dPNPB02F analog
79# End /etc/modprobe.conf entries for ISAPNP hardware detection script
80<userinput>EOF</userinput></screen>
81
82<para>These entries may become unneded for newer versions of Linux kernel,
83since Marco d'Itri will try to convince developers to put them into the
84corresponding modules themselves.</para>
85
86</sect2>
87
88
89<sect2 id="contents-hotplug" role="content"><title>Contents of Hotplug</title>
90
91<variablelist>
92<varlistentry id="hotplug">
93<term><command>/sbin/hotplug</command></term>
94<listitem>
95<indexterm zone="ch-system-hotplug hotplug"><primary
96sortas="b-hotplug">hotplug</primary></indexterm>
97<para>This script is called by default by Linux kernel when something
98changes in its internal state (e.g. a new device is added or removed).</para>
99</listitem>
100</varlistentry>
101
102<varlistentry id="hotplug-rc">
103<term><command>*.rc</command> files in
104<filename class="directory">/etc/hotplug</filename> directory</term>
105<listitem>
106<para>These scripts are used for cold plugging, i.e. detection and other
107specific actions upon hardware already present during system startup.
108They are called by the <filename>hotplug</filename> initscript that comes
109from the lfs-bootscripts package.
110The <command>*.rc</command>
111scripts try to find kernel modules corresponding to your hardware and insert
112them into the running kernel.
113</para>
114</listitem>
115</varlistentry>
116
117<varlistentry id="hotplug-agent">
118<term><command>*.agent</command> files in
119<filename class="directory">/etc/hotplug</filename> directory</term>
120<listitem>
121<para>These scripts are called by <command>/sbin/hotplug</command>
122in response to different types of hotplug events generated by the kernel.
123Their action is to insert corresponding kernel modules and call user-provided
124scripts, if any.
125</para>
126</listitem>
127</varlistentry>
128
129<varlistentry id="hotplug-functions">
130<term><filename>/etc/hotplug/hotplug.functions</filename></term>
131<listitem>
132<para>This file contains common functions used by other scripts in hotplug
133package.
134</para>
135</listitem>
136</varlistentry>
137
138<varlistentry id="hotplug-blacklist">
139<term><filename>/etc/hotplug/blacklist</filename></term>
140<listitem>
141<indexterm zone="ch-system-hotplug hotplug-blacklist"><primary
142sortas="e-/etc/hotplug/blacklist">/etc/hotplug/blacklist</primary></indexterm>
143<para>This file contains the list of modules that should never be
144inserted into the kernel by hotplug scripts.
145</para>
146</listitem>
147</varlistentry>
148
149<varlistentry id="hotplug-subdirs">
150<term><filename class="directory">/etc/hotplug/{pci,usb}</filename></term>
151<listitem>
152<para>These directories are supposed to contain user-written handlers for
153hotplug events.
154</para>
155</listitem>
156</varlistentry>
157
158<varlistentry id="hotplug-usb.usermap">
159<term><filename>/etc/hotplug/usb.usermap</filename></term>
160<listitem>
161<indexterm zone="ch-system-hotplug hotplug-usb.usermap"><primary
162sortas="e-/etc/hotplug/usb.usermap">/etc/hotplug/usb.usermap</primary></indexterm>
163<para>This file contains rules that determine which user-defined handlers to
164call for each USB device, based on its vendor, id and other attributes.
165</para>
166</listitem>
167</varlistentry>
168
169<varlistentry id="hotplug-hotplug.d">
170<term><filename class="directory">/etc/hotplug.d</filename></term>
171<listitem>
172<para>This directory contains programs (or symlinks to them)
173that are interested in receiving all hotplug events. E.g.,
174<application>udev</application> puts its symlink here during installation.
175</para>
176</listitem>
177</varlistentry>
178</variablelist>
179</sect2>
180</sect1>
Note: See TracBrowser for help on using the repository browser.