Saturday, June 16, 2001

03:05 AM

read book now




BOOK Reviews


This is the third of the pages of Linux advice I am getting from readers.

IF YOU GOT HERE DIRECTLY, please go to the Home Page, or What Is This Place?, or even What's New. If you are interested in the BYTE Fiasco (or if you don't know there was a fiasco), please go look there. Don't just send me mail without finding out a little about this place. I understand that many Linux enthusiasts have been directed to this section without passing through the home pages. We'll both be better off if you find out before you turn on your flame thrower.

Depend on it: the organization of these pages will change as I work on Linux. I'm starting now with some mail and advice, but later I will do a full report coherently organized. You're seeing a sort of specialized VIEW of Linux. Collectively, all this is invaluable: I wish I had had all the material in the adventures when I started. If you're contemplating LINUX, you will do well to read these pages, and probably to print them out.

The LINUX experiences here are organized into several pages. First, there are these pages which contain advice from readers, and sometimes my comments. This is a mixed bag, but I tend to post mail that I wish I had had before I started. If you want to play with LINUX, you will do well to look these over. They of course point to many other places where there is a bewildering amount of advice, most of it friendly. Most. The first letter of Part Three is fortunately atypical.

Some of the material in the Adventure pages (1)  (2)  and (3) is in response to questions I asked in:

Linux Queries: questions I had (or may have).This is for you to help me out: I'd like advice from those who know. I'll translate all that and put it up here or in view.

There are also:

Linux links and references: reference information from readers. NOT INDEXED well. VERY USEFUL, including links to freeware like Mandrake and Star office.

Finally, my experiences in installation are contained in the LOG PAGE.

There are many pages for historical reasons. The relationship among these is not exact, and I may one day consolidate them all into one page. For the moment this is what we have.

I admit a certain wicked delight in posting the first letter here.  It is followed by two good letters.


 The Second Computer Revolution a spinoff essay.

