Read me first!

[ Site Index] [ Linux Index] [ Feedback ]

There's a lot to learn about Linux if you're just getting started: unfortunately, in the majority of cases, the manual that came with whichever distribution you paid for is the wrong place to begin.

Five to ten years ago, when you bought a UNIX operating system, you'd get roughly 2-4000 pages of printed documentation. Today, when you buy a Linux distribution that is actually three or four times larger, you get a weedly little paperback that explains (a) how to install the system, and (b) gives a Janet-and-John guided tour of the default graphical desktop before expiring in a fit of embarrassment. This is not a change for the better!

So: you've bought and installed a Linux system -- where do you turn first, to find out more?

First item on the agenda is the desktop environment you're using. Unless you're an expert (in which case, why are you reading this?), or something went horribly wrong with your installation, you'll be using either KDE or GNOME. Both of these desktop environments come with a help system: they're somewhat patchy, but you can get at them by clicking the help icon on the desktop.

If something went wrong and you've got a command-line prompt instead of a pretty graphical login that you were expecting, there's still hope: unlike Windows or MacOS, the graphical user interface (GUI) on a Linux/UNIX system is a separate program. What you're faced with is a working system that just happens to have a badly-configured GUI. In this case, your first port of call is the documentation for the X configuration system (Xconfigurator on Red Hat, SaX on SuSE, built into the installer on Caldera or Corel Linux). All stand-alone programs under Linux (ones you can start by typing a command at the prompt) -- and file formats, and system calls -- are supposed to have a manual page describing them. You can read the manual page for a program like, say, Xconfigurator, by logging in on the non-graphical login and typing:

man Xconfigurator
(man being the "manual" command). You can find manual pages that mention some keyword (for example, "editor") using the apropos command:
apropos editor
Which will produce a list of commands (and one-line abstracts) that you can then read using "man".

But man pages (as these help monographs are called) are only the start of Linux's documentation and support options -- and not always the most useful.

If you've read the wrong magazines, you might have picked up the two common ideas that Linux is cryptic (true, to the same extent that raw MS-DOS is cryptic), and that Linux is badly supported. The latter is fundamentally wrong -- the problem is that Linux is so copiously supported that sometimes it's hard to figure out where to start.

