diff --git a/chapter06/db.xml b/chapter06/db.xml index b133a254d..5bd81d27b 100644 --- a/chapter06/db.xml +++ b/chapter06/db.xml @@ -1,218 +1,278 @@ - %general-entities; ]> + -Berkeley DB-&db-version; - + -Berkeley DB + Berkeley DB-&db-version; - -<para>The Berkeley DB package contains programs and utilities used by many other -applications for database related functions.</para> + <indexterm zone="ch-system-db"> + <primary sortas="a-Berkeley-DB">Berkeley DB</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>1.2 SBU</seg><seg>78 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Coreutils, -Diffutils, GCC, Glibc, Make and Sed.</seg></seglistitem> -</segmentedlist> + <para>The Berkeley DB package contains programs and utilities used by many + other applications for database related functions.</para> -<tip> -<title>Extra functionality for Berkeley DB in BLFS -There are instructions to build this package in the BLFS book if you need to build the RPC server or additional language bindings. The -additional language bindings will require additional packages to be -installed. The BLFS instructions are located at - -for suggested installation instructions. - + + &buildtime; + &diskspace; - + + 1.2 SBU + 78 MB + + - -Installation of Berkeley DB + + &dependencies; -Prepare Berkeley DB for compilation: + + Bash, Binutils, Coreutils, Diffutils, GCC, Glibc, Make and Sed. + + + + + Extra functionality for Berkeley DB in BLFS + + There are instructions to build this package in the BLFS + book if you need to build the RPC server or additional language + bindings. The additional language bindings will require additional + packages to be installed. The BLFS instructions are located at + for + suggested installation instructions. + + + + + + Installation of Berkeley DB + + Prepare Berkeley DB for compilation: cd build_unix && ../dist/configure --prefix=/usr --enable-compat185 --enable-cxx -The meaning of the configure options: + + The meaning of the configure options: - - ---enable-compat185 -This option enables building Berkeley DB 1.85 compatibility API. - + + --enable-compat185 + + This option enables building Berkeley DB 1.85 compatibility + API. + + - ---enable-cxx -This option enables building C++ API libraries. - - + + --enable-cxx + + This option enables building C++ API libraries. + + -Compile the package: + + + Compile the package: make -It is not possible to test the package meaningfully, because that -would involve building TCL bindings. TCL bindings cannot be built properly -now because TCL is linked against Glibc in /tools, -not against Glibc in /usr. + It is not possible to test the package meaningfully, because + that would involve building TCL bindings. TCL bindings cannot be + built properly now because TCL is linked against Glibc in + /tools, not against Glibc in + /usr. -Install the package: + Install the package: make docdir=/usr/share/doc/db-&db-version; install -The meaning of the make option: + + The meaning of the make parameter: - - -docdir=... -This variable specifies the correct place for the documentation. - - + + docdir=... + + This variable specifies the correct place for the + documentation. + + -Fix the ownerships of the installed files: + + + Fix the ownerships of the installed files: chown root:root /usr/bin/db_* \ /usr/lib/libdb* /usr/include/db* && chown -R root:root /usr/share/doc/db-&db-version; - + + + + Contents of Berkeley DB + + + Installed programs + Installed libraries + + + db_archive, db_checkpoint, db_deadlock, db_dump, db_hotbackup, + db_load, db_printlog, db_recover, db_stat, db_upgrade, and db_verify + libdb.[so,a] and libdb_cxx.[so,a] + + + + + Short Descriptions + + + + + db_archive + + Prints the pathnames of log files that are no longer in use + + db_archive + + + + + + db_checkpoint + + A daemon used to monitor and checkpoint database logs + + db_checkpoint + + + + + + db_deadlock + + A daemon used to abort lock requests when deadlocks are + detected + + db_deadlock + + + + + + db_dump + + Converts database files to a plain-text file format readable + by db_load + + db_dump + + + + + + db_hotbackup + + Creates hot backup or hot failover + snapshots of Berkeley DB databases + + db_hotbackup + + + + + + db_load + + Is used to create database files from plain-text files + + db_load + + + + + + db_printlog + + Converts database log files to human readable text + + db_printlog + + + + + + db_recover + + Is used to restore a database to a consistent state after a + failure + + db_recover + + + + + + db_stat + + Displays statistics for Berkeley databases + + db_stat + + + + + + db_upgrade + + Is used to upgrade database files to a newer version of + Berkeley DB + + db_upgrade + + + + + + db_verify + + Is used to run consistency checks on database files + + db_verify + + + -Contents of Berkeley DB - -Installed programs -db_archive, db_checkpoint, db_deadlock, db_dump, -db_hotbackup, db_load, db_printlog, db_recover, db_stat, db_upgrade and -db_verify - - + + libdb.[so,a] + + Contains functions to manipulate database files from C + programs + + libdb + + + - -Installed libraries -libdb.[so,a] and libdb_cxx.[so,a] - + + libdb_cxx.[so,a] + + Contains functions to manipulate database files from C++ + programs + + libdb_cxx + + + -Short Descriptions - - + - -db_archive - -Prints the pathnames of log files that are no longer in use -db_archive - - - - -db_checkpoint - -A daemon used to monitor and checkpoint database logs -db_checkpoint - - - - -db_deadlock - -A daemon used to abort lock requests when deadlocks are detected -db_deadlock - - - - -db_dump - -Converts database files to a plain-text file format readable by db_load -db_dump - - - - -db_hotbackup - -Creates hot backup or hot failover snapshots of Berkeley DB databases -db_hotbackup - - - - -db_load - -Is used to create database files from plain-text files -db_load - - - - -db_printlog - -Converts database log files to human readable text -db_printlog - - - - -db_recover - -Is used to restore a database to a consistent state after a failure -db_recover - - - - -db_stat - -Displays statistics for Berkeley databases -db_stat - - - - -db_upgrade - -Is used to upgrade database files to a newer version of Berkeley DB -db_upgrade - - - - -db_verify - -Is used to run consistency checks on database files -db_verify - - - - - -libdb.[so,a] - -Contains functions to manipulate database files from C programs -libdb - - - - -libdb_cxx.[so,a] - -Contains functions to manipulate database files from C++ programs -libdb_cxx - - - - - + diff --git a/chapter06/devices.xml b/chapter06/devices.xml index da4af0a17..51821fe84 100644 --- a/chapter06/devices.xml +++ b/chapter06/devices.xml @@ -1,48 +1,55 @@ - %general-entities; ]> + -Populating /dev - + -/dev/* + Populating /dev - -Creating Initial Device Nodes + + /dev/* + -When the kernel boots the system, it requires the presence of a few device -nodes, in particular the console and -null devices. The device nodes will -be created on the hard disk so that they are available before -udev has been started, and additionally when Linux is started -in single user mode (hence the restrictive permissions on -console). Create the devices by running -the following commands: + + Creating Initial Device Nodes + + When the kernel boots the system, it requires the presence of a few + device nodes, in particular the console + and null devices. The device nodes + will be created on the hard disk so that they are available before + udev has been started, and additionally when Linux is + started in single user mode (hence the restrictive permissions on + console). Create the devices by + running the following commands: mknod -m 600 /dev/console c 5 1 mknod -m 666 /dev/null c 1 3 - - -Mounting tmpfs and Populating /dev + -The recommended method of populating the /dev directory with devices is to mount a virtual -filesystem (such as tmpfs) on the -/dev directory, and allow the devices to -be created dynamically on that virtual filesystem as they are detected or -accessed. This is generally done during the boot process. Since this new system -has not been booted, it is necessary to do what the LFS-Bootscripts package would -otherwise do by mounting /dev: + + Mounting tmpfs and Populating /dev + + The recommended method of populating the /dev directory with devices is to mount a + virtual filesystem (such as tmpfs) + on the /dev directory, and allow the + devices to be created dynamically on that virtual filesystem as they are + detected or accessed. This is generally done during the boot process. Since + this new system has not been booted, it is necessary to do what the + LFS-Bootscripts package would otherwise do by mounting /dev: mount -nvt tmpfs none /dev -The Udev package is what actually creates the devices in the /dev directory. Since it will not be installed -until later on in the process, manually create the minimal set of device nodes -needed to complete the building of this system: + The Udev package is what actually creates the devices in the /dev directory. Since it will not be installed + until later on in the process, manually create the minimal set of device nodes + needed to complete the building of this system: mknod -m 622 /dev/console c 5 1 mknod -m 666 /dev/null c 1 3 @@ -53,10 +60,10 @@ mknod -m 444 /dev/random c 1 8 mknod -m 444 /dev/urandom c 1 9 chown -v root:tty /dev/{console,ptmx,tty} -There are some symlinks and directories required by LFS that are created -during system startup by the LFS-Bootscripts package. Since this is a chroot -environment and not a booted environment, those symlinks and directories need to -be created here: + There are some symlinks and directories required by LFS that are + created during system startup by the LFS-Bootscripts package. Since this + is a chroot environment and not a booted environment, those symlinks and + directories need to be created here: ln -sv /proc/self/fd /dev/fd ln -sv /proc/self/fd/0 /dev/stdin @@ -66,21 +73,21 @@ ln -sv /proc/kcore /dev/core mkdir -v /dev/pts mkdir -v /dev/shm -Finally, mount the proper virtual (kernel) file systems on the -newly-created directories: + Finally, mount the proper virtual (kernel) file systems on the + newly-created directories: mount -vt devpts -o gid=4,mode=620 none /dev/pts mount -vt tmpfs none /dev/shm -The mount commands executed above may result -in the following warning message: + The mount commands executed above may result + in the following warning message: can't open /etc/fstab: No such file or directory. -This file—/etc/fstab—has not -been created yet but is also not required for the file systems to be -properly mounted. As such, the warning can be safely ignored. - + This file—/etc/fstab—has not + been created yet but is also not required for the file systems to be + properly mounted. As such, the warning can be safely ignored. + + - diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml index 5234bd6c7..167709fa3 100644 --- a/chapter06/diffutils.xml +++ b/chapter06/diffutils.xml @@ -1,102 +1,132 @@ - %general-entities; ]> + -Diffutils-&diffutils-version; - + -Diffutils + Diffutils-&diffutils-version; - -<para>The Diffutils package contains programs that show the differences -between files or directories.</para> + <indexterm zone="ch-system-diffutils"> + <primary sortas="a-Diffutils">Diffutils</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>0.1 SBU</seg><seg>5.6 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Coreutils, Diffutils, GCC, -Gettext, Glibc, Grep, Make, and Sed</seg></seglistitem> -</segmentedlist> -</sect2> + <para>The Diffutils package contains programs that show the differences + between files or directories.</para> -<sect2 role="installation"> -<title>Installation of Diffutils + + &buildtime; + &diskspace; -POSIX requires the diff command to treat whitespace -characters according to the current locale. The following patch fixes the -non-compliance issue: + + 0.1 SBU + 5.6 MB + + + + + &dependencies; + + + Bash, Binutils, Coreutils, Diffutils, GCC, Gettext, Glibc, + Grep, Make, and Sed + + + + + + + Installation of Diffutils + + POSIX requires the diff command to treat whitespace + characters according to the current locale. The following patch fixes the + non-compliance issue: patch -Np1 -i ../&diffutils-i18n-patch; -Prepare Diffutils for compilation: + Prepare Diffutils for compilation: ./configure --prefix=/usr -Compile the package: + Compile the package: make -This package does not come with a test suite. + This package does not come with a test suite. -Install the package: + Install the package: make install - + -Contents of Diffutils + + Contents of Diffutils - -Installed programs -cmp, diff, diff3, and sdiff - + + Installed programs -Short Descriptions - - + + cmp, diff, diff3, and sdiff + + - -cmp - -Compares two files and reports whether or in which bytes they differ -cmp - - + + Short Descriptions + + - -diff - -Compares two files or directories and reports which lines in the files differ -diff - - + + cmp + + Compares two files and reports whether or in which bytes they + differ + + cmp + + + - -diff3 - -Compares three files line by line -diff3 - - + + diff + + Compares two files or directories and reports which lines in + the files differ + + diff + + + - -sdiff - -Merges two files and interactively outputs the results -sdiff - - - + + diff3 + + Compares three files line by line + + diff3 + + + - + + sdiff + + Merges two files and interactively outputs the results + + sdiff + + + + + + + - diff --git a/chapter06/e2fsprogs.xml b/chapter06/e2fsprogs.xml index 9995b2ed4..60c1cc5a6 100644 --- a/chapter06/e2fsprogs.xml +++ b/chapter06/e2fsprogs.xml @@ -1,380 +1,469 @@ - %general-entities; ]> + -E2fsprogs-&e2fsprogs-version; - + -E2fsprogs + E2fsprogs-&e2fsprogs-version; - -<para>The E2fsprogs package contains the utilities for handling the -<systemitem class="filesystem">ext2</systemitem> file system. It also supports -the <systemitem class="filesystem">ext3</systemitem> journaling file system.</para> + <indexterm zone="ch-system-e2fsprogs"> + <primary sortas="a-E2fsprogs">E2fsprogs</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>0.6 SBU</seg><seg>40.0 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Coreutils, -Diffutils, Gawk, GCC, Gettext, Glibc, Grep, Make, Sed, and Texinfo</seg></seglistitem> -</segmentedlist> -</sect2> + <para>The E2fsprogs package contains the utilities for handling the + <systemitem class="filesystem">ext2</systemitem> file system. It also + supports the <systemitem class="filesystem">ext3</systemitem> journaling + file system.</para> -<sect2 role="installation"> -<title>Installation of E2fsprogs + + &buildtime; + &diskspace; -It is recommended that E2fsprogs be built in a subdirectory of the source tree: - + + 0.6 SBU + 40.0 MB + + + + + &dependencies; + + + Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Gettext, Glibc, + Grep, Make, Sed, and Texinfo + + + + + + + Installation of E2fsprogs + + It is recommended that E2fsprogs be built in a subdirectory of + the source tree: mkdir -v build cd build -Prepare E2fsprogs for compilation: + Prepare E2fsprogs for compilation: ../configure --prefix=/usr --with-root-prefix="" \ --enable-elf-shlibs --disable-evms -The meaning of the configure options: + + The meaning of the configure options: - - ---with-root-prefix="" -Certain programs (such as the e2fsck program) -are considered essential programs. When, for example, /usr is not mounted, these programs still need -to be available. They belong in directories like /lib and /sbin. If this option is not passed to E2fsprogs' -configure, the programs are installed into the /usr directory. + + --with-root-prefix="" + + Certain programs (such as the e2fsck + program) are considered essential programs. When, for example, + /usr is not mounted, these + programs still need to be available. They belong in directories + like /lib and /sbin. If this option is not passed + to E2fsprogs' configure, the programs are installed into the + /usr directory. + + - + + --enable-elf-shlibs + + This creates the shared libraries which some programs + in this package use. + + - ---enable-elf-shlibs -This creates the shared libraries which some programs -in this package use. - + + --disable-evms + + This disables the building of the Enterprise Volume + Management System (EVMS) plugin. This plugin is not up-to-date with + the latest EVMS internal interfaces and EVMS is not installed as part + of a base LFS system, so the plugin is not required. See the EVMS + website at for more + information regarding EVMS. + + - ---disable-evms -This disables the building of the Enterprise Volume -Management System (EVMS) plugin. This plugin is not up-to-date with -the latest EVMS internal interfaces and EVMS is not installed as part -of a base LFS system, so the plugin is not required. See the EVMS -website at for more -information regarding EVMS. - - + -Compile the package: + Compile the package: make -To test the results, issue: -make check. + To test the results, issue: + make check. -Install the binaries and documentation: + Install the binaries and documentation: make install -Install the shared libraries: + Install the shared libraries: make install-libs - + + + Contents of E2fsprogs + + Installed programs + Installed libraries -Contents of E2fsprogs + + badblocks, blkid, chattr, compile_et, debugfs, dumpe2fs, e2fsck, + e2image, e2label, findfs, fsck, fsck.ext2, fsck.ext3, logsave, lsattr, + mk_cmds, mke2fs, mkfs.ext2, mkfs.ext3, mklost+found, resize2fs, + tune2fs, and uuidgen. + libblkid.[a,so], libcom_err.[a,so], libe2p.[a,so], + libext2fs.[a,so], libss.[a,so], and libuuid.[a,so] + + - -Installed programs -Installed libraries -badblocks, blkid, chattr, -compile_et, debugfs, dumpe2fs, e2fsck, e2image, e2label, findfs, fsck, -fsck.ext2, fsck.ext3, logsave, lsattr, mk_cmds, mke2fs, mkfs.ext2, mkfs.ext3, -mklost+found, resize2fs, tune2fs, and uuidgen. -libblkid.[a,so], libcom_err.[a,so], libe2p.[a,so], -libext2fs.[a,so], libss.[a,so], and libuuid.[a,so] - + + Short Descriptions + + -Short Descriptions - - + + badblocks + + Searches a device (usually a disk partition) for bad + blocks + + badblocks + + + - -badblocks - -Searches a device (usually a disk partition) for bad blocks -badblocks - - + + blkid + + A command line utility to locate and print block device + attributes + + blkid + + + - -blkid - -A command line utility to locate and print block device attributes -blkid - - + + chattr + + Changes the attributes of files on an ext2 file system; it also + changes ext3 + file systems, the journaling version of ext2 file systems + + chattr + + + - -chattr - -Changes the attributes of files on an ext2 file system; it also changes ext3 file systems, the journaling version of -ext2 file systems -chattr - - + + compile_et + + An error table compiler; it converts a table of error-code + names and messages into a C source file suitable for use with the + com_err library + + compile_et + + + - -compile_et - -An error table compiler; it converts a table of error-code names and -messages into a C source file suitable for use with the com_err library -compile_et - - + + debugfs + + A file system debugger; it can be used to examine and change + the state of an ext2 + file system + + debugfs + + + - -debugfs - -A file system debugger; it can be used to examine and change the -state of an ext2 file system -debugfs - - + + dumpe2fs + + Prints the super block and blocks group information for the + file system present on a given device + + dumpe2fs + + + - -dumpe2fs - -Prints the super block and blocks group information for the file -system present on a given device -dumpe2fs - - + + e2fsck + + Is used to check, and optionally repair ext2 file systems and ext3 file systems + + e2fsck + + + - -e2fsck - -Is used to check, and optionally repair ext2 file systems and ext3 file systems -e2fsck - - + + e2image + + Is used to save critical ext2 file system data to a file + + e2image + + + - -e2image - -Is used to save critical ext2 -file system data to a file -e2image - - + + e2label + + Displays or changes the file system label on the ext2 file system present on a given + device + + e2label + + + - -e2label - -Displays or changes the file system label on the ext2 file system present on a given device -e2label - - + + findfs + + Finds a file system by label or Universally Unique Identifier + (UUID) + + findfs + + + - -findfs - -Finds a file system by label or Universally Unique Identifier (UUID) -findfs - - + + fsck + + Is used to check, and optionally repair, file systems + + fsck + + + - -fsck - -Is used to check, and optionally repair, file systems -fsck - - + + fsck.ext2 + + By default checks ext2 + file systems + + fsck.ext2 + + + - -fsck.ext2 - -By default checks ext2 -file systems -fsck.ext2 - - + + fsck.ext3 + + By default checks ext3 + file systems + + fsck.ext3 + + + - -fsck.ext3 - -By default checks ext3 -file systems -fsck.ext3 - - + + logsave + + Saves the output of a command in a log file + + logsave + + + - -logsave - -Saves the output of a command in a log file -logsave - - + + lsattr + + Lists the attributes of files on a second extended file + system + + lsattr + + + - -lsattr - -Lists the attributes of files on a second extended file system -lsattr - - + + mk_cmds + + Converts a table of command names and help messages into a C + source file suitable for use with the libss subsystem library + + mk_cmds + + + - -mk_cmds - -Converts a table of command names and help messages into a C -source file suitable for use with the libss subsystem library -mk_cmds - - + + mke2fs + + Creates an ext2 + or ext3 file system on + the given device + + mke2fs + + + - -mke2fs - -Creates an ext2 or ext3 file system on the given device -mke2fs - - + + mkfs.ext2 + + By default creates ext2 + file systems + + mkfs.ext2 + + + - -mkfs.ext2 - -By default creates ext2 -file systems -mkfs.ext2 - - + + mkfs.ext3 + + By default creates ext3 + file systems + + mkfs.ext3 + + + - -mkfs.ext3 - -By default creates ext3 -file systems -mkfs.ext3 - - + + mklost+found + + Used to create a lost+found + directory on an ext2 file + system; it pre-allocates disk blocks to this directory to lighten the + task of e2fsck + + mklost+found + + + - -mklost+found - -Used to create a lost+found -directory on an ext2 file system; -it pre-allocates disk blocks to this directory to lighten the task of -e2fsck -mklost+found - - + + resize2fs + + Can be used to enlarge or shrink an ext2 file system + + resize2fs + + + - -resize2fs - -Can be used to enlarge or shrink an ext2 file system -resize2fs - - + + tune2fs + + Adjusts tunable file system parameters on an ext2 file system + + tune2fs + + + - -tune2fs - -Adjusts tunable file system parameters on an ext2 file system -tune2fs - - + + uuidgen + + Creates new UUIDs. Each new UUID can reasonably be considered + unique among all UUIDs created, on the local system and on other + systems, in the past and in the future + + uuidgen + + + - -uuidgen - -Creates new UUIDs. Each new UUID can reasonably be considered unique -among all UUIDs created, on the local system and on other systems, in the -past and in the future -uuidgen - - + + libblkid + + Contains routines for device identification and token + extraction + + libblkid + + + - -libblkid - -Contains routines for device identification and token extraction -libblkid - - + + libcom_err + + The common error display routine + + libcom_err + + + - -libcom_err - -The common error display routine -libcom_err - - + + libe2p + + Used by dumpe2fs, chattr, + and lsattr + + libe2p + + + - -libe2p - -Used by dumpe2fs, chattr, -and lsattr -libe2p - - + + libext2fs + + Contains routines to enable user-level programs to manipulate an + ext2 file system + + libext2fs + + + - -libext2fs - -Contains routines to enable user-level programs to manipulate an -ext2 file system -libext2fs - - + + libss + + Used by debugfs + + libss + + + - -libss - -Used by debugfs -libss - - + + libuuid + + Contains routines for generating unique identifiers for objects + that may be accessible beyond the local system + + libuuid + + + - -libuuid - -Contains routines for generating unique identifiers for objects -that may be accessible beyond the local system -libuuid - - - + - + - diff --git a/chapter06/file.xml b/chapter06/file.xml index f89f7674b..cae4324f7 100644 --- a/chapter06/file.xml +++ b/chapter06/file.xml @@ -1,84 +1,109 @@ - %general-entities; ]> + -File-&file-version; - + -File + File-&file-version; - -<para>The File package contains a utility for determining the type of a given -file or files.</para> + <indexterm zone="ch-system-file"> + <primary sortas="a-File">File</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>0.1 SBU</seg><seg>6.2 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Coreutils, Diffutils, -GCC, Glibc, Grep, Make, Sed, and Zlib</seg></seglistitem> -</segmentedlist> -</sect2> + <para>The File package contains a utility for determining the type of a given + file or files.</para> -<sect2 role="installation"> -<title>Installation of File + + &buildtime; + &diskspace; -Prepare File for compilation: + + 0.1 SBU + 6.2 MB + + -./configure --prefix=/usr + + &dependencies; -Compile the package: + + Bash, Binutils, Coreutils, Diffutils, GCC, Glibc, Grep, Make, + Sed, and Zlib + + + + + + + Installation of File + + Prepare File for compilation: + +./configure --prefix=/usr + + Compile the package: make -This package does not come with a test suite. + This package does not come with a test suite. -Install the package: + Install the package: make install - + -Contents of File + + Contents of File - -Installed programs -Installed library -filelibmagic.[a,so] - + + Installed programs + Installed library -Short Descriptions - - + + file + libmagic.[a,so] + + - -file - -Tries to classify each given file; it does this by performing -several tests—file system tests, magic number tests, and language -tests -file - - + + Short Descriptions + + - -libmagic - -Contains routines for magic number recognition, used by the -file program -libmagic - - - + + file + + Tries to classify each given file; it does this by performing + several tests—file system tests, magic number tests, and language + tests + + file + + + - + + libmagic + + Contains routines for magic number recognition, used by the + file program + + libmagic + + + + + + + - diff --git a/chapter06/findutils.xml b/chapter06/findutils.xml index 8112a4e46..ae379d04d 100644 --- a/chapter06/findutils.xml +++ b/chapter06/findutils.xml @@ -1,140 +1,180 @@ - %general-entities; ]> + -Findutils-&findutils-version; - + -Findutils + Findutils-&findutils-version; - -<para>The Findutils package contains programs to find files. These programs -are provided to recursively search through a directory tree and to -create, maintain, and search a database (often faster than the recursive -find, but unreliable if the database has not been recently updated).</para> + <indexterm zone="ch-system-findutils"> + <primary sortas="a-Findutils">Findutils</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>0.1 SBU</seg><seg>9.4 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Coreutils, -Diffutils, GCC, Gettext, Glibc, Grep, Make and Sed</seg></seglistitem> -</segmentedlist> -</sect2> + <para>The Findutils package contains programs to find files. These programs + are provided to recursively search through a directory tree and to + create, maintain, and search a database (often faster than the recursive + find, but unreliable if the database has not been recently updated).</para> -<sect2 role="installation"> -<title>Installation of Findutils + + &buildtime; + &diskspace; -Prepare Findutils for compilation: + + 0.1 SBU + 9.4 MB + + + + + &dependencies; + + + Bash, Binutils, Coreutils, Diffutils, GCC, Gettext, Glibc, Grep, + Make and Sed + + + + + + + Installation of Findutils + + Prepare Findutils for compilation: ./configure --prefix=/usr --libexecdir=/usr/lib/findutils \ --localstatedir=/var/lib/locate -The meaning of the configure options: + + The meaning of the configure options: - - ---localstatedir -This option changes the location of the locate -database to be in /var/lib/locate, which -is FHS-compliant. - - + + --localstatedir + + This option changes the location of the locate + database to be in /var/lib/locate, + which is FHS-compliant. + + -Compile the package: + + + Compile the package: make -To test the results, issue: -make check. + To test the results, issue: + make check. -Install the package: + Install the package: make install - + -Contents of Findutils + + Contents of Findutils - -Installed programs -bigram, code, find, frcode, locate, updatedb, and xargs - + + Installed programs -Short Descriptions - - + + bigram, code, find, frcode, locate, updatedb, and xargs + + - -bigram - -Was formerly used to produce locate databases -bigram - - + + Short Descriptions + + - -code - -Was formerly used to produce locate -databases; it is the ancestor of frcode. -code - - + + bigram + + Was formerly used to produce locate + databases + + bigram + + + - -find - -Searches given directory trees for files matching the specified criteria -find - - + + code + + Was formerly used to produce locate + databases; it is the ancestor of frcode. + + code + + + - -frcode - -Is called by updatedb to compress the list of file names; it uses -front-compression, reducing the database size by a factor of four to -five. -frcode - - + + find + + Searches given directory trees for files matching the specified + criteria + + find + + + - -locate - -Searches through a database of file names and reports the names -that contain a given string or match a given pattern -locate - - + + frcode + + Is called by updatedb to compress the list + of file names; it uses front-compression, reducing the database size + by a factor of four to five. + + frcode + + + - -updatedb - -Updates the locate database; it scans -the entire file system (including other file systems that are currently mounted, -unless told not to) and puts every file name it finds into the database -updatedb - - + + locate + + Searches through a database of file names and reports the names + that contain a given string or match a given pattern + + locate + + + - -xargs - -Can be used to apply a given command to a list of files -xargs - - - + + updatedb + + Updates the locate database; it scans the + entire file system (including other file systems that are currently + mounted, unless told not to) and puts every file name it finds into + the database + + updatedb + + + - + + xargs + + Can be used to apply a given command to a list of files + + xargs + + + + + + + - diff --git a/chapter06/flex.xml b/chapter06/flex.xml index 7d4b30796..3d375d311 100644 --- a/chapter06/flex.xml +++ b/chapter06/flex.xml @@ -1,71 +1,88 @@ - %general-entities; ]> + -Flex-&flex-version; - + -Flex + Flex-&flex-version; - -<para>The Flex package contains a utility for generating programs that -recognize patterns in text.</para> + <indexterm zone="ch-system-flex"> + <primary sortas="a-Flex">Flex</primary> + </indexterm> -<segmentedlist> -<segtitle>&buildtime;</segtitle> -<segtitle>&diskspace;</segtitle> -<seglistitem><seg>0.1 SBU</seg><seg>22.5 MB</seg></seglistitem> -</segmentedlist> + <sect2 role="package"> + <title/> -<segmentedlist> -<segtitle>&dependencies;</segtitle> -<seglistitem><seg>Bash, Binutils, Bison, Coreutils, Diffutils, -GCC, Gettext, Glibc, Grep, M4, Make, and Sed</seg></seglistitem> -</segmentedlist> -</sect2> + <para>The Flex package contains a utility for generating programs that + recognize patterns in text.</para> -<sect2 role="installation"> -<title>Installation of Flex + + &buildtime; + &diskspace; -Flex contains several known bugs. Fix these with the following patch: + + 0.1 SBU + 22.5 MB + + + + + &dependencies; + + + Bash, Binutils, Bison, Coreutils, Diffutils, GCC, Gettext, + Glibc, Grep, M4, Make, and Sed + + + + + + + Installation of Flex + + Flex contains several known bugs. Fix these with the following + patch: patch -Np1 -i ../&flex-fixes-patch; -The GNU autotools detects that the Flex source code has been -modified by the previous patch and tries to update the man page -accordingly. This does not work correctly on many systems, and the -default page is fine, so make sure it does not get regenerated: + The GNU autotools detects that the Flex source code has been + modified by the previous patch and tries to update the man page + accordingly. This does not work correctly on many systems, and the + default page is fine, so make sure it does not get regenerated: touch doc/flex.1 -Prepare Flex for compilation: + Prepare Flex for compilation: ./configure --prefix=/usr -Compile the package: + Compile the package: make -To test the results, issue: -make check. + To test the results, issue: + make check. -Install the package: + Install the package: make install -There are some packages that expect to find the -lex library in /usr/lib. Create a symlink to account for -this: + There are some packages that expect to find the + lex library in /usr/lib. Create a symlink to account for + this: ln -sv libfl.a /usr/lib/libl.a -A few programs do not know about flex yet and -try to run its predecessor, lex. To support those -programs, create a wrapper script named lex that -calls flex in lex emulation mode: + A few programs do not know about flex yet and + try to run its predecessor, lex. To support those + programs, create a wrapper script named lex that + calls flex in lex emulation + mode: cat > /usr/bin/lex << "EOF" #!/bin/sh @@ -77,52 +94,61 @@ exec /usr/bin/flex -l "$@" EOF chmod -v 755 /usr/bin/lex - + + + Contents of Flex -Contents of Flex + + Installed programs + Installed library - -Installed programs -Installed library -flex and lex -libfl.a - + + flex and lex + libfl.a + + -Short Descriptions - - + + Short Descriptions + + - -flex - -A tool for generating programs that recognize patterns in text; -it allows for the versatility to specify the rules for -pattern-finding, eradicating the need to develop a specialized -program -flex - - + + flex + + A tool for generating programs that recognize patterns in text; + it allows for the versatility to specify the rules for pattern-finding, + eradicating the need to develop a specialized program + + flex + + + - -lex - -A script that runs flex in lex -emulation mode -lex - - + + lex + + A script that runs flex in + lex emulation mode + + lex + + + - -libfl.a - -The flex library -libfl.a - - - + + libfl.a + + The flex library + + libfl.a + + + - + + + -