Conflicting advice on kill -9 Pro Con (and thanks to both of you. There's a lot more than kill -9 in the Kirsch letter.)

 Mandrake Linux

Dr. Mark Huth summarizes who should and should not use Linux

read book now





Joe Smith []

Subject: Linux Help

> I used the mouse to select applixware (which has a big * on the

> button). I clicked. Now the machine is totally locked up. NOTHING I do

> will produce ANY RESULT at all. Eventually I am going to have to pull

> the plug. Aargh! I think Linux, or at least Applixware, hates me.


You have serious hardware or misconfiguration problems. Applications essentially cannot hang the system. I’ve run Applixware on Linux on a 486 with 20M RAM with no stability problems.

I wanted to help, but I think you have a problem that I can’t help with: the attitude that you should be able to click on a few buttons and become a Computer Operator. I agree completely that Unix could (and should, and will) be easier, but you cannot master any useful skill without study and practice, and computers are no different. You could no more pick up a cello and expect to play like Yo Yo Ma. A Windows power user is able to load the piano rolls and press ‘play’, and the music that comes out of the piano is perfectly fine, but they are not a musician by any definition.

If you want to USE Linux, buy a machine thats pre-configured to boot Linux and run X and Applixware with a mouse click.

If you want to do it yourself, find a good introductory book and take it a step at a time.

If you have questions about harware compatibility, search DejaNews.

Sigh, I suppose there’s no recipe for chaos like ignorance and impatience.



Joe Smith

University of Pennsylvania

Department of Physiology

Philadelphia, PA 19104


Gosh. Gee Whillikers! You mean I can't learn it all in five minutes? But I was so expecting to!

Regarding the 'impossible' crash, I can only say that I keep very good logs, I have not been able to duplicate the problem but I have also not tried very hard, and it did happen; and while from the body of your letter I am sure you believe I make things up, I don't. Odd. Microsoft usually believes me when I say there is a problem. They've even had their product managers come down here to look when I find something repeatable. But I can understand.

And Gee, I so wanted to be able to play like Heifitz. You mean I won't be able to? And I got this violin at the local pawn shop, too.

Now shall we be serious for a moment? I don't know what you think a "Windows Power User" is. In my case, I am someone who has managed to make a pretty good living writing books and articles on, with, and about computers as well as on a good many other subjects but using computers to write them. I did that early on enough that my first personal computer is on display in the Smithsonian. Power Users are in my lexicon people who have jobs to do and know how to get them done; and what the hell that has to do with playing the cello I don't know. If you believe that my novels have somehow written themselves with Windows, then I suggest you get Windows fast and try it. I have had nine books on the NY Times best seller list and one of them was Number One. It was written on a computer. I suppose you can say that it came out like music from a piano roll, but I wouldn't say that.

I fear I don't quite understand why you bothered to write this. I suspect you achieved your purpose by getting me to respond.


NOW a second letter with precisely the same subject, which came about an hour after this first one:

 Roy Hulen Stogner []

Subject: Linux Help

This is a somewhat belated helpful offer, to be sure, but while I have been a fan of Linux for a year and a fan of your science fiction for years, I only discovered recently that you were trying to learn Linux. Don’t expect the learning to be a quick process, however. One of the interesting side effects of using an operating system designed with only experienced users in mind is that most operations can be accomplished with a one line command or a one line change in a config file... but without experience or outside help it can take days to figure out what that line is. DejaNews is a godsend.

I assume since you are running X at the moment that the questions on your site regarding video (the only driverless card of importance I know about is the Banshee), ethernet (all 100baseT + 10baseT cards do have drivers now, but if you don’t have a PCI card or a PNP card, or you don’t let the Red Hat utilities set it up for you, it can take some work to configure), and sound (SB-compatibles and Ensoniq PCI cards are both well supported) are all outdated.

Making the huge mess of partitions you did is unnecessary and may turn out to be a pain later, but is a common mistake; the only time I’ve reinstalled Linux was to do so with a sensible set of partitions.

/boot does not need to be on a separate partition unless you have a large hard drive on an old BIOS. Any boot loader can only "see" things that it can reach through the BIOS, and if you have an older BIOS that can only "see" the first 1024 cylinders or so, then making a /boot partition in the first 1024 cylinders is a workaround for that. Windows doesn’t have this problem, simply because Windows tends to be given an entire drive, and always puts it’s boot data at the start of that drive.

/src I’ve never heard of. /usr/src only tends to be used a lot if you develop or custom-compile a lot of programs yourself, and it fits nicely into /usr even in that case.

swap is the only thing that efficiency really dictates be given it’s own partition. You can use a swapfile in your filesystem, but a separate partition in this case is faster. You want enough swap space to add a buffer of virtual memory to your physical RAM. When I was running Linux on a computer with 24MB RAM, for instance, I gave it 48MB of swap space and never saw more than 8-16 of that in use. I’ve got 128MB on my new system, and haven’t bothered to create a swap partition. On the contrary, I’ve never seen more than 64 MB or so in use by programs, but Linux is nice enough to use the rest as a dynamically-resized disk buffer/cache for all slower physical filesystems. In Windows I can’t set more than a 1MB cache for my CDROM. In Linux, whatever RAM isn’t being requested by a program or kept free to reduce memory fragmentation gets used for cache or buffer space depending on what media benefits from it most.

If you are giving gobs of space to Linux, the only reasons to separate that space into different partitions are convenience, fsck speed, or drive efficiency. If you have multiple drives, putting different partitions on each (or using the sofware RAID support) will increase performance as both drives are hit at once. If you have a many GB drive, putting /home and /usr on separate partitions will speed fsck (filesystem check, like scandisk) time during periodic checks or after power failures. If you want to give more space to or take space from Linux, you either need the latest Partition Magic to resize ext2fs partitions, or you need to add/remove space a partition at a time. If you have a number of computers you want to synchronize software or data between, the most efficient way to do this is often to make /usr or /home mounted over the network, in raw form with NFS or cached with CODA.

I’m assuming you have X configured properly, and "startx" works to your satisfaction. I was sorry to hear your problems setting X up the first time. There is an "XF86Setup" program that starts you into a VGA GUI, lets you test and configure your mouse protocol on the fly, choose your video card and monitor, test the settings, then adjust image size and positioning in software. Unfortunately, I haven’t seen it bundled in Red Hat 5. Go figure. If you are changing video cards in the future, mail me and I’ll send you an XF86Setup package beforehand.

You don’t need to reinstall to change network cards, simply tell Linux to use a different driver. Changing "alias eth0 eexpress" to "alias eth0 tulip" in /etc/conf.modules was all I had to do. Red Hat’s "control-panel" tool gives a graphical interface and list of chipsets to choose from if you prefer that.

I know reinstalling Windows often is a good way to clear out the registry, make sure drivers aren’t interacting heinously, and in general fix stability problems. Rebooting Windows is often necessary to switch drivers, change an IP address, or install new DLLs.

This isn’t so anymore. In short, there is never any reason to reinstall Linux except to change distributions, and there is never any reason to reboot Linux except to change kernels (or to cut power). There may be other reasons that look like a reinstall or reboot will be a solution, but there is always a simpler way.

Most "lock-ups" in Linux aren’t. It is possible you started X with no mouse support and a window manager with no keyboard shortcuts. This isn’t the end of the world.

Some hot keys you may not know already:

Ctrl-Alt-Backspace will kill the XFree86 (which I would recommend over the commercial MetroX; you may have installed either with Red Hat) X server.

Ctrl-Alt-Delete when not in X will reboot the system. Ctrl-Alt-FunctionKey will change virtual consoles. Red Hat ships by default with 6 login consoles, and X starts in the first free console, so for instance Ctrl-Alt-F1 will change you to the first console and Ctrl-Alt-F7 will change you back to X.

In the above situation, you probably could have killed the X server and tried again without rebooting, much less hitting the reset key.

Even if you can’t use console input for some reason (say, you run a 3dfx program that does not restore pass-through mode) you can always telnet in from another terminal and fix things from there.

Now that you have X set up, you’re probably at the point where the first command you run at the console prompt is "startx". If you want to simply login straight to X, edit /etc/inittab and change the runlevel to start the X Display Manager xdm. There will be a line like "id:3:initdefault"; change the 3 to a 5 and you’re done. Running "/sbin/telinit 5" will change runlevels immediately; perhaps you should do that before making the change a permanent bootup feature.

I’m sure you’ve already heard innumerable suggestions of "install KDE" -

let me add my vote to that. It is a RAM hog still, but that won’t make a

difference on a 64MB system. You can find rpm packages for everything

required at:


Download *.rpm from that directory, run "rpm -Uvh *.rpm" (U for upgrade, v for verbose, h for hashmarks) on the result, then run "ln -sf /opt/kde/bin/startkde /home/jerryp/.Xclients" (this makes your Xclients script, the list of things that run when you start X, a symbolic link or pointer to the kde initialization script) to make KDE your default desktop environment. The next time you run startx or login to XDM as jerryp you should be in KDE.

Hope that helps, hope that wasn’t too verbose. Feel free to write if you have questions or need help.


Roy Stogner

Thank you. More Advice on getting KDE; I'll have to do that. I do wish I'd had the X windows configuration and test you mention. Darnell tells me I probably should have tried the alt trick to get a different console; alas I didn't know to do that, and it sure was dead! The mouse wasn't behaving properly at all. I haven't been able to duplicate the problem, not that I am keen to.

I would have had to try pulling the plug at some point, so later, why not then? That is, I do all these stupid things so readers won't have to, and certainly you must find out what will happen if there's a power failure.

I'm taking a bit of time off to build a W98 system so I can play with DVD and Digital TV, neither of which are supported by any Linux system I know, and I want to do some USB testing as well. Meanwhile I have the Nutshell book in the bathroom…

Thanks for the help.

And a third letter that came the morning after:


Harald Kirsch []

Dear Mr. Pournelle,

it was always a pleasure to read your column in BYTE about your adventures into the software world pretending to be the most avarage L.User on earth. As a long term satisfied Linux user, I always regretted that you never had something to say about Linux. Consequently I was happy to find your Journal of Linux Installation on Linette.

No, I am not going to insult you like a few brain-deads certainly did. In fact it was great reading, because you put the fingers on the wounds were it hurts most. Not that I am masochist, but only this can open the eyes of the many UNIX/Linux experts in order for us to recognize the problems L.User has with such a system. It contains many inconsistencies and one often needs a lot of background knowledge to use the system or interprete its reactions to certain input. Nevertheless I am afraid that this will not change a lot in the future, mainly because so many individuals with their own special likings use and influence the evolution of the system. For the insider, it is configuration heaven, because there is almost nothing you can’t adapt to your likings. For the newcomer it is certainly hell; well, at least very frustrating.

The question is, if you have got the nerve (and the time) to become an insider. From your BYTE column I reckon you have enough staying power to make it. Meanwhile I am looking forward to read on in your Linux Journal to learn more about the strange things I have memorized over the years.

Although I cannot help you with your particular problems of ApplixWare, because I did not try it yet, I would like give some general hints, just in case others did not yet tell you.

First of all, it is really hard to believe your description of ‘the system is totally locked’. Of course these things happen, but ... you can try some things before you have pull the plug.

  • X can often be forced to shut down with CTRL-ALT-BACKSPACE (not DEL!)

You end up in console mode at the prompt and can give startx another try.

  • Without exiting X, you may be able to switch to a virtual console with CTRL-ALT-F2, CTRL-ALT-F3, etc. This may work even if X is otherwise unresponsive. Once you have a new console, log in (as root) and try to kill the X server. The command ps ax | grep X should result in something like

154 ? S 1:44 X :0

220 p1 R 0:00 grep X

The next command uses the first number in the line containing the X, which is your X server, to kill it. kill -9 154 The ‘154’ is an arbitrary unique number which was assigned to the X-program when it was started, called process-ID. The ‘-9’ is the UNIX way of saying ‘no mercy’ :-)