If you have a standard Linux distribution (that conforms to the Linux Standard Base, the first port of call is the directory /usr/doc on your own computer. This is a general dumping-ground for documentation that came with every package installed on your system; each package has a subdirectory containing whatever tutorials, administration guides, rants, or shopping lists came with it. In some cases these will be almost empty, apart from a copyright notice -- but in others, for example Nedit's directory (if you have Nedit), you'll find full manuals that you can read using the "less" pager (which displays files a page at a time in a terminal window). More importantly, there's a critically important subdirectory called /usr/doc/HOWTO and another called /usr/doc/LDP.

A bunch of wonderful people, working under the collective monicker of the Linux Documentation Project (or LDP) put these documents together, and they're worth their weight in gold. For example, suppose I want to learn about administering Linux. There's a whole book in /usr/doc/LDP, called the System Administrator's Guide or SAG. Go look in /usr/doc/LDP/sag, and take your web browser with you. Alternatively, point your web browser at the Linux Documentation Project, where the latest versions are online.

Other books in the LDP kit include the installation guide, the LPG (or Linux programmer's guide), network administrator's guide, and installation guide. You can buy copies of most of these on paper; some of them (such as Running Linux -- Welsh & Kaufmann, pub. O'Reilly and Associates) are indispensible if you're just getting started.

Incidentally, I mentioned a publisher: O'Reilly and Associates. O'Reilly publish the Nutshell guides, a series of books -- which, despite the name, are sometimes rather large -- covering aspects of Linux and UNIX in general. I can't recommend them highly enough. It's no coincidence that there are about six shelf-feet of Nutshell guides sitting behind my right shoulder: they're an indispensible aid to anyone who messes with Linux or UNIX boxes on a professional basis. In general, Nutshell books cover a specific topic; there's one on Sendmail, one on Learning vi (the vi text editor being the rather eccentric standard editor found on almost all UNIX systems), Apache: The Definitive Guide, and a number of other useful titles. In particular, O'Reilly publish some of their titles on CDROM: one particular life-saver is The Networking CD Bookshelf, which contains a paperback copy of "DNS and BIND" (which underpins the way internet hosts find each other in order to tranfer data), and a CD with additional HTML versions of "TCP/IP Network Administration", "Building Internet Firewalls", "Practical UNIX and Internet Security", "Sendmail Desktop Reference", and "Sendmail". I rate it as indispensible for aspiring network administrators -- which currently means almost everyone who wants to run a Linux system at work.

Linux is a big system, and nobody knows it all; it's often more important to know where to go to get the answer than to know the answer off-hand, and I happen to find those six shelf-feet of Nutshell books an indispensible personal library.

The LDP books are fairly good as general manuals go, but they don't cover every situation. That's where the HOWTO's come in. The HOWTOs are a huge knowledge base covering specific fields of Linux lore. For example, if you want to sort out sound configuration on your system, you can get most of the information you need from the Sound-HOWTO. Each HOWTO is a self-contained monograph on one particular field, aimed at all levels from beginner to technical specialist. They're generally systems-oriented; each HOWTO covers a subsystem, such as serial ports, printing, the care and feeding of the Kernel, Java on Linux, and so on. For specific problems, there are smaller mini-HOWTOs; these solve specific problems, such as how to get StarOffice working, or how to connect to an ISP via PPP.

Most Linux programs are still fired up by typing a command at a shell prompt. Sometimes you know what you're trying to do, but you need to know the syntax of those commands; it's at these times that you need two sources of information -- the GNU info system and the man pages. Man pages, as mentioned earlier, are brief, terse monographs describing a single program, system call, or configuration file. Suppose you can't remember all the options to the ls command (list files); you type "man ls" and up comes the monograph. Man pages are pretty dense going -- they're supposed to be detailed enough that a competent programmer can write a functional clone of the program from them -- but they contain the important information you need.

One point to note is that there may be more than one man page with a given name: for example crontab (the system scheduler) has two manpages -- one for crontab (the program that maintains user crontab files), and one for crontab (the crontab file format). If you type "man cron" you will only get the first one! This is because the man pages are assigned to eight sections, section 1 being user commands, section 5 for file formats, section 3 for system calls, section 8 for system administration commands, and so on. If you keep getting the wrong man page -- say, you want the crontab file format, which is in section 5 -- you can tell man to use the page in section 5: "man 5 crontab". (To find out what section the monographs are in, use apropos -- it'll list the section in brackets after the filename.)

The GNU folks didn't like man. Instead they came up with the texinfo system. This is a local hypertext system (unlike the web, which is a distributed hypertext system); it's built into the GNU Emacs editor, and there's a stand-alone browser called 'info' which understands the emacs keystrokes. (This is not a recommendation. I don't like emacs. It's bad enough having a perl interpreter build into vi these days; having a text editor that can psychoanalyse itself is just overkill. One of these days emacs will achieve consciousness and take over the world, if we don't stop it now.) If you're a coward, or just want to get work done without wasting time, you can access both man pages and the info database via the KDE help system or a similar multi-source help browser such as TkMan.

If you're a real completist, you may want to invest in a copy of the Red Hat Linux Library. This CDROM contains not only all the LDP books, howtos, man pages and so on, but the internet standards documents (a hefty compilation in its ownright), a bunch of relevent newsgroup archives, the full XFree86 documentation, and a load more. From release 6.2, this is bundled with Red Hat's more expensive editions, and you can buy similar documentation CD's from other places -- for example,

Sometimes your computer falls down and can't get up. At times like this you could kill for a copy of all the documentation on paper. Don't worry; that's where Dr Linux comes in. This is basically a big fat tome (weighing in at a hefty 2100 pages at last count) containing all the HOWTOs, LDP documents, man pages, and so on printed back-to-back. (Don't drop it on your foot or you'll be walking on crutches for weeks.) Something like this -- the whole lot, on onion-skin paper -- is indispensible. Odds are you won't ever cuddle up to in it bed, but if your system needs first aid it may be the only help you can get in a hurry. You can find it in larger bookshops with a computing section that covers Linux, or at many retailers who sell Linux distributions. There are a number of similar compendia of open source documentation on the market. In every case, it is important to check the publication date in the front matter before you buy one -- Linux is a moving target, and a book of HOWTOs that is two years old will be less than useful to you unless you are running a similarly-aged distribution.

If your system isn't dead, and you've got an internet connection, the net is your friend (sometimes). There are a plethora of Linux websites; you can start with, for example, for links everywhere under the sun. Each linux company runs its own website; for example, Caldera, Red Hat, SuSE , and so on. More to the point, if you are familiar with usenet, there are a myriad of newsgroups where the denizens will happily answer your questions (and occasionally flame you to crispy charcoal for asking them without reading the FAQs -- the first law of usenet is "lurk and read the group for a bit before you post"). A particularly good place to look is anywhere under the comp.os.linux hierarchy -- especially comp.os.linux.setup if you're having installation problems or comp.os.linux.x if you need help getting X working.

Next in the list of net-related help sources, there's IRC (internet relay chat). A whole bundle of IRC channels exist out there solely for linux-related chat. Ask a question and there's a good chance you'll get an immediate answer. An interesting point to take note of is that most Linux users are more knowledgable about their system than users of other types of operating system, and with one or two exceptions they're usually eager to help. This goes for both usenet and IRC, and any other sources of information you may find.

Finally, there's often no substitute for face-to-face (or face-to-phone) support. Besides the full support services offered by the main Linux distributions (who will happily talk to you on the phone and help with your problems if you wave a credit card in their general direction), there are quite a few Linux User Groups springing up. (These tend to hark hack to the days when personal computing was a hobbyist thing: I could get quite nostalgic about it all.) It's worth your while to check comp.os.linux.announce for announcements of a LUG near you, or even to do a web search in case a LUG has set up their own web site. There are LUGs in London (of course), Leeds, Manchester, Glasgow, Edinburgh, and probably most of the other large cities in the UK by now. You can use this large (but probably not exhaustive) list of local LUGS.

[ Site Index] [ Linux Index] [ Feedback ]