|Red Hat Linux 8 Training Errata|
Page 58: The (\) in the last line should be (/)
Page 64-65: The Function Keys listed in the descriptions are incorrect; F2-4 as described are actually F3-5.
Page 85: The command listed as $ su - c "/sbin/ shutdown -h now" should read as $ su -c "/sbin/shutdown -h now", and the following 3 commands should have no spaces between 'sbin/' and 'shutdown'
Page 104: Using the command 'dmesg | fgrep tty' assumes the dmesg output from boot time has not been scrolled out of the temporary buffer. The proper way to collect this information is 'cat /var/log/dmesg | fgrep tty', as the /var/log/dmesg file is created with the buffered data immediately following bootup.
Page 219: The description for ntsysv incorrectly states it can only modify the corrent runlevel. This is the default behavior, but using the '--levels ' option allows you to specify different runlevels to modify.
Page 231: RPM as of Red Hat 8 now uses GPG to verify signatures instead of PGP signatures. The technical specification calls for OpenPGP V3 signature packets.
Page 235: The command # rpm -q --scripts filename | scripts.txt should be # rpm -qp --scripts filename > scripts.txt. The command # rpm -q --scripts filename | less should be # rpm -qp --scripts filename | less. You must supply the 'p' flag to rpm when querying a file; without this flag, rpm will query the installed database of applications.
Page 271: The command # mount mount -o remount <partition> should be # mount -o remount,ro <partition>
Page 281: The description for ext3 states the filesystem has support for files as large as 2 GB; ext3 actually supports files up to 2 TB in size, although some kernels have an IO restriction that limits file sizes to 1 TB. Max sizes depend on the block size of the FS in question:
Filesystem block size: 1kB 2kB 4kB 8kB File size limit: 16GB 256GB 2048GB 2048GB Filesystem size limit: 2047GB 8192GB 16384GB 32768GB
Page 292-293: Page 292 states "use the mke3fs command to create an ext3 filesystem", while page 293 states "There is no mke3fs command". Page 293 is correct; use mke2fs -j or mke2fs -J or call mkfs.ext3.
Page 453: The command '$ dig @i.gtld-servers.net www.ibm.com A +norec' has been inadvertently dropped from the page.
Page 455: In the second paragraph, the address 126.96.36.199 is incorrectly rewritten to a reverse of 188.8.131.52.in-addr.arpa, when it should be 184.108.40.206.in-addr.arpa.
Page 462: The command # dig @j.root-servers.net. . ns > /var/named/root.hints incorrectly has an extra period after the 'net'.
Page 490: The 'Caution' sidebar states "To create the symlink (from /dev/ttyS2, for example)" but the example shown would create the link to /dev/ttyS0. The command to follow the text would be # ln -s /dev/ttyS2 /dev/modem instead.
Page 631: The 'MDIR versus Mailbox' box should define the mail folders as /cur, /new, and /tmp.
Page 636: The last paragraph mentions that adding entries to the '/etc/relay-domains' file will allow mail to be relayed through the mail server; by default, this should be /etc/mail/relay-domains, per the line "FR-o /etc/mail/relay-domains" in the included sendmail.cf file.
Page 637: The 'Caution' box explains how to use an alias to redirect root's email to another user. This can also be accomplished by created a .forward file in root's home directory that contains a single line with the address to which the email should be forwarded.
Page 637: The last paragraph mentions that adding entries to the '/etc/access' file will allow you to reject mail from certain cites; by default, this should be /etc/mail/access, per the line "Kaccess hash -T<TMPF> -o /etc/mail/access.db" in the included sendmail.cf file.
Page 707: Table 22.1 lists a flag of '-g-g' as one which produces output suitable for use with gdb; the flag should simply read as '-g'.
Page 718: The command '$ ls .d?c' will only match files without any portion of a filename prior to the '.', and instead should be '$ ls *.d?c'.
Page 718: The command '$ ls **' will only match files which contain the specific numbers 0 or 9, not the range 0 to 9. The command should be written as '$ ls *[0-9]*'.
Page 738: The file operator script as witten tests to see if $dir1 is a regular file (top of page 739), but the output as shown reads 'file1 is a regular file'; the test in the script should read with $file1 instead of $dir1 for the entire first section on top of page 739.
Page 743: The second section of the script tests to see if dir1 is a file, but the output reports that the test shows file1 is a regular file. The scripts should test 'if ( -f file1 ) then' instead.
Page 771: Listing 23.4 has a line shows as '@listing = `ls -la`; and the 2 characters at the end of the line have been mistakenly printed as a single agrave.
Page 778: In Listing 23.7, the line '@lines=<FILE>;' has been concatenated with the previous line. While this won't affect the program operation, it makes it more difficult to determine what is a prt of the 'die' error message and what is a new line of code.
Page 797: In the "Using the patch command", step 5 shows how the patch should be applied, and the patch_filename section has a space in it.
Page 823 The command to start the KOffice shell is listed as '$ koshell &.' The period is unneeded.
Page 831: In the command listing under Figure 25.13, the command 'cp zxvf vuesca75.tgz /usr/local/vuescan' shoudl not contain the zxvf, and should instead be written as 'cp vuesca75.tgz /usr/local/vuescan'.
Page 841: The description of the flag '-I' should not contain a mention of 'lowercase L'.
Page 259: Providing password on the command line is a poor practice from a security standpoint; the password is stored in your command history, and if the command takes a long time to execute, the password may be visible to other users with a 'ps auxw' command.
Page 271: Quotas can be very useful on a home or desktop machine, especially when used to help prevent disk utilzation from skyrocketing in the case of a bad piece of software, system compromise, or even just to keep a spouse or child from inadvertently filling the drive.
Page 477: In the section on DNS Security Issues, one feature often employed by system administrators to slow down automated attacks is to modify the Version String that is sent back to a requesting dns client when specifically requested. To accomplish this, simply add a directive of 'version "Version Suppressed";' (or whatever version string you wish to send in place of "Version Suppressed") into the options section of the named.conf file.
Page 513: To check the default runlevel of the machine, the command # grep ^id: /etc/inittab will prevent spurious output (such as commented lines or other lines not related to the default runlevel) from appearing as output, as it will require the strings 'id:' to be at the beginning of the line.
Chapter 22: There should be a 'Caution' box explaining that scripts should be written with exact system paths for several reasons; one is to ensure that the program will behave as expected regardless of the $PATH of the user running the script (ie, one user might have written a command called 'echo' and placed it in a directory in his $PATH which precedes the system echo command (this has historically been an issue on SunOS/Solaris machines which may have multiple incarnations of commands in '/usr/ucb' as well as '/usr/bin'), while another is to ensure that for security reasons a script can't be convinced to run with a trojaned binary of the same name.