After killing the X, you may give it another try with startx.

  • One of the inconsistencies mentioned above is, that once you have found yourself a new console with say, CTRL-ALT-F2, you switch to other consoles just with ALT-F3, ALT-F4, etc. If you don’t kill X, you may find back to X at some higher digit, e.g. with ALT-F7. The exact number depends on your system’s configuration (I dunno what RedHat does in this respect currently.)
  • You seem to have installed the whole system anew for the new network card. This is true Microsoft-User-Behaviour ™. In fact it would have been sufficient to compile a new kernel or, with the modularized kernels of RedHat, only the applicable driver module would have to be configured. --- But how should one know? Admittedly, there is just too much to read.


Harald Kirsch

Too much to read: precisely. The Control-Alt-F2 I didn't know, and probably would have worked. Since at some point in time I had to do the pull the plug test, I am not sorry to have done it, but it would have been interesting to see how to recover from the problems I built myself. And of course you have hit on my secret: I tend to be J. Random User. It's a bit more and less than a pretense. There are so many things to do that someone with a better memory than mine (my son for instance has the memory I used to have when I was his age) would still find it hard to recall them all, and given my age, I do tend to forget things I have not written down. Thus this log book…

I guarantee you that control-alt-backspace did not work in the console situation I was in: I tried control-alt-everything including control-alt-cokebottle, and none of those did anything. And as I said, pulling the plug resulted in a long startup but no other problems.

