From fcc027677da55c41dcaea045f5b9ff8b088e6495 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Sun, 7 Jun 2020 20:16:00 +0000 Subject: Initial commit of alternative cross LFS git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter10/chapter10.xml | 19 +++ chapter10/fstab.xml | 125 ++++++++++++++ chapter10/grub.xml | 191 +++++++++++++++++++++ chapter10/introduction.xml | 18 ++ chapter10/kernel.xml | 403 +++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 756 insertions(+) create mode 100644 chapter10/chapter10.xml create mode 100644 chapter10/fstab.xml create mode 100644 chapter10/grub.xml create mode 100644 chapter10/introduction.xml create mode 100644 chapter10/kernel.xml (limited to 'chapter10') diff --git a/chapter10/chapter10.xml b/chapter10/chapter10.xml new file mode 100644 index 000000000..d7236b21c --- /dev/null +++ b/chapter10/chapter10.xml @@ -0,0 +1,19 @@ + + + %general-entities; +]> + + + + + + Making the LFS System Bootable + + + + + + + diff --git a/chapter10/fstab.xml b/chapter10/fstab.xml new file mode 100644 index 000000000..ebfae3aaf --- /dev/null +++ b/chapter10/fstab.xml @@ -0,0 +1,125 @@ + + + %general-entities; +]> + + + + + Creating the /etc/fstab File + + + /etc/fstab + + + The /etc/fstab file is used by some programs to + determine where file systems are to be mounted by default, in which order, and + which must be checked (for integrity errors) prior to mounting. Create a new + file systems table like this: + +cat > /etc/fstab << "EOF" +# Begin /etc/fstab + +# file system mount-point type options dump fsck +# order + +/dev/<xxx> / <fff> defaults 1 1 +/dev/<yyy> swap swap pri=1 0 0 +proc /proc proc nosuid,noexec,nodev 0 0 +sysfs /sys sysfs nosuid,noexec,nodev 0 0 +devpts /dev/pts devpts gid=5,mode=620 0 0 +tmpfs /run tmpfs defaults 0 0 +devtmpfs /dev devtmpfs mode=0755,nosuid 0 0 + +# End /etc/fstab +EOF + +cat > /etc/fstab << "EOF" +# Begin /etc/fstab + +# file system mount-point type options dump fsck +# order + +/dev/<xxx> / <fff> defaults 1 1 +/dev/<yyy> swap swap pri=1 0 0 + +# End /etc/fstab +EOF + + Replace <xxx>, + <yyy>, and <fff> + with the values appropriate for the system, for example, sda2, sda5, and ext4. For details on the six + fields in this file, see man 5 fstab. + + Filesystems with MS-DOS or Windows origin (i.e. vfat, ntfs, smbfs, + cifs, iso9660, udf) need a special option, utf8, in order for non-ASCII + characters in file names to be interpreted properly. For non-UTF-8 locales, + the value of should be set to be the same as the + character set of the locale, adjusted in such a way that the kernel + understands it. This works if the relevant character set definition (found + under File systems -> Native Language Support when configuring the kernel) + has been compiled into the kernel or built as a module. However, if the + character set of the locale is UTF-8, the corresponding option + would make the file system case sensitive. To + fix this, use the special option instead of + , for UTF-8 locales. The + codepage option is also needed for vfat and smbfs filesystems. + It should be set to the codepage number used under MS-DOS in your country. + For example, in order to mount USB flash drives, a ru_RU.KOI8-R user would + need the following in the options portion of its mount line in + /etc/fstab: + +noauto,user,quiet,showexec,codepage=866,iocharset=koi8r + + The corresponding options fragment for ru_RU.UTF-8 users is: + +noauto,user,quiet,showexec,codepage=866,utf8 + + Note that using is the default for + iso8859-1 (which keeps the file system case + insensitive), and the option tells + the kernel to convert the file names using UTF-8 so they can be + interpreted in the UTF-8 locale. + + + + It is also possible to specify default codepage and iocharset values for + some filesystems during kernel configuration. The relevant parameters + are named + Default NLS Option (, + Default Remote NLS Option (), + Default codepage for FAT (), and + Default iocharset for FAT (). + There is no way to specify these settings for the + ntfs filesystem at kernel compilation time. + + It is possible to make the ext3 filesystem reliable across power + failures for some hard disk types. To do this, add the + mount option to the appropriate entry in + /etc/fstab. To check if the disk drive supports + this option, run + hdparm + on the applicable disk drive. For example, if: + +hdparm -I /dev/sda | grep NCQ + + returns non-empty output, the option is supported. + + Note: Logical Volume Management (LVM) based partitions cannot use the + option. + + diff --git a/chapter10/grub.xml b/chapter10/grub.xml new file mode 100644 index 000000000..d6897d5e5 --- /dev/null +++ b/chapter10/grub.xml @@ -0,0 +1,191 @@ + + + %general-entities; +]> + + + + + + grub + &grub-version; +
&grub-url;
+
+ + Using GRUB to Set Up the Boot Process + + + Introduction + + Configuring GRUB incorrectly can render your system + inoperable without an alternate boot device such as a CD-ROM. This + section is not required to boot your LFS system. You may just + want to modify your current boot loader, e.g. Grub-Legacy, GRUB2, or + LILO. + + + Ensure that an emergency boot disk is ready to rescue + the computer if the computer becomes unusable (un-bootable). If you do not + already have a boot device, you can create one. In order for the procedure + below to work, you need to jump ahead to BLFS and install + xorriso from the + libisoburn package. + +cd /tmp +grub-mkrescue --output=grub-img.iso +xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.iso + + + + To boot LFS on host systems that have UEFI enabled, the kernel needs to + have been built with the CONFIG_EFI_STUB capabality described in the + previous section. However, LFS can be booted using GRUB2 without such + an addition. To do this, the UEFI Mode and Secure Boot capabilities in + the host system's BIOS need to be turned off. For details, see + the lfs-uefi.txt hint at + &hints-root;lfs-uefi.txt. + + + + + + + GRUB Naming Conventions + + GRUB uses its own naming structure for drives and partitions in + the form of (hdn,m), where n + is the hard drive number and m is the partition + number. The hard drive number starts from zero, but the partition number + starts from one for normal partitions and five for extended partitions. + Note that this is different from earlier versions where + both numbers started from zero. For example, partition sda1 is (hd0,1) to + GRUB and sdb3 is + (hd1,3). In contrast to Linux, GRUB does not + consider CD-ROM drives to be hard drives. For example, if using a CD + on hdb and a second hard drive + on hdc, that second hard drive + would still be (hd1). + + + + + Setting Up the Configuration + + GRUB works by writing data to the first physical track of the + hard disk. This area is not part of any file system. The programs + there access GRUB modules in the boot partition. The default location + is /boot/grub/. + + The location of the boot partition is a choice of the user that + affects the configuration. One recommendation is to have a separate small + (suggested size is 100 MB) partition just for boot information. That way + each build, whether LFS or some commercial distro, can access the same boot + files and access can be made from any booted system. If you choose to do + this, you will need to mount the separate partition, move all files in the + current /boot directory (e.g. the + linux kernel you just built in the previous section) to the new partition. + You will then need to unmount the partition and remount it as /boot. If you do this, be sure to update + /etc/fstab. + + Using the current lfs partition will also work, but configuration + for multiple systems is more difficult. + + Using the above information, determine the appropriate + designator for the root partition (or boot partition, if a separate + one is used). For the following example, it is assumed that the root + (or separate boot) partition is sda2. + + Install the GRUB files into /boot/grub and set up the boot track: + + + The following command will overwrite the current boot loader. Do not + run the command if this is not desired, for example, if using a third party + boot manager to manage the Master Boot Record (MBR). + + +grub-install /dev/sda + + + If the system has been booted using UEFI, + grub-install will try to install files for the + x86_64-efi target, but those files + have not been installed in chapter 6. If this is the case, add + to the command above. + + + + + + + Creating the GRUB Configuration File + + Generate /boot/grub/grub.cfg: + + cat > /boot/grub/grub.cfg << "EOF" +# Begin /boot/grub/grub.cfg +set default=0 +set timeout=5 + +insmod ext2 +set root=(hd0,2) + +menuentry "GNU/Linux, Linux &linux-version;-lfs-&version;" { + linux /boot/vmlinuz-&linux-version;-lfs-&version; root=/dev/sda2 ro +} +EOF + + cat > /boot/grub/grub.cfg << "EOF" +# Begin /boot/grub/grub.cfg +set default=0 +set timeout=5 + +insmod ext2 +set root=(hd0,2) + +menuentry "GNU/Linux, Linux &linux-version;-lfs-&versiond;" { + linux /boot/vmlinuz-&linux-version;-lfs-&versiond; root=/dev/sda2 ro +} +EOF + + + From GRUB's perspective, the + kernel files are relative to the partition used. If you + used a separate /boot partition, remove /boot from the above + linux line. You will also need to change the + set root line to point to the boot partition. + + + GRUB is an extremely powerful program and it provides a tremendous + number of options for booting from a wide variety of devices, operating + systems, and partition types. There are also many options for customization + such as graphical splash screens, playing sounds, mouse input, etc. The + details of these options are beyond the scope of this introduction. + + There is a command, grub-mkconfig, that + can write a configuration file automatically. It uses a set of scripts in + /etc/grub.d/ and will destroy any customizations that you make. These scripts + are designed primarily for non-source distributions and are not recommended for + LFS. If you install a commercial Linux distribution, there is a good chance + that this program will be run. Be sure to back up your grub.cfg file. + + + +
diff --git a/chapter10/introduction.xml b/chapter10/introduction.xml new file mode 100644 index 000000000..5cb40b882 --- /dev/null +++ b/chapter10/introduction.xml @@ -0,0 +1,18 @@ + + + %general-entities; +]> + + + + + Introduction + + It is time to make the LFS system bootable. This chapter + discusses creating an fstab file, building a + kernel for the new LFS system, and installing the GRUB boot loader so + that the LFS system can be selected for booting at startup. + + diff --git a/chapter10/kernel.xml b/chapter10/kernel.xml new file mode 100644 index 000000000..0033028cf --- /dev/null +++ b/chapter10/kernel.xml @@ -0,0 +1,403 @@ + + + %general-entities; +]> + + + + + + kernel + &linux-version; +
&linux-url;
+
+ + Linux-&linux-version; + + + Linux + + + + + + <para>The Linux package contains the Linux kernel.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&linux-ch8-sbu;</seg> + <seg>&linux-ch8-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>Installation of the kernel + + Building the kernel involves a few steps—configuration, + compilation, and installation. Read the README file + in the kernel source tree for alternative methods to the way this book + configures the kernel. + + Prepare for compilation by running the following command: + +make mrproper + + This ensures that the kernel tree is absolutely clean. The + kernel team recommends that this command be issued prior to each + kernel compilation. Do not rely on the source tree being clean after + un-tarring. + + + + Configure the kernel via a menu-driven interface. For general + information on kernel configuration see . BLFS has some information + regarding particular kernel configuration requirements of packages outside + of LFS at . Additional + information about configuring and building the kernel can be found at + + + + + A good starting place for setting up the kernel configuration is to + run make defconfig. This will set the base + configuration to a good state that takes your current system architecture + into account. + + Be sure to enable/disable/set the following features or the system might + not work correctly or boot at all: + + +Device Drivers ---> + Generic Driver Options ---> + [ ] Support for uevent helper [CONFIG_UEVENT_HELPER] + [*] Maintain a devtmpfs filesystem to mount at /dev [CONFIG_DEVTMPFS] + +Kernel hacking ---> + Choose kernel unwinder (Frame pointer unwinder) ---> [CONFIG_UNWINDER_FRAME_POINTER] + + +General setup --> + [*] 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] ---> + [*] open by fhandle syscalls [CONFIG_FHANDLE] + [ ] Auditing support [CONFIG_AUDIT] +Processor type and features ---> + [*] Enable seccomp to safely compute untrusted bytecode [CONFIG_SECCOMP] +Firmware Drivers ---> + [*] Export DMI identification via sysfs to userspace [CONFIG_DMIID] +Networking support ---> + Networking options ---> + <*> The IPv6 protocol [CONFIG_IPV6] +Device Drivers ---> + Generic Driver Options ---> + [ ] Support for uevent helper [CONFIG_UEVENT_HELPER] + [*] Maintain a devtmpfs filesystem to mount at /dev [CONFIG_DEVTMPFS] + Firmware Loader ---> + [ ] Enable the firmware sysfs fallback mechanism [CONFIG_FW_LOADER_USER_HELPER] +File systems ---> + [*] Inotify support for userspace [CONFIG_INOTIFY_USER] + <*> Kernel automounter support (supports v3, v4, and v5) [CONFIG_AUTOFS_FS] + Pseudo filesystems ---> + [*] Tmpfs POSIX Access Control Lists [CONFIG_TMPFS_POSIX_ACL] + [*] Tmpfs extended attributes [CONFIG_TMPFS_XATTR] + + + + While "The IPv6 Protocol" is not strictly + required, it is highly recommended by the systemd developers. + + + There are several other options that may be desired + depending on the requirements for the system. For a list of options needed + for BLFS packages, see the BLFS + Index of Kernel Settings + (&lfs-root;blfs/view/&short-version;/longindex.html#kernel-config-index). + + + If your host hardware is using UEFI, then the 'make defconfig' + above should automatically add in some EFI-related kernel options. + + In order to allow your LFS kernel to be booted from within your + host's UEFI boot environment, your kernel must have this option + selected: + +Processor type and features ---> + [*] EFI stub support [CONFIG_EFI_STUB] + + A fuller description of managing UEFI environments from within LFS + is covered by the lfs-uefi.txt hint at + . + + + + + The rationale for the above configuration items: + + + Support for uevent helper + + Having this option set may interfere with device + management when using Udev/Eudev. + + + + + Maintain a devtmpfs + + This will create automated device nodes which are populated by the + kernel, even without Udev running. Udev then runs on top of this, + managing permissions and adding symlinks. This configuration + item is required for all users of Udev/Eudev. + + + + + +make menuconfig + + + The meaning of optional make environment variables: + + + LANG=<host_LANG_value> LC_ALL= + + This establishes the locale setting to the one used on the + host. This may be needed for a proper menuconfig ncurses interface + line drawing on a UTF-8 linux text console. + + If used, be sure to replace + <host_LANG_value> by the value of + the $LANG variable from your host. You can + alternatively use instead the host's value of $LC_ALL + or $LC_CTYPE. + + + + + + Alternatively, make oldconfig may be more + appropriate in some situations. See the README + file for more information. + + If desired, skip kernel configuration by copying the kernel + config file, .config, from the host system + (assuming it is available) to the unpacked linux-&linux-version; directory. However, + we do not recommend this option. It is often better to explore all the + configuration menus and create the kernel configuration from + scratch. + + Compile the kernel image and modules: + +make + + If using kernel modules, module configuration in /etc/modprobe.d may be required. + Information pertaining to modules and kernel configuration is + located in and in the kernel + documentation in the linux-&linux-version;/Documentation directory. + Also, modprobe.d(5) may be of interest. + + Unless module support has been disabled in the kernel configuration, + install the modules with: + +make modules_install + + After kernel compilation is complete, additional steps are + required to complete the installation. Some files need to be copied to + the /boot directory. + + + If the host system has a separate /boot partition, the files copied + below should go there. The easiest way to do that is to bind /boot on the + host (outside chroot) to /mnt/lfs/boot before proceeding. As the root + user in the host system: + +mount --bind /boot /mnt/lfs/boot + + + The path to the kernel image may vary depending on the platform being + used. The filename below can be changed to suit your taste, but the stem of + the filename should be vmlinuz to be compatible with + the automatic setup of the boot process described in the next section. The + following command assumes an x86 architecture: + +cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&version; + +cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&versiond; + + System.map is a symbol file for the kernel. + It maps the function entry points of every function in the kernel API, + as well as the addresses of the kernel data structures for the running + kernel. It is used as a resource when investigating kernel problems. + Issue the following command to install the map file: + +cp -iv System.map /boot/System.map-&linux-version; + + The kernel configuration file .config + produced by the make menuconfig step + above contains all the configuration selections for the kernel + that was just compiled. It is a good idea to keep this file for future + reference: + +cp -iv .config /boot/config-&linux-version; + + Install the documentation for the Linux kernel: + +install -d /usr/share/doc/linux-&linux-version; +cp -r Documentation/* /usr/share/doc/linux-&linux-version; + + It is important to note that the files in the kernel source + directory are not owned by root. Whenever a + package is unpacked as user root (like we did + inside chroot), the files have the user and group IDs of whatever + they were on the packager's computer. This is usually not a problem + for any other package to be installed because the source tree is + removed after the installation. However, the Linux source tree is + often retained for a long time. Because of this, there is a chance + that whatever user ID the packager used will be assigned to somebody + on the machine. That person would then have write access to the kernel + source. + + + 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. + + If the kernel source tree is going to be retained, run + chown -R 0:0 on the linux-&linux-version; directory to ensure + all files are owned by user root. + + + + Some kernel documentation recommends creating a symlink from + /usr/src/linux pointing to the kernel + source directory. This is specific to kernels prior to the 2.6 series and + must not be created on an LFS system as it can cause + problems for packages you may wish to build once your base LFS system is + complete. + + + + The headers in the system's include directory (/usr/include) should + always be the ones against which Glibc was compiled, + that is, the sanitised headers installed in . Therefore, they should + never be replaced by either the raw kernel headers + or any other kernel sanitized headers. + + + + + + Configuring Linux Module Load Order + + + /etc/modprobe.d/usb.conf + + + Most of the time Linux modules are loaded automatically, but + sometimes it needs some specific direction. The program that loads + modules, modprobe or insmod, uses + /etc/modprobe.d/usb.conf for this purpose. This file + needs to be created so that if the USB drivers (ehci_hcd, ohci_hcd and + uhci_hcd) have been built as modules, they will be loaded in the correct + order; ehci_hcd needs to be loaded prior to ohci_hcd and uhci_hcd in order + to avoid a warning being output at boot time. + + Create a new file /etc/modprobe.d/usb.conf by running + the following: + +install -v -m755 -d /etc/modprobe.d +cat > /etc/modprobe.d/usb.conf << "EOF" +# Begin /etc/modprobe.d/usb.conf + +install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i ohci_hcd ; true +install uhci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i uhci_hcd ; true + +# End /etc/modprobe.d/usb.conf +EOF + + + + + Contents of Linux + + + Installed files + Installed directories + + + config-&linux-version;, + vmlinuz-&linux-version;-lfs-&version;, + vmlinuz-&linux-version;-lfs-&versiond;, + and System.map-&linux-version; + /lib/modules, /usr/share/doc/linux-&linux-version; + + + + + Short Descriptions + + + + + config-&linux-version; + + Contains all the configuration selections for the kernel + + /boot/config-&linux-version; + + + + + + vmlinuz-&linux-version;-lfs-&version; + vmlinuz-&linux-version;-lfs-&versiond; + + The engine of the Linux system. When turning on the computer, + the kernel is the first part of the operating system that gets loaded. + It detects and initializes all components of the computer's hardware, + then makes these components available as a tree of files to the + software and turns a single CPU into a multitasking machine capable + of running scores of programs seemingly at the same time + + lfskernel-&linux-version; + + + + + + System.map-&linux-version; + + A list of addresses and symbols; it maps the entry points and + addresses of all the functions and data structures in the + kernel + + /boot/System.map-&linux-version; + + + + + + + + +
-- cgit v1.2.3-54-g00ecf From fb386e05f17d44dc6322a1b3db172cc297ed5ce5 Mon Sep 17 00:00:00 2001 From: Thomas Trepl Date: Thu, 11 Jun 2020 12:55:28 +0000 Subject: Rename package entities to be independent of chapter numbering git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11921 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter05/binutils-pass1.xml | 4 +- chapter05/gcc-pass1.xml | 4 +- chapter05/glibc.xml | 4 +- chapter05/libstdc++.xml | 4 +- chapter05/linux-headers.xml | 4 +- chapter06/bash.xml | 4 +- chapter06/binutils-pass2.xml | 4 +- chapter06/coreutils.xml | 4 +- chapter06/diffutils.xml | 4 +- chapter06/file.xml | 4 +- chapter06/findutils.xml | 4 +- chapter06/gawk.xml | 4 +- chapter06/gcc-pass2.xml | 4 +- chapter06/grep.xml | 4 +- chapter06/gzip.xml | 4 +- chapter06/m4.xml | 4 +- chapter06/make.xml | 4 +- chapter06/ncurses.xml | 4 +- chapter06/patch.xml | 4 +- chapter06/sed.xml | 4 +- chapter06/tar.xml | 4 +- chapter06/xz.xml | 4 +- chapter07/bison.xml | 4 +- chapter07/dejagnu.xml | 4 +- chapter07/expect.xml | 4 +- chapter07/gettext.xml | 4 +- chapter07/libstdc++-pass2.xml | 4 +- chapter07/perl.xml | 4 +- chapter07/python.xml | 4 +- chapter07/stripping.xml | 2 +- chapter07/tcl.xml | 4 +- chapter07/texinfo.xml | 4 +- chapter07/util-linux.xml | 4 +- chapter08/acl.xml | 4 +- chapter08/attr.xml | 4 +- chapter08/autoconf.xml | 6 +- chapter08/automake.xml | 4 +- chapter08/bash.xml | 4 +- chapter08/bc.xml | 4 +- chapter08/binutils.xml | 4 +- chapter08/bison.xml | 4 +- chapter08/bzip2.xml | 4 +- chapter08/check.xml | 4 +- chapter08/coreutils.xml | 4 +- chapter08/dbus.xml | 4 +- chapter08/diffutils.xml | 4 +- chapter08/e2fsprogs.xml | 4 +- chapter08/eudev.xml | 4 +- chapter08/expat.xml | 4 +- chapter08/file.xml | 4 +- chapter08/findutils.xml | 4 +- chapter08/flex.xml | 4 +- chapter08/gawk.xml | 4 +- chapter08/gcc.xml | 4 +- chapter08/gdbm.xml | 4 +- chapter08/gettext.xml | 4 +- chapter08/glibc.xml | 4 +- chapter08/gmp.xml | 4 +- chapter08/gperf.xml | 4 +- chapter08/grep.xml | 4 +- chapter08/groff.xml | 4 +- chapter08/grub.xml | 4 +- chapter08/gzip.xml | 4 +- chapter08/iana-etc.xml | 4 +- chapter08/inetutils.xml | 4 +- chapter08/intltool.xml | 4 +- chapter08/iproute2.xml | 4 +- chapter08/kbd.xml | 4 +- chapter08/kmod.xml | 4 +- chapter08/less.xml | 4 +- chapter08/libcap.xml | 4 +- chapter08/libelf.xml | 4 +- chapter08/libffi.xml | 4 +- chapter08/libpipeline.xml | 4 +- chapter08/libtool.xml | 4 +- chapter08/m4.xml | 4 +- chapter08/make.xml | 4 +- chapter08/man-db.xml | 4 +- chapter08/man-pages.xml | 4 +- chapter08/meson.xml | 4 +- chapter08/mpc.xml | 4 +- chapter08/mpfr.xml | 4 +- chapter08/ncurses.xml | 4 +- chapter08/ninja.xml | 4 +- chapter08/openssl.xml | 4 +- chapter08/patch.xml | 4 +- chapter08/perl.xml | 4 +- chapter08/pkgconfig.xml | 4 +- chapter08/procps.xml | 4 +- chapter08/psmisc.xml | 4 +- chapter08/python.xml | 4 +- chapter08/readline.xml | 4 +- chapter08/sed.xml | 4 +- chapter08/shadow.xml | 4 +- chapter08/sysklogd.xml | 4 +- chapter08/systemd.xml | 4 +- chapter08/sysvinit.xml | 4 +- chapter08/tar.xml | 4 +- chapter08/texinfo.xml | 4 +- chapter08/util-linux.xml | 4 +- chapter08/vim.xml | 4 +- chapter08/xml-parser.xml | 4 +- chapter08/xz.xml | 4 +- chapter08/zlib.xml | 4 +- chapter08/zstd.xml | 4 +- chapter09/bootscripts.xml | 4 +- chapter10/kernel.xml | 4 +- packages.ent | 443 +++++++++++++++++++++--------------------- 108 files changed, 439 insertions(+), 432 deletions(-) (limited to 'chapter10') diff --git a/chapter05/binutils-pass1.xml b/chapter05/binutils-pass1.xml index 00816c94a..914e119b8 100644 --- a/chapter05/binutils-pass1.xml +++ b/chapter05/binutils-pass1.xml @@ -33,8 +33,8 @@ &diskspace; - &binutils-ch5p1-sbu; - &binutils-ch5p1-du; + &binutils-tmpp1-sbu; + &binutils-tmpp1-du; diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml index 2f8145713..e2a13a003 100644 --- a/chapter05/gcc-pass1.xml +++ b/chapter05/gcc-pass1.xml @@ -33,8 +33,8 @@ &diskspace; - &gcc-ch5p1-sbu; - &gcc-ch5p1-du; + &gcc-tmpp1-sbu; + &gcc-tmpp1-du; diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml index 361dd0e58..80d1638f5 100644 --- a/chapter05/glibc.xml +++ b/chapter05/glibc.xml @@ -33,8 +33,8 @@ &diskspace; - &glibc-ch5-sbu; - &glibc-ch5-du; + &glibc-tmp-sbu; + &glibc-tmp-du; diff --git a/chapter05/libstdc++.xml b/chapter05/libstdc++.xml index 5058be9a5..0153766c4 100644 --- a/chapter05/libstdc++.xml +++ b/chapter05/libstdc++.xml @@ -37,8 +37,8 @@ &diskspace; - &libstdcpp-ch5-sbu; - &libstdcpp-ch5-du; + &libstdcpp-tmp-sbu; + &libstdcpp-tmp-du; diff --git a/chapter05/linux-headers.xml b/chapter05/linux-headers.xml index 6c1af3173..213fe7dc3 100644 --- a/chapter05/linux-headers.xml +++ b/chapter05/linux-headers.xml @@ -32,8 +32,8 @@ &diskspace; - &linux-headers-ch5-sbu; - &linux-headers-ch5-du; + &linux-headers-tmp-sbu; + &linux-headers-tmp-du; diff --git a/chapter06/bash.xml b/chapter06/bash.xml index bc0b211af..6cb1dc728 100644 --- a/chapter06/bash.xml +++ b/chapter06/bash.xml @@ -33,8 +33,8 @@ &diskspace; - &bash-ch5-sbu; - &bash-ch5-du; + &bash-tmp-sbu; + &bash-tmp-du; diff --git a/chapter06/binutils-pass2.xml b/chapter06/binutils-pass2.xml index d88bb84e2..5ccff98d8 100644 --- a/chapter06/binutils-pass2.xml +++ b/chapter06/binutils-pass2.xml @@ -33,8 +33,8 @@ &diskspace; - &binutils-ch5p2-sbu; - &binutils-ch5p2-du; + &binutils-tmpp2-sbu; + &binutils-tmpp2-du; diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml index 3ae765e85..fe036755e 100644 --- a/chapter06/coreutils.xml +++ b/chapter06/coreutils.xml @@ -33,8 +33,8 @@ &diskspace; - &coreutils-ch5-sbu; - &coreutils-ch5-du; + &coreutils-tmp-sbu; + &coreutils-tmp-du; diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml index 6594058be..af4d95429 100644 --- a/chapter06/diffutils.xml +++ b/chapter06/diffutils.xml @@ -33,8 +33,8 @@ &diskspace; - &diffutils-ch5-sbu; - &diffutils-ch5-du; + &diffutils-tmp-sbu; + &diffutils-tmp-du; diff --git a/chapter06/file.xml b/chapter06/file.xml index a13553b19..2506f4432 100644 --- a/chapter06/file.xml +++ b/chapter06/file.xml @@ -33,8 +33,8 @@ &diskspace; - &file-ch5-sbu; - &file-ch5-du; + &file-tmp-sbu; + &file-tmp-du; diff --git a/chapter06/findutils.xml b/chapter06/findutils.xml index bf9f9c62a..e6a19202b 100644 --- a/chapter06/findutils.xml +++ b/chapter06/findutils.xml @@ -33,8 +33,8 @@ &diskspace; - &findutils-ch5-sbu; - &findutils-ch5-du; + &findutils-tmp-sbu; + &findutils-tmp-du; diff --git a/chapter06/gawk.xml b/chapter06/gawk.xml index 105abdb8e..efe7b4380 100644 --- a/chapter06/gawk.xml +++ b/chapter06/gawk.xml @@ -33,8 +33,8 @@ &diskspace; - &gawk-ch5-sbu; - &gawk-ch5-du; + &gawk-tmp-sbu; + &gawk-tmp-du; diff --git a/chapter06/gcc-pass2.xml b/chapter06/gcc-pass2.xml index a5b7f1a26..532a8e8b4 100644 --- a/chapter06/gcc-pass2.xml +++ b/chapter06/gcc-pass2.xml @@ -33,8 +33,8 @@ &diskspace; - &gcc-ch5p2-sbu; - &gcc-ch5p2-du; + &gcc-tmpp2-sbu; + &gcc-tmpp2-du; diff --git a/chapter06/grep.xml b/chapter06/grep.xml index 6a8ada4b8..494b8616d 100644 --- a/chapter06/grep.xml +++ b/chapter06/grep.xml @@ -33,8 +33,8 @@ &diskspace; - &grep-ch5-sbu; - &grep-ch5-du; + &grep-tmp-sbu; + &grep-tmp-du; diff --git a/chapter06/gzip.xml b/chapter06/gzip.xml index e5b5d0a37..90d554b0d 100644 --- a/chapter06/gzip.xml +++ b/chapter06/gzip.xml @@ -33,8 +33,8 @@ &diskspace; - &gzip-ch5-sbu; - &gzip-ch5-du; + &gzip-tmp-sbu; + &gzip-tmp-du; diff --git a/chapter06/m4.xml b/chapter06/m4.xml index 79559f6da..7a28a08cc 100644 --- a/chapter06/m4.xml +++ b/chapter06/m4.xml @@ -33,8 +33,8 @@ &diskspace; - &m4-ch5-sbu; - &m4-ch5-du; + &m4-tmp-sbu; + &m4-tmp-du; diff --git a/chapter06/make.xml b/chapter06/make.xml index fef5555aa..cf0dbce18 100644 --- a/chapter06/make.xml +++ b/chapter06/make.xml @@ -32,8 +32,8 @@ &diskspace; - &make-ch5-sbu; - &make-ch5-du; + &make-tmp-sbu; + &make-tmp-du; diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml index d96d7d0f3..83499f2eb 100644 --- a/chapter06/ncurses.xml +++ b/chapter06/ncurses.xml @@ -33,8 +33,8 @@ &diskspace; - &ncurses-ch5-sbu; - &ncurses-ch5-du; + &ncurses-tmp-sbu; + &ncurses-tmp-du; diff --git a/chapter06/patch.xml b/chapter06/patch.xml index ecd5b2c47..7032d6eea 100644 --- a/chapter06/patch.xml +++ b/chapter06/patch.xml @@ -33,8 +33,8 @@ &diskspace; - &patch-ch5-sbu; - &patch-ch5-du; + &patch-tmp-sbu; + &patch-tmp-du; diff --git a/chapter06/sed.xml b/chapter06/sed.xml index f146b5102..d079f836d 100644 --- a/chapter06/sed.xml +++ b/chapter06/sed.xml @@ -33,8 +33,8 @@ &diskspace; - &sed-ch5-sbu; - &sed-ch5-du; + &sed-tmp-sbu; + &sed-tmp-du; diff --git a/chapter06/tar.xml b/chapter06/tar.xml index e64379fc5..8a82cff5c 100644 --- a/chapter06/tar.xml +++ b/chapter06/tar.xml @@ -33,8 +33,8 @@ &diskspace; - &tar-ch5-sbu; - &tar-ch5-du; + &tar-tmp-sbu; + &tar-tmp-du; diff --git a/chapter06/xz.xml b/chapter06/xz.xml index 428053ed1..f8d397d1b 100644 --- a/chapter06/xz.xml +++ b/chapter06/xz.xml @@ -33,8 +33,8 @@ &diskspace; - &xz-ch5-sbu; - &xz-ch5-du; + &xz-tmp-sbu; + &xz-tmp-du; diff --git a/chapter07/bison.xml b/chapter07/bison.xml index 4e794eb44..a3718bf19 100644 --- a/chapter07/bison.xml +++ b/chapter07/bison.xml @@ -33,8 +33,8 @@ &diskspace; - &bison-ch5-sbu; - &bison-ch5-du; + &bison-tmp-sbu; + &bison-tmp-du; diff --git a/chapter07/dejagnu.xml b/chapter07/dejagnu.xml index 727173d0e..da6a44aa9 100644 --- a/chapter07/dejagnu.xml +++ b/chapter07/dejagnu.xml @@ -32,8 +32,8 @@ &diskspace; - &dejagnu-ch5-sbu; - &dejagnu-ch5-du; + &dejagnu-tmp-sbu; + &dejagnu-tmp-du; diff --git a/chapter07/expect.xml b/chapter07/expect.xml index 7e59bda8b..e73676857 100644 --- a/chapter07/expect.xml +++ b/chapter07/expect.xml @@ -38,8 +38,8 @@ &diskspace; - &expect-ch5-sbu; - &expect-ch5-du; + &expect-tmp-sbu; + &expect-tmp-du; diff --git a/chapter07/gettext.xml b/chapter07/gettext.xml index a8f5be287..12a8b5cfd 100644 --- a/chapter07/gettext.xml +++ b/chapter07/gettext.xml @@ -33,8 +33,8 @@ &diskspace; - &gettext-ch5-sbu; - &gettext-ch5-du; + &gettext-tmp-sbu; + &gettext-tmp-du; diff --git a/chapter07/libstdc++-pass2.xml b/chapter07/libstdc++-pass2.xml index a10309f4b..a98bfb282 100644 --- a/chapter07/libstdc++-pass2.xml +++ b/chapter07/libstdc++-pass2.xml @@ -35,8 +35,8 @@ &diskspace; - &libstdcpp-ch5-sbu; - &libstdcpp-ch5-du; + &libstdcpp-tmp-sbu; + &libstdcpp-tmp-du; diff --git a/chapter07/perl.xml b/chapter07/perl.xml index 62b7f4e12..d282fb4ba 100644 --- a/chapter07/perl.xml +++ b/chapter07/perl.xml @@ -33,8 +33,8 @@ &diskspace; - &perl-ch5-sbu; - &perl-ch5-du; + &perl-tmp-sbu; + &perl-tmp-du; diff --git a/chapter07/python.xml b/chapter07/python.xml index 17af90999..9354bb99e 100644 --- a/chapter07/python.xml +++ b/chapter07/python.xml @@ -33,8 +33,8 @@ &diskspace; - &python-ch5-sbu; - &python-ch5-du; + &python-tmp-sbu; + &python-tmp-du; diff --git a/chapter07/stripping.xml b/chapter07/stripping.xml index 88b44b883..2f62fd5f2 100644 --- a/chapter07/stripping.xml +++ b/chapter07/stripping.xml @@ -140,7 +140,7 @@ tar -cJpf $HOME/temp-tools.tar.xz . In case some mistakes have been made and you need to start over, you can - use this backup to restore the temporary tools and save some irecovery time. + use this backup to restore the temporary tools and save some recovery time. Since the sources are located under $LFS, they are included in the backup archive as well, so you need not to download them again. After diff --git a/chapter07/tcl.xml b/chapter07/tcl.xml index d64852d43..39219b06b 100644 --- a/chapter07/tcl.xml +++ b/chapter07/tcl.xml @@ -34,8 +34,8 @@ &diskspace; - &tcl-ch5-sbu; - &tcl-ch5-du; + &tcl-tmp-sbu; + &tcl-tmp-du; diff --git a/chapter07/texinfo.xml b/chapter07/texinfo.xml index b58c701e6..3ce3d08b9 100644 --- a/chapter07/texinfo.xml +++ b/chapter07/texinfo.xml @@ -33,8 +33,8 @@ &diskspace; - &texinfo-ch5-sbu; - &texinfo-ch5-du; + &texinfo-tmp-sbu; + &texinfo-tmp-du; diff --git a/chapter07/util-linux.xml b/chapter07/util-linux.xml index f9401c03a..05698ae66 100644 --- a/chapter07/util-linux.xml +++ b/chapter07/util-linux.xml @@ -31,8 +31,8 @@ &diskspace; - &util-linux-ch5-sbu; - &util-linux-ch5-du; + &util-linux-tmp-sbu; + &util-linux-tmp-du; diff --git a/chapter08/acl.xml b/chapter08/acl.xml index f9f2eddbe..03f057cb3 100644 --- a/chapter08/acl.xml +++ b/chapter08/acl.xml @@ -32,8 +32,8 @@ &diskspace; - &acl-ch6-sbu; - &acl-ch6-du; + &acl-fin-sbu; + &acl-fin-du; diff --git a/chapter08/attr.xml b/chapter08/attr.xml index 10c6eec53..0033ae58f 100644 --- a/chapter08/attr.xml +++ b/chapter08/attr.xml @@ -31,8 +31,8 @@ &diskspace; - &attr-ch6-sbu; - &attr-ch6-du; + &attr-fin-sbu; + &attr-fin-du; diff --git a/chapter08/autoconf.xml b/chapter08/autoconf.xml index 6652747fd..c490a3994 100644 --- a/chapter08/autoconf.xml +++ b/chapter08/autoconf.xml @@ -31,8 +31,8 @@ &diskspace; - &autoconf-ch6-sbu; - &autoconf-ch6-du; + &autoconf-fin-sbu; + &autoconf-fin-du; @@ -59,7 +59,7 @@ make check + Allowed deviation in disk usage : 2% + + Suffixes: + *-tmp-* Package info for Temporary Tools + *-fin-* Package info for Final System + *-cfg-* Package info for System Configuration + *-knl-* Package info for Kernel stuff +--> - - + + - - + + - - - + + + @@ -37,58 +44,58 @@ - - + + - - - - + + + + - - + + - - - - - - + + + + + + - - - - + + + + - - - - + + + + @@ -105,75 +112,75 @@ - - + + - - - - + + + + - - + + - - + + - - - - + + + + - - + + - - + + - - + + - - + + @@ -181,60 +188,60 @@ - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - + + + + + + @@ -243,36 +250,36 @@ - - + + - - + + - - - - + + + + - - - - + + + + @@ -280,148 +287,148 @@ - - + + - - + + - - - - + + + + - - + + - - + + - - - - + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -435,143 +442,143 @@ - - + + - - - - + + + + - - - - + + + + - - - - + + + + - - + + - - + + - - + + - - + + - - + + - - - - + + + + - - + + - - + + - - - - + + + + - - - - + + + + - - + + - - + + - - + + @@ -582,10 +589,10 @@ - - - - + + + + @@ -595,34 +602,34 @@ - - + + - - - - + + + + - - + + - - + + @@ -637,26 +644,26 @@ - - + + - - + + - - - - + + + + @@ -664,18 +671,18 @@ - - + + - - - - + + + + @@ -695,10 +702,10 @@ - - - - + + + + @@ -708,40 +715,40 @@ - - + + - - + + - - - - + + + + - - + + - - + + -- cgit v1.2.3-54-g00ecf From 37b5ac129337230433b90e94f9e50cebab8d72d9 Mon Sep 17 00:00:00 2001 From: Bruce Dubbs Date: Fri, 12 Jun 2020 22:03:30 +0000 Subject: Finish review/update to cross2 book git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11931 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter10/grub.xml | 9 ++++----- chapter10/introduction.xml | 2 +- chapter11/reboot.xml | 8 ++++---- chapter11/theend.xml | 2 +- chapter11/whatnow.xml | 4 ++-- 5 files changed, 12 insertions(+), 13 deletions(-) (limited to 'chapter10') diff --git a/chapter10/grub.xml b/chapter10/grub.xml index d6897d5e5..fbc1eef9f 100644 --- a/chapter10/grub.xml +++ b/chapter10/grub.xml @@ -20,12 +20,11 @@ Introduction Configuring GRUB incorrectly can render your system - inoperable without an alternate boot device such as a CD-ROM. This - section is not required to boot your LFS system. You may just - want to modify your current boot loader, e.g. Grub-Legacy, GRUB2, or + inoperable without an alternate boot device such as a CD-ROM or bootable + USB drive. This section is not required to boot your LFS system. You may + just want to modify your current boot loader, e.g. Grub-Legacy, GRUB2, or LILO. - Ensure that an emergency boot disk is ready to rescue the computer if the computer becomes unusable (un-bootable). If you do not already have a boot device, you can create one. In order for the procedure @@ -83,7 +82,7 @@ xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.isoThe location of the boot partition is a choice of the user that affects the configuration. One recommendation is to have a separate small - (suggested size is 100 MB) partition just for boot information. That way + (suggested size is 200 MB) partition just for boot information. That way each build, whether LFS or some commercial distro, can access the same boot files and access can be made from any booted system. If you choose to do this, you will need to mount the separate partition, move all files in the diff --git a/chapter10/introduction.xml b/chapter10/introduction.xml index 5cb40b882..2b233ec08 100644 --- a/chapter10/introduction.xml +++ b/chapter10/introduction.xml @@ -11,7 +11,7 @@ Introduction It is time to make the LFS system bootable. This chapter - discusses creating an fstab file, building a + discusses creating the /etc/fstab file, building a kernel for the new LFS system, and installing the GRUB boot loader so that the LFS system can be selected for booting at startup. diff --git a/chapter11/reboot.xml b/chapter11/reboot.xml index c6a857dbd..1822e6165 100644 --- a/chapter11/reboot.xml +++ b/chapter11/reboot.xml @@ -89,10 +89,6 @@ umount -v $LFS/run umount -v $LFS/proc umount -v $LFS/sys - Unmount the LFS file system itself: - -umount -v $LFS - If multiple partitions were created, unmount the other partitions before unmounting the main one, like this: @@ -100,6 +96,10 @@ umount -v $LFS/sys umount -v $LFS/home umount -v $LFS + Unmount the LFS file system itself: + +umount -v $LFS + Now, reboot the system with: shutdown -r now diff --git a/chapter11/theend.xml b/chapter11/theend.xml index 9f2ca17cc..6a5f8ad7a 100644 --- a/chapter11/theend.xml +++ b/chapter11/theend.xml @@ -36,7 +36,7 @@ echo &versiond; > /etc/lfs-release Two files describing the installed system may be used by packages - that will be installed on the system, either in binary form or by building + that can be installed on the system later, either in binary form or by building them. The first one shows the status of your diff --git a/chapter11/whatnow.xml b/chapter11/whatnow.xml index 273eb7740..9e6062cf7 100644 --- a/chapter11/whatnow.xml +++ b/chapter11/whatnow.xml @@ -57,7 +57,7 @@ The Beyond Linux From Scratch book covers installation procedures for a wide range of software beyond the scope of the LFS - Book. The BLFS project is located at . + Book. The BLFS project is located at . @@ -65,7 +65,7 @@ The LFS Hints are a collection of educational documents submitted by volunteers in the LFS community. The hints are available - at . + at . -- cgit v1.2.3-54-g00ecf