Debian GNU/Linux is a general purpose computer operating system and set of applications.
In this book, I will tell you how to install Debian GNU/Linux on your PC, how to connect it to the Internet, and how to use it.
Although I will mention a good many programs you can use, I will focus on two (Debian GNU/Linux comes with more than 1,500 programs).
Firstly, GNU Emacs will become your major tool for working with text of any sort -- for reading and writing email and net news, for writing a novel or a program, for text-primary Web browsing, for downloading images of Mars, for complex mathematics or for adding up columns of numbers, for remote or local system administration, for writing reports or writing books such as this.
Secondly, the GIMP, the GNU Image Manipulation Program, will become your major tool for graphics. You can use it to look at, alter, and create pictures.
My goal in writing this book is to tell you how to create and use a practical and efficient computing environment. Rather than tell you everything that you might want to know, had you the time and the interest, I will explain a single, practical, and efficient way to work.
This goal makes this book more limited than many of the others that help with Debian GNU/Linux. Rather than describe everything, I only talk about a few things. My experience is that you will want to take small steps at the beginning -- the job will appear difficult enough. Later, as you gain more experience, you can explore outwards. And if you already are experienced, this approach can save you time.
I think most of you who read this book will like my choice of tools. They are simple, powerful,, and well integrated. But some of you will prefer others. This is a matter of taste, subtle taste. GNU Emacs, for example, comes out of a tradition that says `let's try this, and if we don't like it, we will undo it'. Another tradition, the `shell-oriented' tradition says `let's decide what we want to do, be sure we are right, then do it'. Of course, in each tradition, you can work within the other -- the tools are powerful. But the underlying theme that makes the tool or tool-set feel coherent is an important part of why people prefer one to the other.
I am of the tradition that says `let's be very efficient, and especially, if I make a mistake, let me be able to fix it easily.'
Debian GNU/Linux is a three part, compound name. Some shorten it to `Linux', but each part has a meaning.
`Debian' is the name of a particular distribution, that is, it is the name of a particular collection of programs, more than 1,500, along with the way those programs are arranged and installed. The Debian project, a volunteer group of more than 400 people, creates and maintains this particular distribution. The word itself, Debian, comes from the first three letters of Debbie and Ian Murdock's names. Ian founded the project and needed a name ... `Red Hat', `Slackware', and `S.u.S.E.' are names of other GNU/Linux distributions. The various distributions are siblings. They are different from each other in detail, but similar overall. Each has a slightly different `feel' from the others. Each can run the others' programs.
GNU refers to the GNU Project that led to GNU/Linux. Richard Stallman founded the GNU Project in the mid-1980s to create a complete, freely redistributable operating system and set of applications. He himself wrote GNU Emacs and other essential programs. GNU refers both to a design environment -- a way for programmers to think about how a large project fits together -- and a legal environment. GNU software is freely redistributable.
If you get a copy of a GNU program, you have the right and the freedom to do anything you want with it. You can modify the program or hire someone to do so; you can make more copies. You can redistribute the program and charge money to do so, if you wish. You are forbidden only one action: you are forbidden to forbid. You may not take away from others the rights that you have. You must pass on to others who receive programs from you the same rights and freedoms to those programs that you have.
(I should mention that this last requirement is highly controversial. Many people want liberties for themselves that they want to forbid to others. They want to forbid others from enjoying the same legal rights as themselves. The desire to forbid and to ban is very strong. If you are one of these people, you ought go elsewhere. You will not be happy here. Also I hope that you employ programs that forbid you to do anything efficiently or comfortably. Fair is fair.)
Linux refers to the operating system kernel. This is the program that schedules and handles the various activities of your computer's hardware. It is named after Linus Torvalds wrote this kernel in the early 1990s. (Another Debian distribution with a different kernel, still experimental, is called Debian GNU/Hurd.)
I read several books that introduce Debian GNU/Linux or a sibling distribution, such as Red Hat. These books were not bad, except ... except they did not quite recommend the procedures and actions that I have found, over tha past 15 years, to be most efficient, simple, and helpful. Instead, they recommended other ways of doing things, ways that work, but that in my experience fail to make the best use of the wonderful tools that are here.
Moreover, one of the so-called introductory books caught my attention because it explained, in insufficient detail, the several different ways you can do each activity. It described, briefly, different window managers, different editors, different news readers, and so on. This is the right format for a book if you really want to learn your way around the distribution and have the time to do so.
However, if you do not have that sort of interest or time, then your best action is to take a single coherent, complete set of recommendations and work with them. Later, if you want, you can try other possibilities, but a single set of recommendations gets you working with a complete, efficient system. I will mention alternatives in passing; and you will be able to install them and their documentation if you wish; and try them; but I will not dwell on them. I will focus on a particular set of tools that I and a good many others have found work and work well.
I recommend GNU Emacs as a major part of your working environment. Why Emacs?
Many other books mention Emacs only in passing; I focus on it. Part, perhaps most of the difference between me and the other authors comes from a disagreement over what is simple. Here is an example.
Several authors recommend starting GNU Emacs in a manner that is intrinsically slow and inefficient, creates the wrong habits, and is recommended against in the Emacs manual in section `Entering and Exiting Emacs' in The GNU Emacs Manual.
The proper way to start Emacs is either by clicking on an `Emacs' icon
or menu item with your mouse, or by typing the single word emacs.
In contrast, what these books say is `start Emacs by typing the word
emacs on a line at your shell prompt, followed by the name of the
file you wish to edit; then press your return key'. Yes, that procedure
sounds fairly straightforward and simple. (Well, it sounds simple if
you are accustomed to `a command-line user interface'; it sounds more
complicated if you have never used a computer, or if you have worked
only in a computing environment where you click a mouse button on the
program. But please bear with me for a moment.)
This method works. And unless you are truly new to all this or are accustomed to a point-and-click environment, this method looks simple.
But you should not do this! You should either simply type emacs,
(and your return key) nothing else, or point and click on
`Emacs' with your mouse.
"Well," you might say, "typing the one word emacs is easier
than typing two words; and clicking a mouse button is easier yet. Why
do these other books recommend this other way of doing things?"
The answer comes with what you do next. You seldom do just one thing with a computer. However, the `emacs filename' procedure suggests that you use Emacs to edit a file, and do nothing else. But in practice, you do a great many different activities on your computer: read or write email, write a novel, write a program, log onto or fix a computer that is kilometers away, read net news, browse the net, perform a least squares linear regression, or play games.
The best way to use Emacs is simply to use it. Don't dilly-dally around starting a new Emacs; use the one you have. Simply go to it.
However ... back to the question of `simplicity'. Each of the activities that you can do with Emacs takes time to learn. Not much time, but some.
Mail requires you know about mail, displaying a calendar requires you know about the calendar. You can avoid having to learn any of this is you do not do it. This produces an apparent increase in simplicity. And this is what these other books recommend: don't do much of what you are likely to want to do. The `wrong way' to use Emacs is to use it only for one of its many jobs, for editing.
At first glance, that is simpler than talking about everything else Emacs can do. On second glance however, it becomes apparent that this procedure is more complicated, since you will -- I assure you -- want to do more than edit -- that you will want to read and write email, browse the net, and perhaps write a novel, program, article, or work of mathematics. You may want to see a calendar or create a Web page.
These other books, that I am trying to pull you away from, explain how to do all these other activities, but almost always with other programs, often with programs that work less well than Emacs. You end up having to learn as much, but the learning is spread out over more time, and is more disorganized. This latter way of doing things appears simpler, if you do not think ahead, or if there is no one to tell you of the path ahead, but in practice is more complicated.
Here is where long-term simplicity comes in. GNU Emacs is an extensible and integrated working environment. Everything in it fits together, so that once you have become somewhat familiar with one procedure, it becomes easier to become familiar with another.
Because Emacs is extensible, people have added a great many `other' features over the years. You may well want to ignore most of the other features. You may not care about Mayan or Islamic calendars; it that case, ignore them. But very likely, there will be a batch of activities, a half dozen or so, that you will use your computer for. And if these activities are primarily text-oriented, the Emacs environment is likely to be the best.
As for starting Emacs: I start Emacs by clicking a mouse button. Also, I don't start Emacs very often. Obviously, after an electric power failure, I have to restart the computer and restart Emacs. Occasionally, I stop and start Emacs at other times. (If you have worked with a system that crashes or required rebooting more often than power failures, it was broken. Some operating systems are fragile; GNU/Linux is robust. Unless you have an intermittent electric power supply and lack an uninterruptible power source, you should not crash or need to reboot.)
Some people turn their computers off every day. I can understand this. You turn off a car engine when you don't use it. But computers are a species of electrical equipment that are better left running the whole time. The hardware lasts longer (although I have to say that modern components are designed to be turned on and off and last well under all circumstances). From a more niggly point of view, GNU/Linux takes a while to start, as does Emacs. Both are big, complex systems, like a richly textured piece of oak. So, if you possibly can, I recommend you leave your machine and Emacs running indefinately.
This document will help you install Debian GNU/Linux and then to run it.
After the beginning, you will mostly be running one or other or several programs at the same time.
I will suggest various activities.
If you read this document in Info inside of GNU Emacs, you can undertake these activities as they appear -- you can readily do several things at once with Debian GNU/Linux. (This is easy to do and is explained when the time comes.) Alternatively, you can read this introduction as a printed book while sitting beside your computer. (This is what I like to do; I like printed books.) If you are not sitting beside your computer, you can still read this book, but in this case, it is best to treat it as a novel or as a travel guide to a country not yet visited: interesting, but not the same as being there.
Much of this introduction is dedicated to walk-throughs or guided tours of activities that you are likely to do, with hints on how to make your computer a seamless part of your world. Also, I hope that you will pick up the habit of browsing through your hard disk. The Debian GNU/Linux distribution contains over 1,500 packages. Emacs alone includes several hundred different activities, from abbreviation handling, through mail, to yow (a command to display random Zippy quotations).
You can mine your distribution for ideas. Having Debian GNU/Linux is, as I said once about GNU Emacs, like having a dragon's cave of treasures.
Finally, I hope to convey some of the skills for using GNU Emacs, the GIMP, and Debian GNU/Linux as a whole to learn ways of employing your computer that you don't know. You can employ tools to help you understand what puzzles you or to find out how to do something new. This self-reliance is not only a pleasure, but an advantage.
This text is written as an elementary introduction for people who are not experts with computers. If you are an expert, you may not like this primer -- you may prefer a reference, such as the HOWTO files that come with GNU/Linux. These are located in the `/usr/doc/HOWTO' directory.
My thanks to all who helped me with this book. My especial thanks to Ian Murdock, who started this wonderful distribution, to Richard M. Stallman, who started the GNU Project that led to Debian GNU/Linux, and to Ginger Andrews, who, unknowingly, inspired me to write this book. My mistakes are my own.
<< Nothing yet >>
<< items on keyboards, monitors >>
The installation menu will ask you what type of keyboard you have? `US-PC'is the default. I would like to specify the type of keyboard I want, which employs an `emac2.map' keyboard layout, but the installation menu does not provide this. Instead, it offers you typical national layouts.
In my case, I select `US-PC', which defines the usual 101 key US keyboard. This is a layout in which the CapsLock key is to the left of the a key -- rather clearly, this layout was designed for typewriters and even though this keyboard is sold to people who use computers, neither the manufacturer nor the marketing people have learned that you use a computer differently from a typewriter. A CapsLock key was important to a person using a typewriter since CAPITAL letters were the primary form of emphasis. But with a computer, you can emphasize text in other ways. Nowadays, the use of capital letters is considered a rude form of shouting and should be avoided. The prime use of the CapsLock key is among programmers who write variables in upper case to distinguish those symbols from others.
If you program in a language that does not use upper case, or if you do not program, you will not need a CapsLock key.
Note that the letters or names written on the physical tops of the keys on the keyboard are irrelevant to what the computer does. Each time you press a key, the keyboard sends an electrical signal to the computer. The computer translates that signal into one or other action. Often, the action is to insert into whatever you are typing a character that corresponds to the letter or name written on the physical top of the key. But the action can be anything else. The CapsLock key is not restricted only to toggling whether all subsequent letters are upper case. You can bind it to the action of inserting a letter, or most commonly, to the action of acting as a `modifier' key, in particular, a control key.
A control key is pressed at the same time as another key. In this
respect it acts like a shift key. When you press a shift key and a
letter key, the letter inserted is shifted to upper case. When you type
a control key at the same time you press a letter key, the computer
interprets the action as a letter modified by control, which,
internally to the computer, means a different action than inserting a
character. For example, when you press the letter a, customarily
the letter a is inserted into what ever you are typing. However,
when you press the letter Ctrl-a in Emacs, customarily the cursor
moves to the begining of the line on which it is sitting.
In any case, as a computer rather than a typewriter user, you will need a control key, Ctrl key. Moreover, you will want to have it located in an easy-to-use place. The standard US keyboard layout does have a Ctrl key; indeed it has two of them, one to the lower left and the other to the lower right of the primary key area. Neither position is very convenient.
As I said, the people who designed the standard US keyboard came out of the world of typewriters. Even the most awkward use of a computer is more efficient than use of the best typewriter, so any placement of keys on a computer keyboard is better than any typewriter keyboard. Moreover, some early uses of computers treated them as `super-typewriters'. People wrote in upper case as if they were typing on an antique manual. The habits associated with old technologies continue into the new. This is why Ctrl keys are in such awkward places.
The best place for a control key is to the left of the a key. Later in the installation, we will shift the keys so the key with CapsLock written on it becomes a control key.
If you really want to be efficient, and if you want to save your hands from possible injury through repetitive stress or carpal tunnel syndrome, consider adopting a key layout that is quite different from the standard `QWERTY' layout invented by Christopher Sholes in the 1870s.
Sholes was an important inventor of the typewriter (as with most technologies, there were many inventors; Sholes was one of them). He made type writing machines that worked, but they had a bug. His typists began to type too fast. His early type writing machines did not use springs to swing back the keys, but let them fall back with gravity. By `key' I mean in this context, the shaped metal at the end of a finger-long rod that strikes the paper. (In other contexts, by `key' I mean the object you press or else `the association between what you press and what the computer does'. This latter is more strictly speaking the `key binding', but may be shorted to key.)
Sholes gravity return menchanism was slow, so keys jammed. Sholes invented one solution to this problem by moving keys to different parts of his machine so that those keys that are likely to be struck one after another are far apart. At the same time, this action made typing harder, and thereby slowed people down. This solved Sholes' problem. It was better for a typewriter to be slow than to jam.
Moreover, Sholes' layout became sufficiently commonplace that it became the standard. It was retained even after typewriter manufacturers began to use springs instead of gravity to snap the keys back. As a general rule of history, it is easier to change the machinery a person uses than to change that person's habits.
A keyboard layout that works better than Shole's `QWERTY' layout is the Dvorak layout. (`Dvorak' is pronounced in an `American' fashion, `dvor-ack', with no `zh' sound as you might expect.)
On a Dvorak keyboard, keys are arranged so that most commonly typed words are under the fingers of the main row, you tend to alternate pressing keys between the right and left hands, and if you type a series of letters with one hand, the typing sequence tends to be from a smaller, outside finger inwards to a bigger finger.
There are numerous arguments over how useful the Dvorak layout really is. In the days of manual typewriters, the major typewriter companies eventually cancelled speed contests when the Dvorak typists began to win consistently. Speed has become less important now, since it appears that a contemporary typist's main limitation is speed of thought rather than the speed of typing -- typists need to figure out what words to type, as well as to type them. There is some evidence that novices learn to type in less time if they use a Dvorak rather than QWERTY keyboard, if, and this is very important, they also follow a Dvorak course on learning to type. (The exercises for the two types of layout are different; main row typing exercises for the one are different from main row typing exercises for the other.) This time savings may be important if you are teaching a new group of people to type, such as managers who previously employed secretaries. They will hate the idea of typing, since it demeans them, and they will hate typing exercises since they are boring and remind them of less pleasant parts of their long distant youth. A somewhat shorter course is an advantage.
Mostly, the advantage of a Dvorak layout is that it somewhat reduces injury. This is important for people who type a lot.
The two main disadvantages have to do with relearning and with other machines. If you already know how to type on a QWERTY keyboard you will have to relearn how to type on a Dvorak layout. You will be slow and awkward while learning. Morover, if you frequently shift from one keyboard to another, and most of the other keyboards are set to a QWERTY layout, you may find yourself shifting yourself from one layout to another rather than shifting the way the computer defines the keyboard to suit you. It is harder for a person to shift back and forth than a computer, so people often stick to the injury-producing, slow, but good enough QWERTY layout.
What you look at is called, variously, a monitor, terminal, screen, or display. Terminal is a somewhat old fashioned word and is often associalted with the character-only, black and white (or green and white) devices of the past. Screen and display are sometimes used today to describe any sort of display mechanism. Monitor is the most common current word.
Debian GNU/Linux and GNU Emacs work wonderfully with old-fashioned, character-only, black and white terminals; they also work wonderfully with contemporary, color monitors that show images of one sort or another as well as text.
Modern color monitors can be run as old-fashioned, character-only, black and white terminals and I am going to recommend that you start that way when you turn on your computer. This is simpler. After turning on your computer (a rare event, since you can leave it running more or less indefinately), you can then start a graphical, color display called the X Window System. Most of the time you will be using X Windows.
Screen space is valuable. I like to have as much as possible. Normally, I run two main windows on my screen side by side. Each window is 80 columns wide and 66 lines high, with a little space between and beside them so I can see my other windows, or see their miniature icons. On a smaller screen, I run one main window that is 80 columns wide and 36 lines high, with other windows mostly iconified.
Usually, I run ten or twelve `live' windows on my screen -- I can keep track of that many -- but keep most of those I am not currently using as small icons, so their contents do not distract me. As you would expect, I keep these various activities running for weeks at a time.
As for technical details: you will want a monitor with a `pitch' of .28 mm per dot or better, otherwise it will look too fuzzy. Your video card should enable you to refresh the screen 72 or more times per second, otherwise you may see flicker. You may be able to get by with a slower refresh rate -- a dark background on your screen helps as does being born with the right kind of eyes. Fortunately, most modern displays can be operated comfortably and safely. (Safety is important: tired eyes are not merely uncomfortable, but you may lose the ability, temporarily, to bring objects to a focus. This is dangerous if you are trying to walk across a street or drive a car; an oncoming car will simply fade into a blur. This happened to me once; I managed to get home safely.)
Before talking about how to install software I want to say a few words about your hardware.
I am assuming that you will run what is essentially a PC of some sort. It may be quite old, but it cannot be too old. It must use an Intel 80386 or better chip. (Better chips include the 486, the Pentium, and steps up.) Chips made by competitors to Intel work fine also. Or if you are not using a machine in the 80386 line of descent, you need a machine with a comparable or better chip, a 32 or 64 bit chip. The old, 1980s IBM XT machines used 80286 chips that cannot run Debian.
And although Debian GNU/Linux can run on quite small systems, memory and hard disks have become so inexpensive that I recommend you employ considerable memory and a quite large hard disk, even in an old machine.
As a practical matter, Debian and Emacs should not run be run on fewer than 8 megabytes of RAM. Experts can and do use half that, but this book is not for them.
Also, since the price of RAM has come down, I recommend you employ at least 64 megabytes, although you can do perfectly well with 16 or 32 megabytes. Nowadays, 64 megabytes costs under US$100, and this amount is worth it, especially if you are doing anything with graphics. (If you are not using X Windows and not doing any graphics, you hardly need more than 8 or 12 megabytes.) I have 128 megabytes of RAM and 14 gigabytes of hard disk as I write this. Quite possibly, when you read this, prices will have come down further. If you can, use more memory and a bigger hard disk.
Also, nowadays, the price of hard disks has come down and I recommend those larger than a gigabyte. But if you must, you can work with smaller. Certainly, you can run a system with 250 megabytes and perhaps one with fewer than 100 megabytes; you just have to be careful how much you load onto your disk and how much you save. Moreover, if you can, employ a SCSI hard drive, which is better able to handle tough jobs, rather than the less expensive but more common IDE drives.
Consider spending a little extra for a robust power supply that easily handles voltage drops and spikes. Look for cooling fans that use ball bearings rather than bushings. Ball bearings last longer. This is all a matter of insurance. Many people use ordinary equipment with no trouble for years and years. But the more rugged your hardware, the less likely you will have trouble.
Finally, I should mention that your machine needs both a 3.5" floppy diskette drive and a CD-ROM reader (or DVD drive). Also, you will probably install a modem, a printer, and a backup mechanism of some sort, most likely a tape drive.
About the Author
Robert J. Chassell has worked with GNU Emacs since 1985 and with Debian GNU/Linux since the beginning. He writes and edits, has an abiding interest in social and economic history, and flies his own airplane.
This document was generated on 21 September 1998 using the texi2html translator version 1.51a.