The full reinstallation wasn't all that big a problem, and I did want to be sure my problems were not caused by something I had done wrong in a previous installation, and I suspect it was easier to reinstall than to learn how to compile a new kernel. That latter sounds formidable…

Thanks, Jerry


We also have this on kill 9:


Jeremy Chatfield []

One of your correspondents (Harald Kirsch) suggested killing the X Server (the process called ‘x’) using ‘kill -9’. Please try to use ‘kill’ first. This will send a signal 15. Signal 15 will let the X Server tidy up, such as resetting certain registers in the graphics system. If you use signal 9, the Server is terminated without a clean up. This can sometimes cause the Server to *not* start the second time, or to mess up text display.

I’m not quite sure why it has arisen, but there’s seems to be a general faith in using ‘kill -9’. This should be a last resort, not a first resort. The difference is that there is no reason why a word processor or editor should not create a last backup copy on a signal 15; it has no oportunity to do so with a signal 9. If you have a database, then you might want to let some records be unlocked or flushed to disk, which won’t happen on a signal 9. There are, of course, some occasions when you do need a fast, no recourse, process termination. Occasionally, some processes won’t correctly terminate with a polite signal 15. Netscape often gets into a tizzy, and sometimes needs a hit with a 15, then an 11 or a 9 :-)

Cheers, JeremyC.


Jeremy Chatfield, Xi Graphics tel:+44(0)1234.710030

Commercial X Products: Servers, CDE, contracts and custom development

tel:+1.303.298.7478 fax:+1.303.298.1406



Matthew Benjamin []

Mr. Pournelle,

Nice work on this.

From your curmudgeonly tone in the Chaos Manor columns, I assumed you’d give up after the first few obstacles. Thanks for sticking with it. And of course, do take that other guy’ advice, and try KDE. It’s an _extremely_ slick interface, very like a much improved, UNIXified successor to the Win32 GUI.

The GNOME folk will probably tell you about their answer to KDE. If not, they should; It too is very promising. It’s not day-to-day usable at present, though, and KDE very much is.



Matt Benjamin

Thank you. You aren't the first to tell me I should look into something other than Red Hat. You will also understand there are time problems: I really have books to write. I confess that part of my dastardly plot was to do just enough to get a number of you to recount your experiences, so that I could skip some of the next problems. After all, for 20 years I have been reporting stuff that I can label as "I do these ridiculous things so you won't have to," and LINUX is a bit like that.

I admit to being a curmudgeon. At my age with my background I've earned it. But I am a pretty stubborn curmudgeon.



James M. Burton []

The two books I have found to be most useful when dealing with linux are:

1) Linux in a nutshell (o’rielly)

2) Using Linux (QUE)


I have a half dozen other learn UNIX books, but these are the two which allowed me to survive best.

I also keep a copy of Dr. Linux (Redhat) handy - it is a paper version

of the Linux howto’s

Hope this provides some help.


James M. Burton Bus. 306.569.7790 Fax. 306.949.0430

Internet Information Services 2132 Broad St.

BFS Media Group Inc. Regina, SK CANADA S4P 1Y5

"When you will survive if you fight quickly and

perish if you do not, this is called dying ground"

- Sun Tzu, The Art of War


I'd agree: I have a bunch of books, and those look pretty good. I am now taking some time off to read the Nutshell book.


Patrick Phalen []

TO: Jerry Pournelle


Linux Weekly News Daily Edition just posted an item about your ongoing Linux install journal. Welcome to The Big Sandbox! I am very pleased to know that such a prominent voice among Windows users is taking a shot at learning what this Linux thing is all about.

I read with interest (and empathetic winces) your chronicle. You got tripped up by so many of the same head-scratchers as I in my early experience.

I find myself feeling a bit like an anxious parent watching a child take his first tentative whack at the jungle gym. (Don’t want to be overly protective, but don’t want to see you hurt yourself either.) :)

You are providing a valuable service, in the classic Chaos manner (pun intended). I hope that Redhat, Applix, and others are closely watching this unfolding saga. They can all learn from seeing a closely detailed, reasoned, journalistic description of the conundrums that a sophisticated Windows user still encounters on first confronting Linux.

Add me to the list of people who will assure you that the journey is worth it, *many* times over!

Add me to the list of people who would welcome direct email from you with any specific questions.

But that’s not the main reason I’m writing.

You seem to be expending considerable effort to categorize and index your questions and reader responses. That seems unnecessary. Why not go to and set up a discussion list there? Maybe call it "Help-Jerry-Become-a-Linux-Wizard."

