source: general/sysutils/systemd.xml@ 0bd9c19

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 0bd9c19 was 975f600b, checked in by Douglas R. Reno <renodr@…>, 7 years ago

Text fixes (obsolete text in systemd, extra newline in xf86-video-intel)
Tags (including synaptics/wacom)

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@19093 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.8 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 <!ENTITY systemd-download-http "http://anduin.linuxfromscratch.org/sources/other/systemd/systemd-&systemd-version;-lfs.tar.xz">
8 <!ENTITY systemd-download-ftp " ">
9 <!ENTITY systemd-md5sum "be1338f2775713dc33da74ac0146e37b">
10 <!ENTITY systemd-size "4.0 MB">
11 <!ENTITY systemd-buildsize "371 MB (an additional 29 MB for tests)">
12 <!ENTITY systemd-time "7.7 SBU (an additional 0.5 SBU for tests)">
13
14]>
15
16<sect1 id="systemd" xreflabel="Systemd-&systemd-version;" revision="systemd">
17 <?dbhtml filename="systemd.html"?>
18
19 <sect1info>
20 <othername>$LastChangedBy$</othername>
21 <date>$Date$</date>
22 </sect1info>
23
24 <title>Systemd-&systemd-version;</title>
25
26 <indexterm zone="systemd">
27 <primary sortas="a-systemd">systemd</primary>
28 </indexterm>
29
30 <sect2 role="package">
31 <title>Introduction to systemd</title>
32
33 <para>
34 While <application>systemd</application> was installed when
35 building LFS, there are many features provided by the package that
36 were not included in the initial installation because
37 <application>Linux-PAM</application> was not yet installed.
38 The <application>systemd</application> package needs to be
39 rebuilt to provide a working <command>systemd-logind</command> service,
40 which provides many additional features for dependent packages.
41 </para>
42
43 &lfs81_checked;
44
45 <bridgehead renderas="sect3">Package Information</bridgehead>
46 <itemizedlist spacing="compact">
47 <listitem>
48 <para>Download (HTTP): <ulink url="&systemd-download-http;"/></para>
49 </listitem>
50 <listitem>
51 <para>Download (FTP): <ulink url="&systemd-download-ftp;"/></para>
52 </listitem>
53 <listitem>
54 <para>Download MD5 sum: &systemd-md5sum;</para>
55 </listitem>
56 <listitem>
57 <para>Download size: &systemd-size;</para>
58 </listitem>
59 <listitem>
60 <para>Estimated disk space required: &systemd-buildsize;</para>
61 </listitem>
62 <listitem>
63 <para>Estimated build time: &systemd-time;</para>
64 </listitem>
65 </itemizedlist>
66
67 <bridgehead renderas="sect3">systemd Dependencies</bridgehead>
68
69 <bridgehead renderas="sect4">Required</bridgehead>
70 <para role="required">
71 <xref linkend="linux-pam"/>
72 </para>
73
74 <bridgehead renderas="sect4">Recommended Runtime Dependencies</bridgehead>
75 <para role="recommended">
76 <xref linkend="polkit"/> and <xref linkend="python3"/> (required for the
77 test suite)<!-- hwdb and tests -->
78 </para>
79
80 <bridgehead renderas="sect4">Optional</bridgehead>
81 <para role="optional">
82 <xref linkend="cacerts"/>,
83 <xref linkend="curl"/>,
84 <xref linkend="elfutils"/>,
85 <xref linkend="gnutls"/>,
86 <xref linkend="iptables"/>,
87 <xref linkend="libgcrypt"/>,
88 <xref linkend="libidn"/>,
89 <xref linkend="libxkbcommon"/>,
90 <xref linkend="qemu"/>,
91 <xref linkend="valgrind"/>,
92 <xref linkend="zsh"/> (for the zsh completions),
93 <ulink url="https://www.kernel.org/pub/linux/utils/cryptsetup/">cryptsetup</ulink>,
94 <ulink url="http://sourceforge.net/projects/gnu-efi/">gnu-efi</ulink>,
95 <ulink url="https://www.kernel.org/pub/linux/utils/kernel/kexec/">kexec-tools</ulink>,
96 <ulink url="https://www.gnu.org/software/libmicrohttpd/">libmicrohttpd</ulink>,
97 <ulink url="https://github.com/seccomp/libseccomp">libseccomp</ulink>,
98 <ulink url="http://lz4.github.io/lz4/">lz4</ulink>,
99 <ulink url="http://fukuchi.org/works/qrencode/">qrencode</ulink>,
100 <ulink url="http://sourceforge.net/projects/linuxquota/">quota-tools</ulink> and
101 <ulink url="https://pypi.python.org/pypi/Sphinx">Sphinx</ulink>
102 </para>
103
104 <bridgehead renderas="sect4">Optional (to rebuild the manual pages)</bridgehead>
105 <para role="optional">
106 <xref linkend="DocBook"/>,
107 <xref linkend="docbook-xsl"/>,
108 <xref linkend="libxslt"/>, and
109 <xref linkend="lxml"/>
110 </para>
111
112 <para condition="html" role="usernotes">User Notes:
113 <ulink url="&blfs-wiki;/systemd"/>
114 </para>
115 </sect2>
116
117 <sect2 role="installation">
118 <title>Installation of systemd</title>
119<!--
120 <para>
121 Disable two tests that always fail:
122 </para>
123We didn't remove this? -->
124
125 <para>
126 Rebuild <application>systemd</application> by running the
127 following commands:
128 </para>
129
130<!-- The logic behind - -disable-manpages is that you will already have the
131 manpages from this version of systemd installed. This is a rebuild, not
132 a fresh installation of a new version, and previous versions manpages
133 generally apply. This may change in a future update. -->
134
135<screen><userinput>./configure --prefix=/usr \
136 --sysconfdir=/etc \
137 --localstatedir=/var \
138 --with-rootprefix= \
139 --with-rootlibdir=/lib \
140 --enable-split-usr \
141 --disable-firstboot \
142 --disable-ldconfig \
143 --disable-sysusers \
144 --disable-manpages \
145 --with-default-dnssec=no \
146 --docdir=/usr/share/doc/systemd-&systemd-version; &amp;&amp;
147make</userinput></screen>
148
149 <note>
150 <para>
151 For the best results, make sure you run the testsuite from
152 a system that is booted by the same
153 <application>systemd</application> version you are rebuilding.
154 </para>
155 </note>
156
157 <para>
158 To test the results, issue: <command>make check</command>.
159 </para>
160
161 <warning>
162 <para>
163 Installing the package will overwrite all files installed by
164 <application>systemd</application> in LFS. It is critical that
165 nothing uses either <application>systemd</application> or
166 <application>Udev</application> libraries during the installation.
167 The best way to ensure that these libraries are not being used is to
168 run the installation in rescue mode. To switch to rescue mode,
169 run the following command as the
170 <systemitem class="username">root</systemitem> user (from a TTY):
171 </para>
172
173<screen role="root"><userinput>systemctl start rescue.target</userinput></screen>
174 </warning>
175
176 <para>
177 Now, as the <systemitem class="username">root</systemitem> user:
178 </para>
179
180<screen role="root"><userinput>make install</userinput></screen>
181
182 <para>
183 If <application>RPM</application> is not installed, remove an
184 unnecessary directory by running the following command as the
185 <systemitem class="username">root</systemitem> user:
186 </para>
187
188<screen role="root"><userinput>rm -rfv /usr/lib/rpm</userinput></screen>
189
190 </sect2>
191
192 <sect2 role="configuration">
193 <title>Configuring systemd</title>
194
195 <para>
196 The <filename>/etc/pam.d/system-session</filename> file needs to
197 be modified and a new file needs to be created in order for
198 <command>systemd-logind</command> to work correctly. Run the following
199 commands as the <systemitem class="username">root</systemitem> user:
200 </para>
201
202<screen role="root"><userinput>cat &gt;&gt; /etc/pam.d/system-session &lt;&lt; "EOF"
203<literal># Begin Systemd addition
204
205session required pam_loginuid.so
206session optional pam_systemd.so
207
208# End Systemd addition</literal>
209EOF
210
211cat &gt; /etc/pam.d/systemd-user &lt;&lt; "EOF"
212<literal># Begin /etc/pam.d/systemd-user
213
214account required pam_access.so
215account include system-account
216
217session required pam_env.so
218session required pam_limits.so
219session include system-session
220
221auth required pam_deny.so
222password required pam_deny.so
223
224# End /etc/pam.d/systemd-user</literal>
225EOF</userinput></screen>
226
227 <para>
228 At this point, you should reload the systemd daemon, and reenter
229 multi-user mode with the following commands (as the
230 <systemitem class="username">root</systemitem> user):
231 </para>
232
233<screen role="root"><userinput>systemctl daemon-reload
234systemctl start multi-user.target</userinput></screen>
235
236 <warning><para>If upgrading from a previous version of systemd and an
237 initrd is used for system boot, you should generate a new initrd before
238 rebooting the system.</para></warning>
239
240 </sect2>
241
242 <sect2 role="content">
243 <title>Contents</title>
244
245 <para>
246 A list of the installed files, along with their short
247 descriptions can be found at
248 <ulink url="&lfs-root;/chapter06/systemd.html#contents-systemd"/>.
249 </para>
250
251 <para>
252 Listed below are the newly installed libraries and directories
253 along with short descriptions.
254 </para>
255
256 <segmentedlist>
257 <segtitle>Installed Programs</segtitle>
258 <segtitle>Installed Libraries</segtitle>
259 <segtitle>Installed Directories</segtitle>
260
261 <seglistitem>
262 <seg>
263 None
264 </seg>
265 <seg>
266 pam_systemd.so
267 (in <filename class="directory">/lib/security</filename>)
268 </seg>
269 <seg>
270 None
271 </seg>
272 </seglistitem>
273 </segmentedlist>
274
275 <variablelist>
276 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
277 <?dbfo list-presentation="list"?>
278 <?dbhtml list-presentation="table"?>
279
280 <varlistentry id="pam_systemd">
281 <term><filename class="libraryfile">pam_systemd.so</filename></term>
282 <listitem>
283 <para>
284 is a PAM module used to register user sessions with the
285 <application>systemd</application> login manager,
286 <command>systemd-logind</command>.
287 </para>
288 <indexterm zone="systemd pam_systemd">
289 <primary sortas="c-pam_systemd">pam_systemd.so</primary>
290 </indexterm>
291 </listitem>
292 </varlistentry>
293
294 </variablelist>
295
296 </sect2>
297
298</sect1>
Note: See TracBrowser for help on using the repository browser.