Purchase | Copyright © 2002 Paul Sheer. Click here for copying permissions. | Home |
This chapter tells you where to find documentation on a common LINUX distribution. The paths are derived from a RedHat distribution, but are no less applicable to other distributions, although the exact locations might be different. One difference between distributions is the migration of documentation source from /usr/???? to /usr/share/????--the proper place for them--on account of their being shareable between different machines. See Chapter 35 for the reason documentation goes where it does. In many cases, documentation may not be installed or may be in completely different locations. Unfortunately, I cannot keep track of what the 20 major vendors are doing, so it is likely that this chapter will quickly become out of date.
For many proprietary operating systems, the definitive reference for their operating system is printed texts. For LINUX, much of documentation is written by the authors themselves and is included with the source code. A typical LINUX distribution will package documentation along with the compiled binaries. Common distributions come with hundreds of megabytes of printable, hyperlinked, and plain text documentation. There is often no need to go the the World Wide Web unless something is outdated.
If you have not already tried this, run
|
ls -ld /usr/*/doc /usr/*/*/doc /usr/share/*/*/doc \ /opt/*/doc /opt/*/*/doc |
This is a somewhat unreliable way to search for potential documentation directories, but it gives at least the following list of directories for an official RedHat 7.0 with a complete set of installed packages:
|
/usr/X11R6/doc /usr/share/vim/vim57/doc /usr/lib/X11/doc /usr/share/doc /usr/local/doc /usr/share/gphoto/doc /usr/share/texmf/doc /usr/share/lout/doc |
This directory contains information on all hardware drivers except graphic cards. The kernel has built-in drivers for networking cards, SCSI controllers, sound cards, and so on. If you need to find out if one of these is supported, this is the first place to look.
(This is the same as /usr/X11R6/doc/.) In this directory you will find documentation on all of the graphics hardware supported by X, how to configure X, tweak video modes, cope with incompatible graphics cards, and so on. See Section 43.5 for details.
This directory has an enormous and comprehensive reference to the TEX typesetting language and the Meta-Font font generation package. It is not, however, an exhaustive reference.
This directory contains a large reference to the LATEX typesetting language. (This book itself was typeset using LATEX.)
HOWTOs are an excellent source of layman tutorials for setting up almost any kind of service you can imagine. RedHat seems to no longer ship this documentation with their base set of packages. It is worth listing the contents here to emphasize diversity of topics covered. These are mirrored all over the Internet, so you should have no problem finding them from a search engine (in particular, from http://www.linuxdoc.org/):
3Dfx-HOWTO | Finnish-HOWTO | Modem-HOWTO | Security-HOWTO |
AX25-HOWTO | Firewall-HOWTO | Multi-Disk-HOWTO | Serial-HOWTO |
Access-HOWTO | French-HOWTO | Multicast-HOWTO | Serial-Programming-HOWTO |
Alpha-HOWTO | Ftape-HOWTO | NET-3-HOWTO | Shadow-Password-HOWTO |
Assembly-HOWTO | GCC-HOWTO | NFS-HOWTO | Slovenian-HOWTO |
Bash-Prompt-HOWTO | German-HOWTO | NIS-HOWTO | Software-Release-Practice-HOWTO |
Benchmarking-HOWTO | Glibc2-HOWTO | Networking-Overview-HOWTO | Sound-HOWTO |
Beowulf-HOWTO | HAM-HOWTO | Optical-Disk-HOWTO | Sound-Playing-HOWTO |
BootPrompt-HOWTO | Hardware-HOWTO | Oracle-HOWTO | Spanish-HOWTO |
Bootdisk-HOWTO | Hebrew-HOWTO | PCI-HOWTO | TeTeX-HOWTO |
Busmouse-HOWTO | INDEX.html | PCMCIA-HOWTO | Text-Terminal-HOWTO |
CD-Writing-HOWTO | INFO-SHEET | PPP-HOWTO | Thai-HOWTO |
CDROM-HOWTO | IPCHAINS-HOWTO | PalmOS-HOWTO | Tips-HOWTO |
COPYRIGHT | IPX-HOWTO | Parallel-Processing-HOWTO | UMSDOS-HOWTO |
Chinese-HOWTO | IR-HOWTO | Pilot-HOWTO | UPS-HOWTO |
Commercial-HOWTO | ISP-Hookup-HOWTO | Plug-and-Play-HOWTO | UUCP-HOWTO |
Config-HOWTO | Installation-HOWTO | Polish-HOWTO | Unix-Internet-Fundamentals-HOWTO |
Consultants-HOWTO | Intranet-Server-HOWTO | Portuguese-HOWTO | User-Group-HOWTO |
Cyrillic-HOWTO | Italian-HOWTO | PostgreSQL-HOWTO | VAR-HOWTO |
DNS-HOWTO | Java-CGI-HOWTO | Printing-HOWTO | VME-HOWTO |
DOS-Win-to-Linux-HOWTO | Kernel-HOWTO | Printing-Usage-HOWTO | VMS-to-Linux-HOWTO |
DOS-to-Linux-HOWTO | Keyboard-and-Console-HOWTO | Quake-HOWTO | Virtual-Services-HOWTO |
DOSEMU-HOWTO | KickStart-HOWTO | README | WWW-HOWTO |
Danish-HOWTO | LinuxDoc+Emacs+Ispell-HOWTO | RPM-HOWTO | WWW-mSQL-HOWTO |
Distribution-HOWTO | META-FAQ | Reading-List-HOWTO | XFree86-HOWTO |
ELF-HOWTO | MGR-HOWTO | Root-RAID-HOWTO | XFree86-Video-Timings-HOWTO |
Emacspeak-HOWTO | MILO-HOWTO | SCSI-Programming-HOWTO | XWindow-User-HOWTO |
Esperanto-HOWTO | MIPS-HOWTO | SMB-HOWTO | |
Ethernet-HOWTO | Mail-HOWTO | SRM-HOWTO |
These are smaller quick-start tutorials in the same vein (also available from http://www.linuxdoc.org/):
3-Button-Mouse | DHCPcd | Leased-Line | PLIP | Software-RAID |
ADSL | DPT-Hardware-RAID | Linux+DOS+Win95+OS2 | Partition | Soundblaster-AWE |
ADSM-Backup | Diald | Linux+FreeBSD | Partition-Rescue | StarOffice |
AI-Alife | Diskless | Linux+FreeBSD-mini-HOWTO | Path | Term-Firewall |
Advocacy | Ext2fs-Undeletion | Linux+NT-Loader | Pre-Installation-Checklist | TkRat |
Alsa-sound | Fax-Server | Linux+Win95 | Process-Accounting | Token-Ring |
Apache+SSL+PHP+fp | Firewall-Piercing | Loadlin+Win95 | Proxy-ARP-Subnet | Ultra-DMA |
Automount | GIS-GRASS | Loopback-Root-FS | Public-Web-Browser | Update |
Backup-With-MSDOS | GTEK-BBS-550 | Mac-Terminal | Qmail+MH | Upgrade |
Battery-Powered | Hard-Disk-Upgrade | Mail-Queue | Quota | VAIO+Linux |
Boca | INDEX | Mail2News | RCS | VPN |
BogoMips | INDEX.html | Man-Page | README | Vesafb |
Bridge | IO-Port-Programming | Modules | RPM+Slackware | Visual-Bell |
Bridge+Firewall | IP-Alias | Multiboot-with-LILO | RedHat-CD | Windows-Modem-Sharing |
Bzip2 | IP-Masquerade | NCD-X-Terminal | Remote-Boot | WordPerfect |
Cable-Modem | IP-Subnetworking | NFS-Root | Remote-X-Apps | X-Big-Cursor |
Cipe+Masq | ISP-Connectivity | NFS-Root-Client | SLIP-PPP-Emulator | XFree86-XInside |
Clock | Install-From-ZIP | Netrom-Node | Secure-POP+SSH | Xterm-Title |
Coffee | Kerneld | Netscape+Proxy | Sendmail+UUCP | ZIP-Drive |
Colour-ls | LBX | Netstation | Sendmail-Address-Rewrite | ZIP-Install |
Cyrus-IMAP | LILO | News-Leafsite | Small-Memory | |
DHCP | Large-Disk | Offline-Mailing | Software-Building |
The LDP project's home page is http://www.linuxdoc.org/. The LDP is a consolidation of HOWTOs, FAQs, several books, man pages, and more. The web site will have anything that is not already installed on your system.
Some packages may install documentation here so that it goes online automatically if your web server is running. (In older distributions, this directory was /home/httpd/html.)
Apache keeps this reference material online, so that it is the default web page shown when you install Apache for the first time. Apache is the most popular web server.
Manual pages were discussed in Section 4.7. Other directory superstructures (see page ) may contain man pages--on some other UNIX systems man pages are littered everywhere.
To convert a man page to PostScript (for printing or viewing), use, for example (for the cp command),
|
groff -Tps -mandoc /usr/man/man1/cp.1 > cp.ps ; gv cp.ps groff -Tps -mandoc /usr/share/man/man1/cp.1 > cp.ps ; gv cp.ps |
Info pages were discussed in Section 4.8.
Finally, all packages installed on the system have their own individual documentation directory. A package foo will most probably have a documentation directory /usr/doc/foo (or /usr/share/doc/foo). This directory most often contains documentation released with the sources of the package, such as release information, feature news, example code, or FAQs. If you have a particular interest in a package, you should always scan its directory in /usr/doc (or /usr/share/doc) or, better still, download its source distribution.
Below are the /usr/doc (or /usr/share/doc) directories that contained more than a trivial amount of documentation for that package. In some cases, the package had complete references. (For example, the complete Python references were contained nowhere else.)
ImageMagick-5.2.2 | gcc-c++-2.96 | libtool-1.3.5 | pmake-2.1.34 |
LPRng-3.6.24 | ghostscript-5.50 | libxml-1.8.9 | pygtk-0.6.6 |
XFree86-doc-4.0.1 | gimp-1.1.25 | lilo-21.4.4 | python-docs-1.5.2 |
bash-2.04 | glibc-2.1.92 | lsof-4.47 | rxvt-2.6.3 |
bind-8.2.2_P5 | gtk+-1.2.8 | lynx-2.8.4 | sane-1.0.3 |
cdrecord-1.9 | gtk+-devel-1.2.8 | ncurses-devel-5.1 | sgml-tools-1.0.9 |
cvs-1.10.8 | ipchains-1.3.9 | nfs-utils-0.1.9.1 | slang-devel-1.4.1 |
fetchmail-5.5.0 | iproute-2.2.4 | openjade-1.3 | stylesheets-1.54.13rh |
freetype-1.3.1 | isdn4k-utils-3.1 | openssl-0.9.5a | tin-1.4.4 |
gawk-3.0.6 | krb5-devel-1.2.1 | pam-0.72 | uucp-1.06.1 |
gcc-2.96 | libtiff-devel-3.5.5 | pine-4.21 | vim-common-5.7 |