Post your questions there. Let the answers arrive in a threaded, self-organizing, self-archiving, form.

Even cooler (once you have a machine directly on the Internet) would be to install qmail and ezmlm and run your own mailing list(s) server. Very easy to set up, configure, and maintain, with the bonus that you can then UNinstall sendmail.


Your point is well taken, but for the moment I prefer to keep things here; one of these days we will get something like Millicent working. I hope. Thanks for the kind words.


Kyrstin, Michael &; Leo Westwind []

My first experience with Linux was with Debian (which I still use) last July. It was fairly easy to install (from CD) and had more info as to how to do it than you seem to have encountered. Installation was mostly hitting the return key at appropriate points. I really like Debian’s package installer (dselect). Most of the trouble I had at first was due to having zero experience with UNIX and so not understanding the directory structure, especially /dev files. Once I got that info (partly by guessing from some prompts early in the installation process, partly by browsing some references on Debian’s site) things went fine. At present I still don’t use Linux for word processing, but I do for a variety of network functions including as a proxy to the internet (ipfwadm) for a small network. I regularly install Debian on new machines using a small stack of floppies and a ppp connection and it works like a charm every time.

I am using a Linksys PnP NIC (CHEAP NE2000 clone) on a number of my machines, and as long as I run Linksys’s configuration program first, they work fine. If I don’t, they don’t.


Michael Westwind

Thanks for a success story. Another version to try. One of these days… Incidentally, I think most of my Linux using readers use it largely for network functions and as an internet proxy or other way to communicate. I get a few letters from people who wrote them on UNIX, but as Moshe Bar says, for that there are better tools. Thanks again.



A few notes on the X Window System and Linux. Hope this helps!

First, X is something very layered on top of Unix. Sure, it’s the standard Unix GUI, but it’s a situation analogous to DOS and Windows. The particularly weird thing about X is that it is a _network_ protocol. The display your application runs on is not necessarily on the local machine. When an application starts, it looks to the DISPLAY environment variable to know where to appear.

For example, at work, my workstation is, but I use for a lot of things. I simply telnet (or rsh) to jadzia, set my DISPLAY to android:0.0 (the "0.0" indicating the first virtual display— don’t worry about it just now) and launch programs, which seem like they’re running locally. Very cool.

If you’re within an X session (for example, if you’ve started X locally with startx), DISPLAY should be set automatically to your localhost. This is why applix was giving you weird errors—since you didn’t have X running, and since you didn’t set DISPLAY explicitly, it didn’t know where to run.


Second, the actual GUI mechanics are independent from X itself. The real user-level stuff is taken care of by your window manager. By changing your window manager, you can completely change the look-n-feel. Some window managers, like fvwm95 and the AfterStep configuration that Red Hat defaults to, act a lot like Windows 95. More traditional window managers have their own weird (well, to you and me at least!) way of working. I personally use AmiWM, which is a passable imitation of the Amiga Workbench. Window Maker is very popular among my friends, and I’d recommend you take a look at it first. (<URL:>) Enlightenment also has a lot of potential—it’s _very_ nice eye-candy—but has a long way to go before it’s ready for prime-time.

Check out <URL:> for a selection of some of the most popular window managers.

Oh, to change your window manager, you need to edit your ~/.xinitrc file, found in your home dir. This is sort of like an autoexec.bat for X, although on a per-user basis. Mine looks like this:


xhost jadzia android

asclock &;

exec amiwm


Line 1 tells the system that this is a standard shell script. Line 2 says that this X server (The X display is the "server"—applications are the clients. Your display provides GUI services to the apps) is allowed to accept connections from hosts jadzia and android. Line 3 starts a digital clock program (the &; makes the task run in the background), and Line 4 actually starts the amiwm window manager. (The exec statement says to end the current script and launch this program. Again, don’t worry about it much. The key thing is that you use it to define your window manager, as the last line in your xinitrc script.)

Each window manager has its own esoteric way of configuring menus and icons. Unfortunately, nothing is standardized. You’ll have to experiment with your window manager of choice to find how to do this. Luckily in the meantime you can, as you discovered, run apps straight from an xterm. And, if you follow the name of the app with a &; (as in "netscape &;") it’ll return your xterm to you, so you can do other things.

Ok, that’s all for now. Any questions? :)

PS—the middle mouse button is "paste" in X. You copy text simply by selecting it.

PPS—to have X start automatically on boot, VERY CAREFULLY edit /etc/inittab. Find the line that says:


and change this to


This tells the system to boot to runlevel 5 -- X—instead of the standard console-mode, runlevel 3.

Make sure everything in X is working well when you do this!

PPPS—in console mode, you can switch between virtual consoles by pressing ALT-F1, ALT-F2, etc. In X, you can switch to a text-mode virtual console by pressing SHIFT-ALT-F1 (or F2, etc.)

PPPPS—you might like the text editor Joe, which is very wordstar-like.

Just type ‘joe’ at the command prompt, assuming you installed it.


