diff options
56 files changed, 262 insertions, 242 deletions
diff --git a/chapter07/chapter07.xml b/chapter07/chapter07.xml index 3706a6dfb..8c78f230a 100644 --- a/chapter07/chapter07.xml +++ b/chapter07/chapter07.xml @@ -24,7 +24,7 @@ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="python.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="texinfo.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="util-linux.xml"/> - + <!-- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="expect.xml"/> diff --git a/chapter07/cleanup.xml b/chapter07/cleanup.xml index 8e80bdc40..101105d99 100644 --- a/chapter07/cleanup.xml +++ b/chapter07/cleanup.xml @@ -9,7 +9,7 @@ <?dbhtml filename="cleanup.html"?> <title>Cleaning up and Saving the Temporary System</title> - + <sect2> <title>Cleaning</title> @@ -26,7 +26,7 @@ <screen><userinput>find /usr/{lib,libexec} -name \*.la -delete</userinput></screen> <para> - The current system size is now about 3 GB, however + The current system size is now about 3 GB, however the /tools directory is no longer needed. It uses about 1 GB of disk space. Delete it now: </para> @@ -53,9 +53,9 @@ as soon as you begin installing packages in <xref linkend="chapter-building-system"/>, the temporary files will be overwritten. So it may be a good idea to do a backup of the current - system as described below. + system as described below. </para></note> - + <para> The following steps are performed from outside the chroot environment. That means, you have to leave the chroot environment @@ -79,13 +79,13 @@ <systemitem class="username">root</systemitem> on your host system. Take extra care about the commands you're going to run as mistakes here can modify your host system. Be aware that the - environment variable <envar>LFS</envar> - is set for user <systemitem class="username">lfs</systemitem> by default - but may <emphasis>not</emphasis> be set for + environment variable <envar>LFS</envar> + is set for user <systemitem class="username">lfs</systemitem> by default + but may <emphasis>not</emphasis> be set for <systemitem class="username">root</systemitem>. </para> <para> - Whenever commands are to be executed by <systemitem class="username">root</systemitem>, + Whenever commands are to be executed by <systemitem class="username">root</systemitem>, make sure you have set <envar>LFS</envar>. </para> <para> @@ -105,14 +105,20 @@ umount $LFS/{sys,proc,run,dev}</userinput></screen> </para> <para> +<<<<<<< HEAD + Make sure you have at least 1 GB free disk space (the source tarballs + will be included in the backup archive) in the home directory of user + <systemitem class="username">root</systemitem>. +======= Note that the instructions below specify the home directory of the host system's <systemitem class="username">root</systemitem> user, which is typically found on the root filesystem. +>>>>>>> 8e6babecd0d75542a01eedfde32556879733f842 </para> <para> Replace <envar>$HOME</envar> by a directory of your choice if you - do not want to have the backup stored in <systemitem + do not want to have the backup stored in <systemitem class="username">root</systemitem>'s home directory. </para> @@ -125,14 +131,30 @@ umount $LFS/{sys,proc,run,dev}</userinput></screen> Because the backup archive is compressed, it takes a relatively long time (over 10 minutes) even on a resonably fast system. </para> +<<<<<<< HEAD + + <para> + Also, ensure the <envar>LFS</envar> environment variable is set + for the root user. + </para> +======= +>>>>>>> 8e6babecd0d75542a01eedfde32556879733f842 </note> -<screen role="nodump" revision="sysv"><userinput>cd $LFS +<screen role="nodump" revision="sysv"><userinput>cd $LFS tar -cJpf $HOME/lfs-temp-tools-&version;.tar.xz .</userinput></screen> -<screen role="nodump" revision="systemd"><userinput>cd $LFS +<screen role="nodump" revision="systemd"><userinput>cd $LFS tar -cJpf $HOME/lfs-temp-tools-&versiond;.tar.xz .</userinput></screen> +<<<<<<< HEAD + <para> + Replace <envar>$HOME</envar> by a directory of your choice if you + do not want to have the backup stored in <systemitem + class="username">root</systemitem>'s home directory. + </para> +======= +>>>>>>> 8e6babecd0d75542a01eedfde32556879733f842 </sect2> <sect2> @@ -141,7 +163,7 @@ tar -cJpf $HOME/lfs-temp-tools-&versiond;.tar.xz .</userinput></screen> <para> In case some mistakes have been made and you need to start over, you can use this backup to restore the system and save some recovery time. - Since the sources are located under + Since the sources are located under <filename class="directory">$LFS</filename>, they are included in the backup archive as well, so they do not need to be downloaded again. After checking that <envar>$LFS</envar> is set properly, @@ -152,17 +174,17 @@ tar -cJpf $HOME/lfs-temp-tools-&versiond;.tar.xz .</userinput></screen> restore when they don't need to. --> <warning><para>The following commands are extremly dangerous. If - you run <command>rm -rf ./*</command> as the root user and you - do not change to the $LFS directory or the <envar>LFS</envar> - environment variable is not set for the root user, it will destroy + you run <command>rm -rf ./*</command> as the root user and you + do not change to the $LFS directory or the <envar>LFS</envar> + environment variable is not set for the root user, it will destroy your entire host system. YOU ARE WARNED.</para></warning> -<screen role="nodump" revision="sysv"><computeroutput>cd $LFS -rm -rf ./* +<screen role="nodump" revision="sysv"><computeroutput>cd $LFS +rm -rf ./* tar -xpf $HOME/lfs-temp-tools-&version;.tar.xz</computeroutput></screen> -<screen role="nodump" revision="systemd"><computeroutput>cd $LFS -rm -rf ./* +<screen role="nodump" revision="systemd"><computeroutput>cd $LFS +rm -rf ./* tar -xpf $HOME/lfs-temp-tools-&versiond;.tar.xz</computeroutput></screen> <para> @@ -180,7 +202,7 @@ tar -xpf $HOME/lfs-temp-tools-&versiond;.tar.xz</computeroutput></screen> environment (see <xref linkend='ch-tools-chroot'/>) before continuing. </para> </important> - + </sect2> </sect1> diff --git a/chapter07/kernfs.xml b/chapter07/kernfs.xml index a23b7e195..f34155d7b 100644 --- a/chapter07/kernfs.xml +++ b/chapter07/kernfs.xml @@ -104,7 +104,7 @@ mount -vt tmpfs tmpfs $LFS/run</userinput></screen> --> <para>In some host systems, <filename>/dev/shm</filename> is a symbolic link to <filename class="directory">/run/shm</filename>. - The /run tmpfs was mounted above so in this case only a + The /run tmpfs was mounted above so in this case only a directory needs to be created.</para> <screen><userinput>if [ -h $LFS/dev/shm ]; then diff --git a/chapter07/perl.xml b/chapter07/perl.xml index 93ffb9a39..c99745c0d 100644 --- a/chapter07/perl.xml +++ b/chapter07/perl.xml @@ -60,7 +60,7 @@ <varlistentry> <term><parameter>-des</parameter></term> <listitem> - <para>This is a combination of three options: -d uses defaults for + <para>This is a combination of three options: -d uses defaults for all items; -e ensures completion of all tasks; -s silences non-essential output.</para> </listitem> diff --git a/chapter08/attr.xml b/chapter08/attr.xml index 122781f27..a7a9bb426 100644 --- a/chapter08/attr.xml +++ b/chapter08/attr.xml @@ -53,7 +53,7 @@ <screen><userinput remap="make">make</userinput></screen> <para>The tests need to be run on a filesystem that supports extended - attributes such as the ext2, ext3, or ext4 filesystems. + attributes such as the ext2, ext3, or ext4 filesystems. To test the results, issue:</para> <screen><userinput remap="test">make check</userinput></screen> diff --git a/chapter08/automake.xml b/chapter08/automake.xml index 0ea77d729..92fae932b 100644 --- a/chapter08/automake.xml +++ b/chapter08/automake.xml @@ -59,7 +59,7 @@ <screen><userinput remap="test">make -j4 check</userinput></screen> <!-- - <para>The tests t/subobj.sh, t/deprecated-acinit.sh, and t/init.sh are known to + <para>The tests t/subobj.sh, t/deprecated-acinit.sh, and t/init.sh are known to fail in the LFS environment.</para> --> <para>Install the package:</para> diff --git a/chapter08/bc.xml b/chapter08/bc.xml index 2f29c1859..9678ddd54 100644 --- a/chapter08/bc.xml +++ b/chapter08/bc.xml @@ -23,7 +23,7 @@ <sect2 role="package"> <title/> - <para>The Bc package contains an arbitrary precision numeric processing + <para>The Bc package contains an arbitrary precision numeric processing language.</para> <segmentedlist> diff --git a/chapter08/binutils.xml b/chapter08/binutils.xml index c01ba44bd..113236674 100644 --- a/chapter08/binutils.xml +++ b/chapter08/binutils.xml @@ -74,7 +74,7 @@ find -name \*.1 -delete</userinput></screen> <screen><userinput remap="pre">sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in</userinput></screen> --> - <para>The Binutils documentation recommends building Binutils + <para>The Binutils documentation recommends building Binutils in a dedicated build directory:</para> <screen><userinput remap="pre">mkdir -v build @@ -297,7 +297,7 @@ cd build</userinput></screen> <varlistentry id="ld.gold"> <term><command>ld.gold</command></term> <listitem> - <para>A cut down version of ld that only supports the + <para>A cut down version of ld that only supports the elf object file format</para> <indexterm zone="ch-system-binutils ld.gold"> <primary sortas="b-ld.gold">ld.gold</primary> diff --git a/chapter08/chapter08.xml b/chapter08/chapter08.xml index e9cb2b2ce..7b638cc0d 100644 --- a/chapter08/chapter08.xml +++ b/chapter08/chapter08.xml @@ -66,7 +66,7 @@ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ninja.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="meson.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="coreutils.xml"/> - <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/> + <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="diffutils.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gawk.xml"/> <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="findutils.xml"/> diff --git a/chapter08/coreutils.xml b/chapter08/coreutils.xml index cb8ec6d64..f5c4118ad 100644 --- a/chapter08/coreutils.xml +++ b/chapter08/coreutils.xml @@ -88,7 +88,7 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \ <varlistentry> <term><envar>FORCE_UNSAFE_CONFIGURE=1</envar></term> <listitem> - <para>This environment variable allows the package to be + <para>This environment variable allows the package to be built as the <systemitem class="username">root</systemitem> user. </para> </listitem> diff --git a/chapter08/dbus.xml b/chapter08/dbus.xml index 94d348d2d..271df146f 100644 --- a/chapter08/dbus.xml +++ b/chapter08/dbus.xml @@ -114,7 +114,7 @@ <seglistitem> <seg>dbus-cleanup-sockets, dbus-daemon, dbus-launch, dbus-monitor, - dbus-run-session, dbus-send, dbus-test-tool, + dbus-run-session, dbus-send, dbus-test-tool, dbus-update-activation-environment, and dbus-uuidgen</seg> <seg>libdbus-1.{a,so}</seg> <seg>/etc/dbus-1, /usr/include/dbus-1.0, /usr/lib/dbus-1.0, diff --git a/chapter08/eudev.xml b/chapter08/eudev.xml index aa86f5150..efaba9d30 100644 --- a/chapter08/eudev.xml +++ b/chapter08/eudev.xml @@ -24,7 +24,7 @@ <title/> <para>The Eudev package contains programs for dynamic creation of device - nodes.</para> + nodes.</para> <segmentedlist> <segtitle>&buildtime;</segtitle> @@ -76,7 +76,7 @@ mkdir -pv /etc/udev/rules.d</userinput></screen> <screen><userinput remap="install">make install</userinput></screen> - <para>Install some custom rules and support files useful in an LFS + <para>Install some custom rules and support files useful in an LFS environment:</para> <screen><userinput remap="install">tar -xvf ../&udev-lfs-version;.tar.xz diff --git a/chapter08/expect.xml b/chapter08/expect.xml index 1e56595fb..6503372c6 100644 --- a/chapter08/expect.xml +++ b/chapter08/expect.xml @@ -62,7 +62,7 @@ <varlistentry> <term><parameter>--with-tcl=/usr/lib</parameter></term> <listitem> - <para>This parameter is needed to tell + <para>This parameter is needed to tell <command>configure</command> where the <command>tclConfig.sh</command> script is located.</para> </listitem> diff --git a/chapter08/gcc.xml b/chapter08/gcc.xml index bbe83a50d..fc8748fc3 100644 --- a/chapter08/gcc.xml +++ b/chapter08/gcc.xml @@ -115,7 +115,7 @@ cd build</userinput></screen> <para>Test the results as a non-privileged user, but do not stop at errors:</para> -<screen><userinput remap="test">chown -Rv tester . +<screen><userinput remap="test">chown -Rv tester . su tester -c "PATH=$PATH make -k check"</userinput></screen> <para>To receive a summary of the test suite results, run:</para> @@ -185,7 +185,7 @@ rm -rf /usr/lib/gcc/$(gcc -dumpmachine)/&gcc-version;/include-fixed/bits/</useri <screen><userinput remap="install">ln -sv gcc /usr/bin/cc</userinput></screen> --> <para>Add a compatibility symlink to enable building programs with - Link Time Optimization (LTO):</para> + Link Time Optimization (LTO):</para> <screen><userinput remap="install">ln -sfv ../../libexec/gcc/$(gcc -dumpmachine)/&gcc-version;/liblto_plugin.so \ /usr/lib/bfd-plugins/</userinput></screen> @@ -351,7 +351,7 @@ mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib</userinput></screen> libstdc++.{a,so}, libstdc++fs.a, libsupc++.a, libtsan.{a,so}, and libubsan.{a,so}</seg> - <seg>/usr/include/c++, /usr/lib/gcc, /usr/libexec/gcc, and + <seg>/usr/include/c++, /usr/lib/gcc, /usr/libexec/gcc, and /usr/share/gcc-&gcc-version;</seg> </seglistitem> </segmentedlist> diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml index 968b398e0..c0e89455c 100644 --- a/chapter08/glibc.xml +++ b/chapter08/glibc.xml @@ -46,7 +46,7 @@ <para>First, fix a security problem identified upstream:</para> <screen><userinput remap="pre">sed -e '/NOTIFY_REMOVED)/s/)/ \&\& data.attr != NULL)/' \ - -i sysdeps/unix/sysv/linux/mq_notify.c</userinput></screen> + -i sysdeps/unix/sysv/linux/mq_notify.c</userinput></screen> <para>Some of the Glibc programs use the non-FHS compliant <filename class="directory">/var/db</filename> directory to store @@ -55,7 +55,7 @@ <screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen> - <para>The Glibc documentation recommends building Glibc + <para>The Glibc documentation recommends building Glibc in a dedicated build directory:</para> <screen><userinput remap="pre">mkdir -v build @@ -82,7 +82,7 @@ cd build</userinput></screen> <varlistentry> <term><parameter>--disable-werror</parameter></term> <listitem> - <para>This option disables the -Werror option passed to + <para>This option disables the -Werror option passed to GCC. This is necessary for running the test suite.</para> </listitem> </varlistentry> @@ -100,7 +100,7 @@ cd build</userinput></screen> <varlistentry> <term><parameter>--enable-stack-protector=strong</parameter></term> <listitem> - <para>This option increases system security by adding + <para>This option increases system security by adding extra code to check for buffer overflows, such as stack smashing attacks.</para> </listitem> @@ -150,18 +150,18 @@ esac</userinput></screen> <para>You may see some test failures. The Glibc test suite is somewhat dependent on the host system. A few failures out of - over 4200 tests can generally be ignored. This is a list of the + over 4200 tests can generally be ignored. This is a list of the most common issues seen for recent versions of LFS:</para> <itemizedlist> <listitem> - <para><emphasis>io/tst-lchmod</emphasis> + <para><emphasis>io/tst-lchmod</emphasis> is known to fail in the LFS chroot environment.</para> </listitem> <listitem> - <para><emphasis>misc/tst-ttyname</emphasis> + <para><emphasis>misc/tst-ttyname</emphasis> is known to fail in the LFS chroot environment.</para> </listitem> <!-- @@ -173,7 +173,7 @@ esac</userinput></screen> <listitem> <para>The <emphasis>rt/tst-cputimer{1,2,3}</emphasis> tests depend on the host system kernel. Kernels 4.14.91–4.14.96, - 4.19.13–4.19.18, and 4.20.0–4.20.5 are known to + 4.19.13–4.19.18, and 4.20.0–4.20.5 are known to cause these tests to fail. </para> </listitem> @@ -213,7 +213,7 @@ esac</userinput></screen> <screen><userinput remap="install">cp -v ../nscd/nscd.conf /etc/nscd.conf mkdir -pv /var/cache/nscd</userinput></screen> - <para revision="systemd">Install the systemd support files for + <para revision="systemd">Install the systemd support files for <command>nscd</command>:</para> <screen revision="systemd"><userinput remap="install">install -v -Dm644 ../nscd/nscd.tmpfiles /usr/lib/tmpfiles.d/nscd.conf @@ -287,13 +287,13 @@ localedef -i zh_TW -f UTF-8 zh_TW.UTF-8</userinput></screen> <filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> file when you need them. For instance, the following two locales are needed for some tests later in this chapter:</para> - + <screen role="nodump"><userinput remap="locale-full">localedef -i POSIX -f UTF-8 C.UTF-8 2> /dev/null || true localedef -i ja_JP -f SHIFT_JIS ja_JP.SIJS 2> /dev/null || true</userinput></screen> - <note><para>Glibc now uses libidn2 when resolving internationalized + <note><para>Glibc now uses libidn2 when resolving internationalized domain names. This is a run time dependency. If this capability - is needed, the instructions for installing libidn2 are in the + is needed, the instructions for installing libidn2 are in the <ulink url="&blfs-book;general/libidn2.html">BLFS libidn2 page</ulink>. </para></note> @@ -479,7 +479,7 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen> <seglistitem> <seg>catchsegv, gencat, getconf, getent, iconv, iconvconfig, ldconfig, - ldd, lddlibc4, locale, localedef, makedb, mtrace, nscd, + ldd, lddlibc4, locale, localedef, makedb, mtrace, nscd, pcprofiledump, pldd, sln, sotruss, sprof, tzselect, xtrace, zdump, and zic</seg> <seg>ld-linux-x86-64.so.2, ld-linux.so.2, @@ -949,7 +949,6 @@ mkdir -pv /etc/ld.so.conf.d</userinput></screen> code for <quote>standard</quote> functions used in many different Unix utilities. These functions are now in <filename class="libraryfile">libc</filename></para> - <indexterm zone="ch-system-glibc libutil"> <primary sortas="c-libutil">libutil</primary> </indexterm> diff --git a/chapter08/gmp.xml b/chapter08/gmp.xml index 2419e2d02..0820f726c 100644 --- a/chapter08/gmp.xml +++ b/chapter08/gmp.xml @@ -53,7 +53,7 @@ <note> <para>The default settings of GMP produce libraries optimized for the host processor. If libraries suitable for processors less - capable than the host's CPU are desired, generic libraries can be + capable than the host's CPU are desired, generic libraries can be created by running the following: <screen role="nodump"><userinput>cp -v configfsf.guess config.guess @@ -100,7 +100,7 @@ make html</userinput></screen> <para>Test the results:</para> <screen><userinput remap="test">make check 2>&1 | tee gmp-check-log</userinput></screen> - + <caution><para>The code in gmp is highly optimized for the processor where it is built. Occasionally, the code that detects the processor misidentifies the system capabilities and there will be errors in the tests or other diff --git a/chapter08/grub.xml b/chapter08/grub.xml index 07be0e851..e9008c31a 100644 --- a/chapter08/grub.xml +++ b/chapter08/grub.xml @@ -106,11 +106,11 @@ mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions</userin <seglistitem> <seg>grub-bios-setup, grub-editenv, grub-file, grub-fstest, - grub-glue-efi, grub-install, grub-kbdcomp, grub-macbless, + grub-glue-efi, grub-install, grub-kbdcomp, grub-macbless, grub-menulst2cfg, grub-mkconfig, grub-mkimage, grub-mklayout, grub-mknetdir, grub-mkpasswd-pbkdf2, grub-mkrelpath, grub-mkrescue, grub-mkstandalone, - grub-ofpathname, grub-probe, grub-reboot, grub-render-label, + grub-ofpathname, grub-probe, grub-reboot, grub-render-label, grub-script-check, grub-set-default, grub-sparc64-setup, and grub-syslinux2cfg</seg> diff --git a/chapter08/gzip.xml b/chapter08/gzip.xml index afbfa36a0..a20bcdd7a 100644 --- a/chapter08/gzip.xml +++ b/chapter08/gzip.xml @@ -66,7 +66,7 @@ <segtitle>Installed programs</segtitle> <seglistitem> - <seg>gunzip, gzexe, gzip, uncompress (hard link with gunzip), zcat, zcmp, + <seg>gunzip, gzexe, gzip, uncompress (hard link with gunzip), zcat, zcmp, zdiff, zegrep, zfgrep, zforce, zgrep, zless, zmore, and znew</seg> </seglistitem> </segmentedlist> diff --git a/chapter08/inetutils.xml b/chapter08/inetutils.xml index ad828f67d..8acb361d8 100644 --- a/chapter08/inetutils.xml +++ b/chapter08/inetutils.xml @@ -128,7 +128,7 @@ <segtitle>Installed programs</segtitle> <seglistitem> - <seg>dnsdomainname, ftp, ifconfig, hostname, ping, ping6, + <seg>dnsdomainname, ftp, ifconfig, hostname, ping, ping6, talk, telnet, tftp, and traceroute</seg> </seglistitem> </segmentedlist> diff --git a/chapter08/iproute2.xml b/chapter08/iproute2.xml index 9d6a0c264..e1b2d189e 100644 --- a/chapter08/iproute2.xml +++ b/chapter08/iproute2.xml @@ -43,8 +43,8 @@ <para>The <command>arpd</command> program included in this package will not be built since it is dependent on Berkeley DB, which is not installed in - LFS. However, a directory for <command>arpd</command> and a man page will still - be installed. Prevent this by running the commands below. + LFS. However, a directory for <command>arpd</command> and a man page will still + be installed. Prevent this by running the commands below. If the <command>arpd</command> binary is needed, instructions for compiling Berkeley DB can be found in the BLFS Book at <ulink url="&blfs-book;server/db.html"/>. @@ -53,7 +53,7 @@ <screen><userinput remap="pre">sed -i /ARPD/d Makefile rm -fv man/man8/arpd.8</userinput></screen> - <para>It is also necessary to disable building two modules that + <para>It is also necessary to disable building two modules that require <ulink url="&blfs-book;postlfs/iptables.html"/>.</para> <screen><userinput remap="pre">sed -i 's/.m_ipt.o//' tc/Makefile</userinput></screen> diff --git a/chapter08/kbd.xml b/chapter08/kbd.xml index a219102eb..911720129 100644 --- a/chapter08/kbd.xml +++ b/chapter08/kbd.xml @@ -116,7 +116,7 @@ cp -R -v docs/doc/* /usr/share/doc/kbd-&kbd-version;</userinput></screen> psfxtable), psfstriptable (link to psfxtable), psfxtable, <!--resizecons,--> setfont, setkeycodes, setleds, setmetamode, setvtrgb, showconsolefont, showkey, unicode_start, and unicode_stop</seg> - <seg>/usr/share/consolefonts, /usr/share/consoletrans, /usr/share/keymaps, + <seg>/usr/share/consolefonts, /usr/share/consoletrans, /usr/share/keymaps, /usr/share/doc/kbd-&kbd-version;, and /usr/share/unimaps</seg> </seglistitem> </segmentedlist> diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml index f26c776a9..4288f31d9 100644 --- a/chapter08/kmod.xml +++ b/chapter08/kmod.xml @@ -91,7 +91,7 @@ ln -sfv kmod /usr/bin/lsmod</userinput></screen> <segtitle>Installed library</segtitle> <seglistitem> - <seg>depmod (link to kmod), insmod (link to kmod), kmod, + <seg>depmod (link to kmod), insmod (link to kmod), kmod, lsmod (link to kmod), modinfo (link to kmod), modprobe (link to kmod), and rmmod (link to kmod)</seg> <seg>libkmod.so</seg> diff --git a/chapter08/libelf.xml b/chapter08/libelf.xml index 3465531a1..9434a3996 100644 --- a/chapter08/libelf.xml +++ b/chapter08/libelf.xml @@ -55,7 +55,7 @@ <screen><userinput remap="make">make</userinput></screen> <para>To test the results, issue:</para> - + <screen><userinput remap="test">make check</userinput></screen> <!-- <para>One test, run-elfclassify.sh, is known to fail.</para>--> diff --git a/chapter08/libffi.xml b/chapter08/libffi.xml index 1c93a7df4..11539b2cf 100644 --- a/chapter08/libffi.xml +++ b/chapter08/libffi.xml @@ -66,9 +66,9 @@ <para>Ensure GCC optimizes for the current system. If this is not specified, the system is guessed and the code generated may not be correct for some systems. If the generated code - will be copied from the native system to a less capable - system, use the less capable system as a parameter. For details - about alternative system types, see <ulink + will be copied from the native system to a less capable + system, use the less capable system as a parameter. For details + about alternative system types, see <ulink url='https://gcc.gnu.org/onlinedocs/gcc-&gcc-version;/gcc/x86-Options.html'> the x86 options in the GCC manual</ulink>.</para> </listitem> diff --git a/chapter08/libtool.xml b/chapter08/libtool.xml index 711adac05..2082c6cf9 100644 --- a/chapter08/libtool.xml +++ b/chapter08/libtool.xml @@ -61,7 +61,7 @@ percent.</para></note> <para>Five tests are known to fail in the LFS build environment due - to a circular dependency, but all tests pass if rechecked after + to a circular dependency, but all tests pass if rechecked after automake is installed.</para> <para>Install the package:</para> diff --git a/chapter08/man-db.xml b/chapter08/man-db.xml index 8afadffaf..b60e417e8 100644 --- a/chapter08/man-db.xml +++ b/chapter08/man-db.xml @@ -100,7 +100,7 @@ <varlistentry revision="sysv"> <term><parameter>--with-systemd...</parameter></term> <listitem> - <para>These parameters prevent installing unneeded systemd + <para>These parameters prevent installing unneeded systemd directories and files.</para> </listitem> </varlistentry> diff --git a/chapter08/meson.xml b/chapter08/meson.xml index 692513b06..60838af94 100644 --- a/chapter08/meson.xml +++ b/chapter08/meson.xml @@ -69,7 +69,7 @@ install -vDm644 data/shell-completions/zsh/_meson /usr/share/zsh/site-functions/ <variablelist> <title>The meaning of the install parameters:</title> - + <varlistentry> <term><parameter>--root=dest</parameter></term> <listitem> diff --git a/chapter08/ncurses.xml b/chapter08/ncurses.xml index 3fbca0c3c..3f2247586 100644 --- a/chapter08/ncurses.xml +++ b/chapter08/ncurses.xml @@ -132,7 +132,7 @@ cp -v -R doc/* /usr/share/doc/ncurses-&ncurses-version;</userinput></screen> <para>The instructions above don't create non-wide-character Ncurses libraries since no package installed by compiling from sources would link against them at runtime. However, the only known binary-only - applications that link against non-wide-character Ncurses libraries + applications that link against non-wide-character Ncurses libraries require version 5. If you must have such libraries because of some binary-only application or to be compliant with LSB, build the package again with the following commands:</para> @@ -143,7 +143,7 @@ cp -v -R doc/* /usr/share/doc/ncurses-&ncurses-version;</userinput></screen> --without-normal \ --without-debug \ --without-cxx-binding \ - --with-abi-version=5 + --with-abi-version=5 make sources libs cp -av lib/lib*.so.5* /usr/lib</userinput></screen> </note> @@ -160,27 +160,27 @@ cp -av lib/lib*.so.5* /usr/lib</userinput></screen> <seglistitem> <seg> - captoinfo (link to tic), - clear, - infocmp, + captoinfo (link to tic), + clear, + infocmp, infotocap (link to tic), - ncursesw6-config, - reset (link to tset), - tabs, - tic, - toe, - tput, and + ncursesw6-config, + reset (link to tset), + tabs, + tic, + toe, + tput, and tset </seg> <seg> libcursesw.so (symlink and linker script to libncursesw.so), - libformw.so, - libmenuw.so, + libformw.so, + libmenuw.so, libncursesw.so, libpanelw.so, and their non-wide-character counterparts without "w" in the library names.</seg> <seg> - /usr/share/tabset, + /usr/share/tabset, /usr/share/terminfo, and /usr/share/doc/ncurses-&ncurses-version; </seg> diff --git a/chapter08/ninja.xml b/chapter08/ninja.xml index 0fe0ccb73..4f3a25e88 100644 --- a/chapter08/ninja.xml +++ b/chapter08/ninja.xml @@ -50,21 +50,21 @@ <title>Installation of Ninja</title> <para>When run, ninja normally runs a maximum number of processes - in parallel. By default this is the number of cores on the system + in parallel. By default this is the number of cores on the system plus two. In some cases this can overheat a CPU or run a system out of memory. If run from the command line, passing a -jN parameter will limit the number of parallel processes, but some packages embed the execution of ninja and do not pass a -j parameter.</para> <para>Using the <emphasis>optional</emphasis> procedure below allows a user to - limit the number of parallel processes via an environment variable, + limit the number of parallel processes via an environment variable, NINJAJOBS. <emphasis role="bold">For example</emphasis>, setting: <screen>export NINJAJOBS=4</screen> will limit ninja to four parallel processes.</para> - <para>If desired, add the capability to use the environment variable + <para>If desired, add the capability to use the environment variable NINJAJOBS by running:</para> <screen><userinput remap="pre">sed -i '/int Guess/a \ diff --git a/chapter08/perl.xml b/chapter08/perl.xml index 0bb32c344..d22614a56 100644 --- a/chapter08/perl.xml +++ b/chapter08/perl.xml @@ -46,7 +46,7 @@ <screen><userinput remap="pre">patch -Np1 -i ../&perl-fix-patch;</userinput></screen> - <para>This version of Perl now builds the Compress::Raw::Zlib and + <para>This version of Perl now builds the Compress::Raw::Zlib and Compress::Raw::BZip2 modules. By default Perl will use an internal copy of the sources for the build. Issue the following command so that Perl will use the libraries @@ -89,7 +89,7 @@ export BUILD_BZIP2=0</userinput></screen> <varlistentry> <term><parameter>-Dpager="/usr/bin/less -isR"</parameter></term> <listitem> - <para>This ensures that <userinput>less</userinput> is used instead + <para>This ensures that <userinput>less</userinput> is used instead of <userinput>more</userinput>.</para> </listitem> </varlistentry> diff --git a/chapter08/procps.xml b/chapter08/procps.xml index 8d49b60b4..dfdb949ab 100644 --- a/chapter08/procps.xml +++ b/chapter08/procps.xml @@ -28,7 +28,7 @@ <!-- TODO This note will probably not be needed at the next revision. --> <note> <para>This package extracts to the directory - <filename class="directory">procps-3.3.17</filename>, + <filename class="directory">procps-3.3.17</filename>, not the expected <filename class="directory">procps-ng-3.3.17</filename>.</para> </note> @@ -93,7 +93,7 @@ make check</userinput></screen> <para>Five tests related to pkill are known to fail due to a problem with tests that were not updated.</para> - + <para>Install the package:</para> <screen><userinput remap="install">make install</userinput></screen> diff --git a/chapter08/python.xml b/chapter08/python.xml index ddcaa17d2..a2c4a5bdd 100644 --- a/chapter08/python.xml +++ b/chapter08/python.xml @@ -103,7 +103,7 @@ <para>If desired, install the preformatted documentation:</para> -<screen><userinput remap="install">install -v -dm755 /usr/share/doc/python-&python-version;/html +<screen><userinput remap="install">install -v -dm755 /usr/share/doc/python-&python-version;/html tar --strip-components=1 \ --no-same-owner \ @@ -117,9 +117,9 @@ tar --strip-components=1 \ <varlistentry> <term><option>--no-same-owner</option> and <option>--no-same-permissions</option></term> <listitem> - <para>Ensure the installed files have the correct ownership and + <para>Ensure the installed files have the correct ownership and permissions. Without these options, using <application>tar</application> - will install the package files with the upstream creator's values. + will install the package files with the upstream creator's values. </para> </listitem> </varlistentry> @@ -144,7 +144,7 @@ tar --strip-components=1 \ libpython&python-minor;.so and libpython3.so </seg> <seg> - /usr/include/python&python-minor;, + /usr/include/python&python-minor;, /usr/lib/python3, and /usr/share/doc/python-&python-version; </seg> @@ -162,7 +162,7 @@ tar --strip-components=1 \ <para> is a <application>Python</application> program that reads <application>Python 2.x</application> source code and applies a - series of fixes to transform it into + series of fixes to transform it into valid <application>Python 3.x</application> code </para> <indexterm zone="ch-system-Python"> diff --git a/chapter08/revisedchroot.xml b/chapter08/revisedchroot.xml index 0c16ae622..b1317c92d 100644 --- a/chapter08/revisedchroot.xml +++ b/chapter08/revisedchroot.xml @@ -15,7 +15,7 @@ <screen><userinput>rm -rf /tmp/*</userinput></screen> <para>Now log out and reenter the chroot environment with an updated - chroot command. From now on, use this updated chroot command any time + chroot command. From now on, use this updated chroot command any time you need to reenter the chroot environment after exiting:</para> <screen role="nodump"><userinput>logout @@ -55,7 +55,7 @@ chroot "$LFS" /usr/bin/env -i \ <screen><userinput>find /usr -depth -name $(uname -m)-lfs-linux-gnu\* | xargs rm -rf</userinput></screen> - <para>Finally, remove the temporary 'tester' user account created at the + <para>Finally, remove the temporary 'tester' user account created at the beginning of the previous chapter.</para> <screen><userinput>userdel -r tester</userinput></screen> diff --git a/chapter08/stripping.xml b/chapter08/stripping.xml index 6841cd830..7f775b3d8 100644 --- a/chapter08/stripping.xml +++ b/chapter08/stripping.xml @@ -10,7 +10,7 @@ <title>Stripping</title> - <para>This section is optional. If the intended user is not a + <para>This section is optional. If the intended user is not a programmer and does not plan to do any debugging on the system software, the system size can be decreased by about 2 GB by removing the debugging symbols from binaries and @@ -24,9 +24,9 @@ backup of the LFS system in its current state.</para> <para>The debugging symbols for selected libraries are placed - in separate files. This debugging information is needed if running - regression tests that use <ulink - url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink + in separate files. This debugging information is needed if running + regression tests that use <ulink + url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink url='&blfs-book;/general/gdb.html'>gdb</ulink> later in BLFS. </para> @@ -41,7 +41,7 @@ rationale to use the <command>install</command> command here.</para> <note><para>The ELF loader's name is ld-linux-x86-64.so.2 on 64-bit systems - and ld-linux.so.2 on 32-bit systems. The contruct below selects the + and ld-linux.so.2 on 32-bit systems. The contruct below selects the correct name for the current architecture.</para></note> <!-- also of interest are libgfortan, libgo, libgomp, and libobjc from GCC --> @@ -50,10 +50,10 @@ <screen><userinput>save_usrlib="$(cd /usr/lib; ls ld-linux*) libc.so.6 libthread_db.so.1 - libquadmath.so.&libquadmath-version; + libquadmath.so.&libquadmath-version; libstdc++.so.&libstdcpp-version; - libitm.so.&libitm-version; - libatomic.so.&libatomic-version;" + libitm.so.&libitm-version; + libatomic.so.&libatomic-version;" cd /usr/lib @@ -93,9 +93,9 @@ for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg) \ $(find /usr/lib -type f -name \*.a) \ $(find /usr/{bin,sbin,libexec} -type f); do case "$online_usrbin $online_usrlib $save_usrlib" in - *$(basename $i)* ) + *$(basename $i)* ) ;; - * ) strip --strip-unneeded $i + * ) strip --strip-unneeded $i ;; esac done diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml index 67b27b8d8..f003a1c47 100644 --- a/chapter08/systemd.xml +++ b/chapter08/systemd.xml @@ -205,7 +205,7 @@ meson --prefix=/usr \ use a network configuration other than what is provided by systemd-networkd:</para> <!-- Observed halting startup with dhcpcd handling the primary NIC --> - + <screen><userinput remap="adjust">systemctl disable systemd-time-wait-sync.service</userinput></screen> <!-- dev: 50-pid-max.conf is not removed in BLFS, so I commented the following out. @@ -213,7 +213,7 @@ meson --prefix=/usr \ <!-- <para>Prevent systemd from resetting the maximum PID value which causes some problems with packages and units in BLFS:</para> - + <screen><userinput remap="adjust">rm -f /usr/lib/sysctl.d/50-pid-max.conf</userinput></screen> --> @@ -251,8 +251,8 @@ meson --prefix=/usr \ <seg>/etc/binfmt.d, /etc/init.d, /etc/kernel, /etc/modules-load.d, /etc/sysctl.d, /etc/systemd, /etc/tmpfiles.d, /etc/udev, /etc/xdg/systemd, /usr/lib/systemd, /usr/lib/udev, /usr/include/systemd, - /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel, - /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd, + /usr/lib/binfmt.d, /usr/lib/environment.d, /usr/lib/kernel, + /usr/lib/modules-load.d, /usr/lib/sysctl.d, /usr/lib/systemd, /usr/lib/tmpfiles.d, /usr/share/doc/systemd-&systemd-version;, /usr/share/factory, /usr/share/systemd, /var/lib/systemd, and /var/log/journal</seg> @@ -323,7 +323,7 @@ meson --prefix=/usr \ <term><command>init</command></term> <listitem> <para>Is the first process to be started when the kernel has initialized - the hardware which takes over the boot process and starts all + the hardware which takes over the boot process and starts all processes according to its configuration files. In this case, it starts systemd</para> <indexterm zone="ch-system-systemd init"> @@ -389,7 +389,7 @@ meson --prefix=/usr \ <varlistentry id="networkctl"> <term><command>networkctl</command></term> <listitem> - <para>Is used to introspect and configure the state of the network + <para>Is used to introspect and configure the state of the network links configured by systemd-networkd</para> <indexterm zone="ch-system-systemd networkctl"> <primary sortas="b-networkctl">networkctl</primary> @@ -477,7 +477,7 @@ meson --prefix=/usr \ <varlistentry id="shutdown"> <term><command>shutdown</command></term> <listitem> - <para>Brings the system down in a safe and secure manner, signaling + <para>Brings the system down in a safe and secure manner, signaling all processes and notifying all logged-in users</para> <indexterm zone="ch-system-systemd shutdown"> <primary sortas="b-shutdown">shutdown</primary> @@ -774,7 +774,7 @@ meson --prefix=/usr \ <varlistentry id="systemd-tty-ask-password-agent"> <term><command>systemd-tty-ask-password-agent</command></term> <listitem> - <para>Is used to list and/or process pending systemd password + <para>Is used to list and/or process pending systemd password requests</para> <indexterm zone="ch-system-systemd systemd-tty-ask-password-agent"> <primary sortas="b-systemd-tty-ask-password-agent">systemd-tty-ask-password-agent</primary> @@ -807,9 +807,9 @@ meson --prefix=/usr \ <varlistentry id="udevadm"> <term><command>udevadm</command></term> <listitem> - <para>Is a generic udev administration tool which controls the udevd - daemon, provides info from the Udev hardware database, monitors - uevents, waits for uevents to finish, tests udev configuration, and + <para>Is a generic udev administration tool which controls the udevd + daemon, provides info from the Udev hardware database, monitors + uevents, waits for uevents to finish, tests udev configuration, and triggers uevents for a given device</para> <indexterm zone="ch-system-systemd udevadm"> <primary sortas="b-udevadm">udevadm</primary> diff --git a/chapter08/sysvinit.xml b/chapter08/sysvinit.xml index 0a13f78e1..0d6914a45 100644 --- a/chapter08/sysvinit.xml +++ b/chapter08/sysvinit.xml @@ -91,7 +91,7 @@ <segtitle>Installed programs</segtitle> <seglistitem> - <seg>bootlogd, fstab-decode, halt, init, killall5, + <seg>bootlogd, fstab-decode, halt, init, killall5, poweroff (link to halt), reboot (link to halt), runlevel, shutdown, and telinit (link to init)</seg> </seglistitem> diff --git a/chapter08/tcl.xml b/chapter08/tcl.xml index 9f0a7401c..3776739c4 100644 --- a/chapter08/tcl.xml +++ b/chapter08/tcl.xml @@ -51,7 +51,7 @@ most important tools are working properly.</para> <!-- <para>Note that the Tcl package used here is a minimal version needed - to run the LFS tests. For the full package, see the + to run the LFS tests. For the full package, see the <ulink url='&blfs-book;general/tcl.html'>BLFS Tcl procedures</ulink>.</para>--> <para>First, unpack the documentation by issuing the following command:</para> @@ -155,11 +155,11 @@ unset SRCDIR</userinput></screen> <seglistitem> <seg> - tclsh (link to tclsh&tcl-major-version;) and + tclsh (link to tclsh&tcl-major-version;) and tclsh&tcl-major-version; </seg> <seg> - libtcl&tcl-major-version;.so and + libtcl&tcl-major-version;.so and libtclstub&tcl-major-version;.a </seg> </seglistitem> diff --git a/chapter08/texinfo.xml b/chapter08/texinfo.xml index 2543cd14d..42e81feae 100644 --- a/chapter08/texinfo.xml +++ b/chapter08/texinfo.xml @@ -196,7 +196,7 @@ popd</userinput></screen> <varlistentry id="texi2any"> <term><command>texi2any</command></term> <listitem> - <para>Translate Texinfo source documentation to + <para>Translate Texinfo source documentation to various other formats</para> <indexterm zone="ch-system-texinfo texi2any"> <primary sortas="b-texiany">texi2any</primary> diff --git a/chapter08/util-linux.xml b/chapter08/util-linux.xml index bcc3c98bd..341310556 100644 --- a/chapter08/util-linux.xml +++ b/chapter08/util-linux.xml @@ -75,7 +75,7 @@ runstatedir=/run</userinput></screen> <para>The --disable and --without options prevent warnings about - building components that require packages not in LFS or are + building components that require packages not in LFS or are inconsistent with programs installed by other packages.</para> <para>Compile the package:</para> @@ -138,14 +138,14 @@ su tester -c "make -k check"</userinput></screen> swapoff (link to swapon), swapon, switch_root, taskset, ul, umount, uname26, unshare, utmpdump, uuidd, uuidgen, uuidparse, wall, wdctl, whereis, wipefs, x86_64, and zramctl</seg> - <seg>libblkid.so, libfdisk.so, libmount.so, + <seg>libblkid.so, libfdisk.so, libmount.so, libsmartcols.so, and libuuid.so</seg> - <seg>/usr/include/blkid, - /usr/include/libfdisk, - /usr/include/libmount, - /usr/include/libsmartcols, - /usr/include/uuid, - /usr/share/doc/util-linux-&util-linux-version;, + <seg>/usr/include/blkid, + /usr/include/libfdisk, + /usr/include/libmount, + /usr/include/libsmartcols, + /usr/include/uuid, + /usr/share/doc/util-linux-&util-linux-version;, and /var/lib/hwclock</seg> </seglistitem> </segmentedlist> @@ -592,8 +592,8 @@ su tester -c "make -k check"</userinput></screen> <varlistentry id="last"> <term><command>last</command></term> <listitem> - <para>Shows which users last logged in (and out), searching back - through the <filename>/var/log/wtmp</filename> file; it also shows + <para>Shows which users last logged in (and out), searching back + through the <filename>/var/log/wtmp</filename> file; it also shows system boots, shutdowns, and run-level changes</para> <indexterm zone="ch-system-util-linux last"> <primary sortas="b-last">last</primary> @@ -604,7 +604,7 @@ su tester -c "make -k check"</userinput></screen> <varlistentry id="lastb"> <term><command>lastb</command></term> <listitem> - <para>Shows the failed login attempts, as logged in + <para>Shows the failed login attempts, as logged in <filename>/var/log/btmp</filename></para> <indexterm zone="ch-system-util-linux lastb"> <primary sortas="b-lastb">lastb</primary> @@ -759,7 +759,7 @@ su tester -c "make -k check"</userinput></screen> <varlistentry id="mesg"> <term><command>mesg</command></term> <listitem> - <para>Controls whether other users can send messages to the current + <para>Controls whether other users can send messages to the current user's terminal</para> <indexterm zone="ch-system-util-linux mesg"> <primary sortas="b-mesg">mesg</primary> @@ -1260,7 +1260,7 @@ su tester -c "make -k check"</userinput></screen> <varlistentry id="zramctl"> <term><command>zramctl</command></term> <listitem> - <para>A program to set up and control zram (compressed ram disk) + <para>A program to set up and control zram (compressed ram disk) devices</para> <indexterm zone="ch-system-util-linux zramctl"> <primary sortas="b-zramctl">zramctl</primary> diff --git a/chapter08/vim.xml b/chapter08/vim.xml index 4d06d5a08..11b5c2565 100644 --- a/chapter08/vim.xml +++ b/chapter08/vim.xml @@ -62,8 +62,8 @@ <screen><userinput remap="make">make</userinput></screen> - <para>To prepare the tests, ensure that user - <systemitem class="username">tester</systemitem> can write + <para>To prepare the tests, ensure that user + <systemitem class="username">tester</systemitem> can write to the source tree:</para> <screen><userinput remap="test">chown -Rv tester .</userinput></screen> @@ -133,7 +133,7 @@ done</userinput></screen> " Ensure defaults are set before customizing settings, not after source $VIMRUNTIME/defaults.vim -let skip_defaults_vim=1 +let skip_defaults_vim=1 set nocompatible set backspace=2 diff --git a/chapter08/xz.xml b/chapter08/xz.xml index 7f723482a..e4c43131c 100644 --- a/chapter08/xz.xml +++ b/chapter08/xz.xml @@ -74,34 +74,34 @@ <seglistitem> <seg> - lzcat (link to xz), - lzcmp (link to xzdiff), - lzdiff (link to xzdiff), - lzegrep (link to xzgrep), + lzcat (link to xz), + lzcmp (link to xzdiff), + lzdiff (link to xzdiff), + lzegrep (link to xzgrep), lzfgrep (link to xzgrep), - lzgrep (link to xzgrep), - lzless (link to xzless), + lzgrep (link to xzgrep), + lzless (link to xzless), lzma (link to xz), - lzmadec, - lzmainfo, + lzmadec, + lzmainfo, lzmore (link to xzmore), - unlzma (link to xz), - unxz (link to xz), - xz, + unlzma (link to xz), + unxz (link to xz), + xz, xzcat (link to xz), - xzcmp (link to xzdiff), - xzdec, - xzdiff, + xzcmp (link to xzdiff), + xzdec, + xzdiff, xzegrep (link to xzgrep), - xzfgrep (link to xzgrep), - xzgrep, - xzless, and + xzfgrep (link to xzgrep), + xzgrep, + xzless, and xzmore</seg> <seg> liblzma.so </seg> <seg> - /usr/include/lzma and + /usr/include/lzma and /usr/share/doc/xz-&xz-version; </seg> </seglistitem> diff --git a/chapter08/zstd.xml b/chapter08/zstd.xml index 1d0c603f6..881aba286 100644 --- a/chapter08/zstd.xml +++ b/chapter08/zstd.xml @@ -73,10 +73,10 @@ <segtitle>Installed library</segtitle> <seglistitem> - <seg>zstd, - zstdcat (link to zstd), - zstdgrep, - zstdless, + <seg>zstd, + zstdcat (link to zstd), + zstdgrep, + zstdless, zstdmt (link to zstd), and unzstd (link to zstd) </seg> diff --git a/chapter09/bootscripts.xml b/chapter09/bootscripts.xml index 57c6377ff..cb88a9fd8 100644 --- a/chapter09/bootscripts.xml +++ b/chapter09/bootscripts.xml @@ -24,7 +24,7 @@ <title/> <para>The LFS-Bootscripts package contains a set of scripts to start/stop - the LFS system at bootup/shutdown. + the LFS system at bootup/shutdown. The configuration files and procedures needed to customize the boot process are described in the following sections.</para> diff --git a/chapter09/consoled.xml b/chapter09/consoled.xml index 76d304d44..1425f0410 100644 --- a/chapter09/consoled.xml +++ b/chapter09/consoled.xml @@ -25,7 +25,7 @@ language-specific HOWTOs can also help with this, see <ulink url="http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html"/>. Examine the output of <command>localectl list-keymaps</command> for a list of - valid console keymaps. Look in the + valid console keymaps. Look in the <filename class="directory">/usr/share/consolefonts</filename> directory for valid screen fonts.</para> diff --git a/chapter09/introduction.xml b/chapter09/introduction.xml index 875003f14..7bd2219fc 100644 --- a/chapter09/introduction.xml +++ b/chapter09/introduction.xml @@ -29,7 +29,7 @@ additional scripts that perform the tasks required to initialize the system.</para> - <para>The <command>init</command> program is controlled by the + <para>The <command>init</command> program is controlled by the <filename>/etc/inittab</filename> file and is organized into run levels that can be run by the user:</para> @@ -61,10 +61,10 @@ <itemizedlist> <listitem> - <para>May be slower to boot. A medium speed base LFS system - takes 8-12 seconds where the boot time is measured from the - first kernel message to the login prompt. Network - connectivity is typically established about 2 seconds + <para>May be slower to boot. A medium speed base LFS system + takes 8-12 seconds where the boot time is measured from the + first kernel message to the login prompt. Network + connectivity is typically established about 2 seconds after the login prompt.</para> </listitem> diff --git a/chapter09/locale.xml b/chapter09/locale.xml index 73de29bd7..65cffc570 100644 --- a/chapter09/locale.xml +++ b/chapter09/locale.xml @@ -80,7 +80,7 @@ LC_ALL=<locale name> locale int_prefix</userinput></screen> encoding used by the locale, the local currency, and the prefix to dial before the telephone number in order to get into the country. If any of the commands above fail with a message similar to the one shown below, this means - that your locale was either not installed in Chapter 8 or is not + that your locale was either not installed in Chapter 8 or is not supported by the default installation of Glibc.</para> <screen><computeroutput>locale: Cannot set LC_* to default locale: No such file or directory</computeroutput></screen> @@ -142,7 +142,7 @@ EOF</userinput></screen> substitutes them with question marks in that locale. Also, an attempt to send mail with such characters from Mutt or Pine results in non-RFC-conforming messages being sent (the charset in the outgoing mail is indicated as <quote>unknown - 8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only + 8-bit</quote>). It's suggested that you use the <quote>C</quote> locale only if you are certain that you will never need 8-bit characters.</para> <!-- diff --git a/chapter09/network.xml b/chapter09/network.xml index 45cd1d438..52eb35c18 100644 --- a/chapter09/network.xml +++ b/chapter09/network.xml @@ -31,7 +31,7 @@ will assign network card interface names based on system physical characteristics such as enp2s1. If you are not sure what your interface name is, you can always run <command>ip link</command> or <command>ls - /sys/class/net</command> after you have booted your system. + /sys/class/net</command> after you have booted your system. </para></note> <para>The following command creates a sample file for the @@ -157,21 +157,21 @@ EOF</userinput></screen> <indexterm zone="ch-config-hosts"> <primary sortas="e-/etc/hosts">/etc/hosts</primary> </indexterm> - + <indexterm zone="ch-config-hosts"> <primary sortas="d-localnet">localnet</primary> <secondary>/etc/hosts</secondary> </indexterm> - + <indexterm zone="ch-config-hosts"> <primary sortas="d-network">network</primary> <secondary>/etc/hosts</secondary> </indexterm> - + <para>Decide on the IP address, fully-qualified domain name (FQDN), and possible aliases for use in the <filename>/etc/hosts</filename> file. The syntax is:</para> - + <screen><literal>IP_address myhost.example.org aliases</literal></screen> <para>Unless the computer is to be visible to the Internet (i.e., there is @@ -186,13 +186,13 @@ EOF</userinput></screen> <para>x can be any number in the range 16-31. y can be any number in the range 0-255.</para> - + <para>A valid private IP address could be 192.168.1.1. A valid FQDN for this IP could be lfs.example.org.</para> - + <para>Even if not using a network card, a valid FQDN is still required. This is necessary for certain programs to operate correctly.</para> - + <para>Create the <filename>/etc/hosts</filename> file by running:</para> <screen><userinput>cat > /etc/hosts << "EOF" @@ -209,7 +209,7 @@ ff02::2 ip6-allrouters EOF</userinput></screen> <para>The <replaceable><192.168.1.1></replaceable>, - <replaceable><FQDN></replaceable>, and + <replaceable><FQDN></replaceable>, and <replaceable><HOSTNAME></replaceable> values need to be changed for specific uses or requirements (if assigned an IP address by a network/system administrator and the machine will be connected to an diff --git a/chapter09/networkd.xml b/chapter09/networkd.xml index 49d4031a0..9090596c0 100644 --- a/chapter09/networkd.xml +++ b/chapter09/networkd.xml @@ -38,7 +38,7 @@ <filename class="extension">.link</filename>, <filename class="extension">.netdev</filename> and <filename class="extension">.network</filename> files. For detailed - descriptions and example contents of these configuration files, consult + descriptions and example contents of these configuration files, consult the <filename>systemd-link(5)</filename>, <filename>systemd-netdev(5)</filename> and <filename>systemd-network(5)</filename> manual pages.</para> @@ -57,7 +57,7 @@ For most systems, there is only one network interface for each type of connection. For example, the classic interface name for a wired connection is eth0. A wireless connection - will usually have the name wifi0 or wlan0. + will usually have the name wifi0 or wlan0. </para> <para> @@ -75,8 +75,8 @@ <listitem> <para> Create a manual naming scheme, for example by naming the - interfaces something like "internet0", "dmz0", or "lan0". - To do that, create .link files in /etc/systemd/network/ that + interfaces something like "internet0", "dmz0", or "lan0". + To do that, create .link files in /etc/systemd/network/ that select an explicit name or a better naming scheme for your network interfaces. For example: </para> @@ -91,13 +91,13 @@ Name=ether0</literal> EOF</userinput></screen> <para> - See the man page systemd.link(5) for more information. + See the man page systemd.link(5) for more information. </para> </listitem> <listitem> <para> - In /boot/grub/grub.cfg, pass the option net.ifnames=0 on the + In /boot/grub/grub.cfg, pass the option net.ifnames=0 on the kernel command line. </para> </listitem> @@ -209,7 +209,7 @@ EOF</userinput></screen> with the IP address of the DNS server most appropriate for your setup. There will often be more than one entry (requirements demand secondary servers for fallback capability). If you only need or want one DNS server, - remove the second <emphasis>nameserver</emphasis> line from the file. + remove the second <emphasis>nameserver</emphasis> line from the file. The IP address may also be a router on the local network. Another option is to use the Google Public DNS service using the IP addresses below as nameservers.</para> @@ -252,12 +252,12 @@ EOF</userinput></screen> <indexterm zone="ch-config-hosts"> <primary sortas="e-/etc/hosts">/etc/hosts</primary> </indexterm> - + <indexterm zone="ch-config-hosts"> <primary sortas="d-localnet">localnet</primary> <secondary>/etc/hosts</secondary> </indexterm> - + <indexterm zone="ch-config-hosts"> <primary sortas="d-network">network</primary> <secondary>/etc/hosts</secondary> diff --git a/chapter09/profile.xml b/chapter09/profile.xml index ec39d3a30..e47153830 100644 --- a/chapter09/profile.xml +++ b/chapter09/profile.xml @@ -103,7 +103,7 @@ LC_ALL=<locale name> locale int_prefix</userinput></screen> encoding used by the locale, the local currency, and the prefix to dial before the telephone number in order to get into the country. If any of the commands above fail with a message similar to the one shown below, this means - that your locale was either not installed in <xref linkend="ch-system-glibc"/> + that your locale was either not installed in <xref linkend="ch-system-glibc"/> or is not supported by the default installation of Glibc.</para> <screen><computeroutput>locale: Cannot set LC_* to default locale: No such file or directory</computeroutput></screen> diff --git a/chapter09/symlinks.xml b/chapter09/symlinks.xml index c4ddd4eaf..24ebf537d 100644 --- a/chapter09/symlinks.xml +++ b/chapter09/symlinks.xml @@ -22,7 +22,7 @@ Intel and Realtek, the network card manufactured by Intel may become eth0 and the Realtek card becomes eth1. In some cases, after a reboot the cards could get renumbered the other way around.</para> - + <para>In the new naming scheme, typical network device names would then be something like enp5s0 or wlp3s0. If this naming convention is not desired, the traditional naming scheme or a custom scheme can be @@ -30,20 +30,20 @@ <sect3> <title>Disabling Persistent Naming on the Kernel Command Line</title> - + <para>The traditional naming scheme using eth0, eth1, etc can be - restored by adding <userinput>net.ifnames=0</userinput> on the + restored by adding <userinput>net.ifnames=0</userinput> on the kernel command line. This is most appropriate for those systems that have only one ethernet device of the same type. Laptops - often have multiple ethernet connections that are named eth0 and - wlan0 and are also candidates for this method. The command line - is passed in the GRUB configuration file. + often have multiple ethernet connections that are named eth0 and + wlan0 and are also candidates for this method. The command line + is passed in the GRUB configuration file. See <xref linkend="grub-cfg"/>.</para> </sect3> <sect3> <title>Creating Custom Udev Rules</title> - + <para>The naming scheme can be customized by creating custom udev rules. A script has been included that generates the initial rules. Generate these rules by running:</para> @@ -61,7 +61,7 @@ the network rules file may not have been generated because addresses are not consistently assigned. In these cases, this method cannot be used.</para></note> - + <para>The file begins with a comment block followed by two lines for each NIC. The first line for each NIC is a commented description showing its hardware IDs (e.g. its PCI vendor and device IDs, if it's a PCI card), @@ -69,11 +69,11 @@ the hardware ID nor the driver is used to determine which name to give an interface; this information is only for reference. The second line is the udev rule that matches this NIC and actually assigns it a name.</para> - + <para>All udev rules are made up of several keys, separated by commas and optional whitespace. This rule's keys and an explanation of each of them are as follows:</para> - + <itemizedlist> <listitem> <para><literal>SUBSYSTEM=="net"</literal> - This tells udev to ignore @@ -106,7 +106,7 @@ udev will assign to this interface.</para> </listitem> </itemizedlist> - + <para>The value of <literal>NAME</literal> is the important part. Make sure you know which name has been assigned to each of your network cards before proceeding, and be sure to use that <literal>NAME</literal> value when diff --git a/chapter09/systemd-custom.xml b/chapter09/systemd-custom.xml index 7e0613df2..bab18eb6d 100644 --- a/chapter09/systemd-custom.xml +++ b/chapter09/systemd-custom.xml @@ -50,13 +50,13 @@ EOF</userinput></screen> <title>Disabling tmpfs for /tmp</title> <para>By default, <filename class="directory">/tmp</filename> is created as - a tmpfs. If this is not desired, it can be overridden by executing the + a tmpfs. If this is not desired, it can be overridden by executing the following command:</para> <screen role="nodump"><userinput>ln -sfv /dev/null /etc/systemd/system/tmp.mount</userinput></screen> <para>Alternatively, if a separate partition for - <filename class="directory">/tmp</filename> is desired, specify that + <filename class="directory">/tmp</filename> is desired, specify that partition in a <filename>/etc/fstab</filename> entry.</para> <warning> @@ -81,9 +81,9 @@ EOF</userinput></screen> <listitem><para>systemd-tmpfiles-setup-dev.service</para></listitem> <listitem><para>systemd-tmpfiles-setup.service</para></listitem> </itemizedlist> - + <para>The system location for the configuration files is - <filename>/usr/lib/tmpfiles.d/*.conf</filename>. The local + <filename>/usr/lib/tmpfiles.d/*.conf</filename>. The local configuration files are in <filename class="directory">/etc/tmpfiles.d</filename>. Files in <filename class="directory">/etc/tmpfiles.d</filename> override @@ -94,9 +94,9 @@ EOF</userinput></screen> <para> Note that the syntax for the - <filename>/usr/lib/tmpfiles.d/*.conf</filename> files can be + <filename>/usr/lib/tmpfiles.d/*.conf</filename> files can be confusing. For example, the default deletion of files in the /tmp directory - is located in <filename>/usr/lib/tmpfiles.d/tmp.conf</filename> with + is located in <filename>/usr/lib/tmpfiles.d/tmp.conf</filename> with the line: <screen role="nodump">q /tmp 1777 root root 10d</screen> @@ -148,7 +148,7 @@ EOF</userinput></screen> <para>Rather than plain shell scripts used in SysVinit or BSD style init systems, systemd uses a unified format for different types of startup files (or units). The command <command>systemctl</command> is used to - enable, disable, control state, and obtain status of unit files. Here + enable, disable, control state, and obtain status of unit files. Here are some examples of frequently used commands:</para> <itemizedlist> diff --git a/chapter09/udev.xml b/chapter09/udev.xml index 20b311284..a2ff35511 100644 --- a/chapter09/udev.xml +++ b/chapter09/udev.xml @@ -119,7 +119,7 @@ rule for the device it is creating, it will leave the permissions and ownership at whatever <systemitem class="filesystem">devtmpfs</systemitem> used initially.</para> </sect3> - + <sect3 id="module-loading"> <title>Module Loading</title> @@ -223,12 +223,12 @@ <para>Note that the <quote>softdep</quote> command also allows <literal>pre:</literal> dependencies, or a mixture of both - <literal>pre:</literal> and <literal>post:</literal> dependencies. See + <literal>pre:</literal> and <literal>post:</literal> dependencies. See the <filename>modprobe.d(5)</filename> manual page for more information on <quote>softdep</quote> syntax and capabilities.</para> - <para revision="sysv">If the module in question is not a wrapper and is - useful by itself, configure the <command>modules</command> bootscript to + <para revision="sysv">If the module in question is not a wrapper and is + useful by itself, configure the <command>modules</command> bootscript to load this module on system boot. To do this, add the module name to the <filename>/etc/sysconfig/modules</filename> file on a separate line. This works for wrapper modules too, but is suboptimal in that case.</para> diff --git a/chapter09/usage.xml b/chapter09/usage.xml index d59b38b29..ffb31055d 100644 --- a/chapter09/usage.xml +++ b/chapter09/usage.xml @@ -24,7 +24,7 @@ system to another, so it cannot be assumed that because things worked in one particular Linux distribution, they should work the same in LFS too. LFS has its own way of doing things, but it respects generally accepted standards.</para> - + <para>SysVinit (which will be referred to as <quote>init</quote> from now on) works using a run-levels scheme. There are seven (numbered 0 to 6) run-levels (actually, there are more run-levels, but they are for special cases and are @@ -233,7 +233,7 @@ EOF</userinput></screen> <device> is an absolute path in /dev or /sys such as /dev/sr0 or /sys/class/rtc.</para> - <para>For information on kernel module loading and udev, see + <para>For information on kernel module loading and udev, see <xref linkend="module-loading"/>.</para> </sect2> @@ -535,28 +535,28 @@ EOF</userinput></screen> <sect2 id="ch-config-createfiles"> <title>Creating Files at Boot</title> - + <indexterm zone="ch-config-createfiles"> <primary sortas="d-createfiles">File creation at boot</primary> <secondary>configuring</secondary> </indexterm> - + <para>At times, it is desirable to create files at boot time. For instance, the <filename class="directory">/tmp/.ICE-unix</filename> directory is often needed. This can be done by creating an entry in the <filename>/etc/sysconfig/createfiles</filename> configuration script. - The format of this file is embedded in the comments of the default + The format of this file is embedded in the comments of the default configuration file.</para> </sect2> <sect2 id="ch-config-sysklogd"> <title>Configuring the sysklogd Script</title> - + <indexterm zone="ch-config-sysklogd"> <primary sortas="d-sysklogd">sysklogd</primary> <secondary>configuring</secondary> </indexterm> - + <para>The <filename>sysklogd</filename> script invokes the <command>syslogd</command> program as a part of System V initialization. The <parameter>-m 0</parameter> option turns off the periodic timestamp mark that @@ -574,11 +574,11 @@ EOF</userinput></screen> <sect2 id="ch-config-site"> <title>The rc.site File</title> - + <indexterm zone="ch-config-site"> <primary sortas="a-rc.site">rc.site</primary> </indexterm> - + <para>The optional <filename>/etc/sysconfig/rc.site</filename> file contains settings that are automatically set for each SystemV boot script. It can alternatively set the values specified in the <filename>hostname</filename>, @@ -587,33 +587,33 @@ EOF</userinput></screen> associated variables are present in both these separate files and <filename>rc.site</filename>, the values in the script specific files have precedence. </para> - + <para><filename>rc.site</filename> also contains parameters that can customize other aspects of the boot process. Setting the IPROMPT variable will enable selective running of bootscripts. Other options are described in the file comments. The default version of the file is as follows:</para> - + <!-- Use role to fix a pdf generation problem --> <screen role="auto">&site;</screen> - + <sect3> <title>Customizing the Boot and Shutdown Scripts</title> - + <para>The LFS boot scripts boot and shut down a system in a fairly efficient manner, but there are a few tweaks that you can make in the rc.site file to improve speed even more and to adjust messages according to your preferences. To do this, adjust the settings in the <filename>/etc/sysconfig/rc.site</filename> file above.</para> - + <itemizedlist> - + <listitem><para>During the boot script <filename>udev</filename>, there is a call to <command>udev settle</command> that requires some time to complete. This time may or may not be required depending on devices present in the system. If you only have simple partitions and a single ethernet card, the boot process will probably not need to wait for this command. To skip it, set the variable OMIT_UDEV_SETTLE=y.</para></listitem> - + <listitem><para>The boot script <filename>udev_retry</filename> also runs <command>udev settle</command> by default. This command is only needed by default if the <filename class='directory'>/var</filename> directory is @@ -622,12 +622,12 @@ EOF</userinput></screen> also need to wait for udev to complete, but in many installations it is not needed. Skip the command by setting the variable OMIT_UDEV_RETRY_SETTLE=y. </para></listitem> - + <listitem><para>By default, the file system checks are silent. This can appear to be a delay during the bootup process. To turn on the <command>fsck</command> output, set the variable VERBOSE_FSCK=y. </para></listitem> - + <listitem><para>When rebooting, you may want to skip the filesystem check, <command>fsck</command>, completely. To do this, either create the file <filename>/fastboot</filename> or reboot the system with the command @@ -636,17 +636,17 @@ EOF</userinput></screen> <filename>/forcefsck</filename> or running <command>shutdown</command> with the <parameter>-F</parameter> parameter instead of <parameter>-f</parameter>. </para> - + <para>Setting the variable FASTBOOT=y will disable <command>fsck</command> during the boot process until it is removed. This is not recommended on a permanent basis.</para></listitem> - + <listitem><para>Normally, all files in the <filename class='directory'>/tmp</filename> directory are deleted at boot time. Depending on the number of files or directories present, this can cause a noticeable delay in the boot process. To skip removing these files set the variable SKIPTMPCLEAN=y.</para></listitem> - + <listitem><para>During shutdown, the <command>init</command> program sends a TERM signal to each program it has started (e.g. agetty), waits for a set time (default 3 seconds), and sends each process a KILL signal and waits @@ -658,9 +658,9 @@ EOF</userinput></screen> -t0 -r now</command>). The delay for the <command>sendsignals</command> script can be skipped by setting the parameter KILLDELAY=0.</para></listitem> - + </itemizedlist> - + </sect3> </sect2> </sect1> diff --git a/chapter10/grub.xml b/chapter10/grub.xml index f76605f49..c32783e9a 100644 --- a/chapter10/grub.xml +++ b/chapter10/grub.xml @@ -42,8 +42,8 @@ url="&blfs-book;multimedia/libisoburn.html"> libisoburn</ulink> package.</para> -<screen role="nodump"><userinput>cd /tmp -grub-mkrescue --output=grub-img.iso +<screen role="nodump"><userinput>cd /tmp +grub-mkrescue --output=grub-img.iso xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.iso</userinput></screen> </sect2> diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml index 1a2861856..fcc5d10b3 100644 --- a/chapter10/kernel.xml +++ b/chapter10/kernel.xml @@ -97,7 +97,6 @@ <ulink url="http://www.kroah.com/lkn/"/> </para> <note> - <para>A good starting place for setting up the kernel configuration is to run <command>make defconfig</command>. This will set the base configuration to a good state that takes your current system architecture @@ -115,7 +114,7 @@ [ ] Auditing Support [CONFIG_AUDIT] [*] Control Group support [CONFIG_CGROUPS] [ ] Enable deprecated sysfs features to support old userspace tools [CONFIG_SYSFS_DEPRECATED] - [*] Configure standard kernel features (expert users) [CONFIG_EXPERT] ---> + [*] Configure standard kernel features (expert users) [CONFIG_EXPERT] ---> [*] open by fhandle syscalls [CONFIG_FHANDLE] Processor type and features ---> [*] Enable seccomp to safely compute untrusted bytecode [CONFIG_SECCOMP] @@ -264,11 +263,11 @@ cp -r Documentation/* /usr/share/doc/linux-&linux-version;</userinput></screen> source.</para> <note> - <para>In many cases, the configuration of the kernel will need to be + <para>In many cases, the configuration of the kernel will need to be updated for packages that will be installed later in BLFS. Unlike other packages, it is not necessary to remove the kernel source tree - after the newly built kernel is installed.</para> - + after the newly built kernel is installed.</para> + <para>If the kernel source tree is going to be retained, run <command>chown -R 0:0</command> on the <filename class="directory">linux-&linux-version;</filename> directory to ensure diff --git a/chapter11/reboot.xml b/chapter11/reboot.xml index b059564cd..e2f0e0c59 100644 --- a/chapter11/reboot.xml +++ b/chapter11/reboot.xml @@ -56,7 +56,7 @@ <listitem><para>If you want to access your new system from a remote system within a comfortable GUI environment, install <ulink revision="sysv" url='&blfs-book;postlfs/openssh.html'>openssh</ulink><ulink revision="systemd" - url='&blfs-systemd-book;postlfs/openssh.html'>openssh</ulink>. + url='&blfs-systemd-book;postlfs/openssh.html'>openssh</ulink>. </para></listitem> <listitem><para>To make fetching files over the internet easier, install |