Matthew Miller --->


Quotes ‘R’ Us --->



Good stuff. Thanks. More to accumulate for the next time I take a swing at this, which won't be all that long.


Bear Giles

1. First rule of partitions: *never* make your partitions larger than your backup media! (UNCOMPRESSED backup media!)

2. Second rule of partitions: use them as firebreaks to prevent rogue programs from taking down your system. E.g., a separate partition for /tmp, /var and /home, and/or normally mounting /usr "read-only."

3. Third rule of partitions: memory is cheap, time is expensive. If you *ever* touch your swap space *add more memory*. It follows that a large swap space is pointless—you need just enough swap space so that you won’t crash the system if you ever run out of physical memory. Unfortunately, it can be very difficult to tell how much memory you’re actually using (before it hits the swap space) since Linux uses "excess" memory as a disk cache.

4. Before you try anything with the network, type (as root):

tail -f /var/log/syslog

tail -f /var/log/messages


on a couple virtual terminals or xterms. (At least, that’s where the files are in my Debian distribution.) The messages may not make much sense to you, but it *will* make sense to others who can help you.

5. Set up "DHCP" before you start playing with SAMBA. This will act as a "WINS" server and you won’t have to set up each Windows system individually. My home network is set up to use static IP addresses keyed by the MAC address; this also requires setting up entries in /etc/hosts (or a DNS server).

Hmm; I lied. You will still want to visit each system to set up the IP "gateway" address. This should be the IP address used by your Linux server.

You can test your network setup by bringing up a command prompt and typing "ping", or whatever the IP address of your Linux box is. At this point, with a full Linux installation you should also be able to "telnet", "ftp", and bring up that site via your web browser.

6. Set up your printer before you start playing with SAMBA. (It wouldn’t hurt to print out your key configuration files either!) This makes it *much* easier to verify that everything is working.

7. Set up SAMBA. Specifically, use "smbpasswd" to tell the Linux system what password you use on your Windows machines. Until you do this, the standard configuration (at least, with Debian) produces some pretty bizarre results. If everything works your Linux system should appear in your network neighorbood, then you can "install" the exported printer set up above and print a test page.

8. Your crashes are unusual. I’ve routinely kept my Linux systems up 200+ days, taking them down only for hardware or kernel upgrades. Developmental kernels are another matter, but I’ve only used them when required to support cutting edge hardware. (E.g., my 4GB IDE tape backup and TV tuners.)

9. Finally, before you complain *too* much about the Linux documentation, could you tell me where your e-mail address is located on the Linux/Mail pages? I never found it anywhere under those pages. The place I did find it, while obvious to someone starting at the top of your document tree, wasn’t obvious to me since I followed a link directly to your Linux diary.

Bear Giles

Well, I suppose I can put the address in, but in fact I prefer people get to my site through my home page. And there's a "MAIL" button on the Linux Page. That should be A Clue; it takes one to the mail pages, and those certainly have my email address prominently enough displayed.

Thanks for the information. Query: is there any HARM to having too large a swap space? Disk space is cheap, and time isn't; going back and changing partitions takes time, being overly generous with swap space costs little.


Quotable from below: "If you could use CP/M you could use UNIX." There's hope for us all.


George Russell []

Hi, I read a lot of your books and thought id give you some Linux pointers. It jumps about a bit, but should cover a lot of ground.

Some sections in here are installing, software, starting X, looking for help, and config/setup, and using linux ( the fun part ).

If you could use CP/M, you can use Unix.



1) Installing software can be done by several methods.

a)from the command line via rpm - not the easiest, but still.

rpm -i filename installs an rpm

rpm -e packagename removes an rpm

rpm -qa | less lists all installed rpms

b)from a tar.gz of tgz file

cp the file to /tmp

tar -xzvf filename extracts to directory.

Check for readme files, follow instructions therein.


mc (Midnight Commander) browses rpm / deb / tar.gz files as if they were directorys - so if you want to know where a package is installing its contents, you can look inside it.

c)from X via various front ends

glint - point and click once you start glint

kpackage - a KDE application, superior to glint in every way :-) It

understands and installs rpm and deb ( Debians packaging format) as well

xrpm - I’ve heard the name


d)from source code

extract the files - usually they are tar.gz archives

Very often, the compile stage is as follows



make install


The last step is done by root - the others by root or normal user.

2)Starting X

a)assuming its configured correctly, and you boot to run level 3 - ie

bash login at a character screen

startx -- -bpp {8,15,16,24}

This allows choice of colour depth - and therefore maximum resolution, dependent upon video ram. Some programs - very few - need 8 bpp.

b)Create yourself a .xinitrc in your home directory

xemacs .xinitrc


# above line indicates its a script

# lines with # at start are comments

###This file controls startup of X programs

exec xclock &;

# Starts xclock, in the background with &; symbol

exec xterm &;

exec xterm &;

# Xterms are handy. Alternatives are rxvt, nxterm, kvt, Eterm

exec fvwm-95

# Above line starts the Window Manager. This is what gives window

borders, #menus on the desktop, taskbars and the like. It is up to you

to choose a #window manager from the many availble.

The lack of an &;

in the line means #you will exit X when you exit the window manager

c) Choose a desktop environment to use. This can be anything from a couple of xterms and xclock to KDE, and I would recommend KDE. KDE is freely available, and can be downloaded from . Or you could try a distribution which includes KDE - this makes everything easier, imho. Suse and Caldera both include KDE, Slackware may, Debian and Redhat will not.

Desktops and Window managers are not the same thing. KDE includes kwm,

CDE includes mwm, many other wm exist {Enlightenment, Window Maker, twm,

vtwm, ctwm, AfterStep, mlwm, fvwm, fvwm-95, qvwm, others}

d) Its possible to login straight away to a graphical prompt. This is

XDM. It happens on runlevel five ( run levels are configured in /etc/inittab, see the documentation)



3) Looking for help?

a) The LDP has created many, many howtos on every subject every encountered it seems. Examples are the ISP_HOWTO, Linux+Windows95 HOWTO, etc. try looking in /usr/doc for examples, should be in text, html, post script format.

b) The newsgroups are a greathelp, the comp.os.linux.* hierarchy is very good.

I’d not ask for help in c.o.l.advocacy , home of perpetual flame wars and abuse.

c) The unix manual command is man . Tends to give terse results for programmers. apropos is a man search command. Find more with man apropos for info. KDE has a hyperlinked help tool, kdehelp

d) Any university which uses Unix machines in its labs will have to teach its students unix somehow. Usually on a uni web server, especially in computer science departments, there will be available teaching materials or links to tutorials on Unix.

e) Books tell you much more than you ever need to know, unless you will use all the traditional unix tools ( like vi - but easier tools are around) and setup servers for all sorts of protocols.



4) General setup / config stuff

a) Many, many configuration files are in /etc . Its easiest to use front ends to deal with them. I use YaST from SUSE, a one stop install/ configuration tool. Redhat has a control panel, and also linuxconf

b) /home should really be a seperate partition. Saves grief and allows for easy reinstalls of Linux, should you every destroy it badly by running as root for too long

c) /opt is home to commercial software, traditionally, where not every user should have access rights because of limited number of software licenses bought. Netscape installs itself in /opt/netscape , and kde usually in /opt/kde . It helps keep useful stuff seperate from the unix stuff of uncertain use, but that you dare not remove. Its nice to be a seperate partition also. Its often used instead of /usr/local

d) At some point, you’ll want a custom kernel. Check the kernel howto.

The kernel source is in /usr/src/linux

To configure the kernel, use make config ( a long question and answer session) OR make menuconfig (nicer console based menu system) OR make xconfig ( a GUI with buttons, checkboxes etc.)

Then make zImage

then make modules ; make modules_install

>From this point you have to move the new kernel image to / or /boot, add


it to lilo.conf, run lilo, and reboot to test.

Better read that howto.


5) Using Linux to do stuff ;-)

a) The console / command line is there to be avoided. GUI’s are optional, and its a choice most should make. X is not a GUI, KDE is GUI on top of X, a Window manager is part of a GUI.

Even in Unix, the cli can be used as little as a dos box in windows.

b) StarOffice is a very nice office suite for Unix. Free for personal use. a 53Mb download from Version 4 is out now, version 5 soon.

c) GIMP is an open source graphics program.

d) DOSEmu is a dos emulator, runs most dos (16bit) software, some DPMI games, and can load Windows 3.1 to a limited extent. Runs DOOM, and Wordperfect.

e) lyx is a GUI frontend to the LaTeX type setter, takes the pain out of using the typesetter easily.

f) Acroread is available from Adobe, for reading PDF files. Its generally nice to have.

g) Corel WP7 is available for money, WP8 due out next month asa public download free for personal use.

h) Use mc as much as possible at the console, but get a minimal understanding of unix commands (cp, etc, and chmod / chown for file access writes) Also, see the DOStoLinux howto.

i) Netscape 4.5 is out for linux. try it.

j) TkDesk is another excellent filemanager, this time for X. KDE is

extremly good.

Both can mount / umount devices for you.

from a cli, you can do mount /cdrom

It’ll look in /etc/fstab for any other needed parameters.


I think that wraps it up. Hope this helped.

George Russell



One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the Darkness bind them, In the Land of Mordor where the shadows lie.

It all helps; as I have said, I am accumulating all this in one place so I can print it out and have it available when I next put my hand to Linux; and meanwhile it ought to be helpful to others.



And another set of detailed instructions.

First, I’d like to say that I am a great admirer of your works, both in computers and in Science Fiction.

Next, I’d like to give you some pointers that might help your journey into Penguinland:

1) You don’t have to set your DISPLAY variable by hand: just start X first. The reason your DISPLAY variable isn’t set is that you haven’t started X! Once you start X, the DISPLAY variable will be set for all programs you run under X automatically.

An aside: the reason for the DISPLAY variable is that you may run a program on one computer, and display the results on an X server elsewhere. For example, you could run an program on my server, but display it on your computer (that would be a pointless exercise since my "server" is just a little 486). But, you could run a big calculation for your next book on the Avalon Beowulf cluster (the 315th most powerful supercomputer on the planet that anyone is willing to admit the existence of) and display it on your machine at home. (I’m sure the sysadmin’s of Avalon would grant an person of your fame access if you needed it...).

2) You might try running your machine in what is known as Runlevel 5.

Unlike Windows, you have the choice of running the GUI or not: servers and such don’t waste the memory on GUI’s. Runlevel 3 (the default run level when you install Linux) is GUI-less. Runlevel 5 starts the GUI and lets you log in from there (somewhat like NT, or should I say NT is somewhat like Unix since Unix was doing this long before NT was compiled).

You set your system to start in Runlevel five like this:

Log in as root.

cd /etc.

vi inittab

(or you could use Emacs)


Look for the following lines

# Default runlevel. The runlevels used by RHS are:

# 0 - halt (Do NOT set initdefault to this)

# 1 - Single user mode

# 2 - Multiuser, without NFS (The same as 3, if you do not have


# 3 - Full multiuser mode

# 4 - unused

# 5 - X11

# 6 - reboot (Do NOT set initdefault to this)



The last line is the key: change the 3 to a 5 and save the file.

The next time the system boots up, it will go directly into runlevel 5.

You can kick the machine into runlevel 5 without making any permanent

changes by logging in as root and typing:

telinit 5

Your system will go to runlevel 5, and start what is known as XDM (X

display manager). XDM will as you to log in.

I will admit that installing applications and getting nice easy to find

icons is an area Linux is weak in, but remember this: With Windows, you

have no choice of GUI, with Linux you have many choices. An install

script would have to know about all the choices (including any you might

have written yourself!)

3) I’d find a nice Linux users group and join. Granted, the first two meetings you attend will be a mob scene (first meeting everybody will just mob you, second meeting you’ll cramp your hand signing books, magazines, and body parts (unfortunately few of the latter will belong to attractive members of the female sex)), but the help you receive will be invaluable.

4) Once you have the needed level of expertise (or, more likely, find someone else with that level) Chaos Manor sounds like the perfect place for what I like to call an "everything" server: FTP, HTTP, DNS, Samba (Windows networking), DHCP, HTTP cache, and Internet gateway/firewall. I love having a local Web site with links to all my favorite sites: my "bookmarks" are available from every machine. Also, by having a local HTTP caching server I speed up my Internet access even over the slow modem I use: any local machine visiting any page that any other local machine has visited gets the page at Ethernet speeds, not modem/ISDN/T1 speeds (useful when you see something on your machine and Mr. Niven wants to look at it on the machine he is using).

5) If you are even remotely serious about Linux, you should subscribe to Linux Journal ( Just what you needed: another magazine to read...

I hope I have helped in some small way.


David Hagood

David D. Hagood []

Thanks. Again, I'll add that to the collection I'll refer to when I get going on Linux again in a week or so. I have this other stuff to do first, but I'll be back with it.



Jeffrey R. Millar []


Man am I sympathetic... It seems like people traditionally learned Unix in a terminal room where you could always find someone 20 minutes ahead of you on the learning curve. No one ever needed to document it for the lone installer. The traditions virtually require someone to show you the magic spells and incantations. Once you know a spell exists maybe the documentation will provide additional details. Plus, a lot of the install stuff comes more from system admin learning curve than from you need to learn twice as much, from different style documentation, assuming different goals.

I went through this, an continue on the path, to this day (been at it 2+ years so far, learning as hobby, still using Win98 and tools for most).

Some handy keystrokes to know:

Alt/F1,2,3,4,5,6 switch between virtual consoles when not in X

Alt/left,right increments through VC’s

Shift/up,down scroll around in previous output stuff on the screen

(unless you switch consoles, then the buffers get lost)

Ctl/left,right,up,down move between window panes under X after you


afterstep and thenextstep. {duh, why not ALT/l,r like VC’s???)

Ctl/Alt/Del force clean reboot (might be disabled)


Ctl/Alt/Bksp force exit from X

Clt/Alt/+,- go thru list of screen resolutions under X (assuming more than one)

Handy incantations...

rpm -qa | less (lists all installed packages)

which program (print path to program)

locate string (find a file anywhere with that


string in the path

man pages says it works with wildcards but not for me)

updatedb (rescan all disks and build database for locate)

sudo command (run a command as root, requires sudo installed)

ls -l ‘locate string‘ ( the " [back quote] means replace with output of program)

glint (package manager under X [but its mysteriously broken here])


Thank you. I think you have it: most learned in a group, and most of UNIX is clear if you already knew it. Having someone around who knows it solves many problems. Alas, I don't at the moment.

 This has become sufficiently long that we pass to Part Four, which will open with a Windows NT user's surprisingly pleasant experiences.




birdline.gif (1428 bytes)