David Neto's Linux page

Updated February 27, 1999
(Februrary 27, 1999): Added link to a Linux ports page
(December 8, 1998): Updated URLs (Alan Cox, SunSite->MetaLab), added a pointer to Rufus, and described my new partition scheme
(November 26, 1998): Added a pointer to my X setup.
(July 10, 1998): Added C.L.U.E. to links
(May 29, 1998): Linux Weekly News now at lwn.net
(May 8, 1998): Added Linux Web Map.
(April 17, 1998): XFree86 is free and zero price, so point to www.xfree.org instead of www.x.org
Also, hard disks are even cheaper now.

Welcome to my Linux page. It is directed at people who have heard of Linux and want to know a little more, people who are considering installing Linux on their own computer.

I'm no expert on operating systems. I just use Linux, and I really like it. It's free, and it works.

It's been a while since I seriously revised this page. Things change so fast: prices go down, and capacities and speeds go up. In some places the information listed here is 4 years old. At least I've got an updated partitioning scheme as well. Think of this page as being 2 years out of date, and that things are much better now than then...

News flash

November 26, 1998

Lordy, things move fast. I've got Red Hat 5.1 on a box I bought in September 1998. I plan to update this page with the pertinent details sometime this Christmas season.

Some people have expressed interest in how I set up my desktop. It's rather primitive, but I find it responsive and comfortable. Here's a gzip'ed tar file with my desktop setup (9130 bytes). These files go in your home directory, but be sure to make backups of your own versions of these files. They assume that your XF86Config file (/usr/X11R6/lib/X11/XF86Config) is set up for 1024x768 resolution. I use my video card at 24 bit depth at that resolution. If you haven't got enough RAM (4MB or more) on your video card, then adjust the .xserverrc file accordingly.

On my FVWM root menu, I've got entries to bring up or down a PPP connection, using a progarm surf that I wrote. You substitute your equivalent.

News flash

During June 1997 I blew away my root partition and installed Red Hat Linux 4.2 for Intel. I'm quite impressed by the Red Hat Package manager (see below).

My 120MB root partition was uncomfortably small for this installation. I moved some of the documentation to my user partition, but that is a slightly less than ideal setup. If you're installing a new system, make your root partition much bigger (e.g. 300MB): at 10 cents per megabyte, it's cheap --- I bought my hard drive at $1 per megabyte. (Newsflash 1998/04: 5 cents Canadian/MB, if you look for it.)

Watch this space for comments on my new installation. The material below mostly predates it.

Contents


What is Linux?

Linux is a free Unix-like operating system. It runs on Intel (386 and above), DEC Alpha, MIPS, PowerPC, Sparc, Amiga 68K, and Atari architectures. It also runs on some multiprocessor architectures. (This list might be out of date, check elsewhere for more complete info.)

Logo

Linux works. But it also has a death-defyingly cute official unofficial logo.

The dual nature of ``Linux''

There are two kinds of Linux users: people who want to develop the OS (thank you!) and people who want to use the OS. I'm one of the latter, but I'll explain some terminology to help you wade through the Linux material out there.

There are two parts to Linux systems: the operating system kernel (including basic device drivers and basic networking, etc.), and the supporting software (windowing system, compilers, typesetting software, etc.). Technically, only the kernel itself is called ``Linux''; the rest is available for almost any other operating system. However, a typical Linux installation will also carry a wide variety of support software. Linux itself is free, and the supporting software typically installed is also free. However, some value-added resellers package Linux with proprietary software (e.g. WordPerfect, Perforce, Informix, etc.). You have choice.

Distributions

A Linux distribution is a consistent packaging of a Linux kernel together with support software. There are many Linux distributions available on the Internet, on CD-ROM, or on both. I recommend CD distributions: they are convenient, they help reduce Internet traffic, and they can be inexpensive. Check your local computer book store.

Kernel numbering: stable and experimental releases

The Linux kernel development community recognizes the duality of the Linux user base by separating the stable and experimental versions of the kernel. Experimental releases are aimed at kernel developers and have odd minor version numbers, e.g. the 1 in 2.1.37. Stable releases are aimed at the rest of us and have even minor version numbers, e.g. the 0 in 2.0.29.

Once the experimental aspects of a development kernel are frozen and reliable, the minor version number is incremented, creating a new sequence of stable kernel releases.

For example, at some point the 2.1.x kernel will be converted to a 2.2.0 kernel. Kernels 2.2.y, with y>0, will be only bug fixes or trivial upgrades. New experimental work (e.g. adding significant new functionality) will begin with 2.3.0. And so on.

Most users, myself included, should use the stable releases, i.e. those with even minor version numbers for the kernel.

Support software

Most Linux installations use free supporting software, including most GNU software, X Windows, TeX, and more.

In part, Linux is successful because it leverages free and universal software. First, Linux is a comfortable and stable environment for those of us used to Unix: I have the same environment at home as I do at work. Second, the Linux system was developed quickly and is so stable because it uses well-specified, well-designed, and well-tested components, needing only to add a kernel that implements a widely known and robust OS design: Unix.

As mentioned above, however, some vendors wrap proprietary software around the Linux kernel, or a mix of free and proprietary support software.

For very practical reasons, I recommend using only the usual free supporting software. First, this is the same setup that Linux developers use, so you know it will work, both now and into the future. Second, it is a very low cost system. Third, it is easy to upgrade components of the system by downloading new versions via the Internet.

Some people have philosophical problems with proprietary software. I do not address that issue here.

My experiences with Linux

My setup

I first installed Linux in April 1994. I used a floppy-based Slackware distribution. The machine is a 486-66 with 16MB of RAM and I'm very happy with the results. I have a 120MB root partition, a 170MB local partition, and a 16MB swap partition.

Linux shares my machine quite nicely with OS/2 version 2.11. OS/2's Boot Manager lets me choose which operating system to run. (LILO resides on Linux's root partition.)

Linux reads the OS/2 HPFS partition. Someone has written an OS/2 installable filesystem that allows more recent versions of OS/2 to read and write ext2fs filesytems, the most common Linux filesystem.

I used to upgrade my system a piece at a time, and only in the rare instances when I needed a new feature. I upgraded piecemeal because I had no CD-ROM drive. (Imagine that!) Others advocate a scorched earth policy for Linux upgrades. In June 1997 I needed to upgrade too many things, so I gave in and bought the slowest CD-ROM drive I could find (8x) and put Red Hat 4.2 on my root+user partition. I'm happy with the results.

However if you are doing a new install on today's big hard drives (e.g. 4GB or larger), then I suggest the following partitioning scheme:
/75MB
/boot10MB
(swap)120MB
/usr1000MB
/home2000MB or more
This is loosely based on the suggestions in the Red Hat manual, and roughly how I set up the 6G drive on the machine I got in September 1998. I'm a pretty restrained guy, and still my /usr partition gets to about 400MB. I'm sure your /usr partition will grow too. Also, consider a separate large partition for /opt, which is where most commercial software (e.g. WordPerfect) seems to go when it is packaged in RPM format.

Software development

Sometimes I take my work (experimental algorithmic research) home, where Linux provides a stable and comfortable software development environment. My programming tools are CWEB 3.1 with GCC 2.7.2.

As a sideline, I develop Java applications under Linux. Visit my Java page for some Java documentation and for links to Linux implementations of the Java Development Kit. I developed a MergeSort demo with these tools. Starting with kernel version 2.0, Linux has supported Java as a native executable format. (So you don't have to specify the Java interpreter on the command line. Neat, huh?) (Linux beat out all other operating systems in this respect, which tells you something about the responsiveness of the Linux and free software community.)

To read the Java API documentation or to surf the web, I use Netscape Navigator 3.01 for Linux. (Actually, now I use Netscape Communicator 4, bundled with Red Hat 5) Unfortunately, it's statically linked with a Motif library, so it takes up more room than it could. There are free web browsers too, but I just haven't bothered (yet). (Actually, most of Communicator's source was released in early 1998 as the beginning of the Mozilla Project.)

I highly recommend the Frugal Virtual Window Manager, or fvwm. I use it both at home under Linux and at school under SunOS. My favourite feature is its ability to manage multiple screens' worth of desktop space (hence the adjective virtual). I use a 3x3 virtual desktop pager, with at most one main window in each page. FVWM is a godsend. Somebody in the Linux community created a web page about fvwm. I haven't explored that page much, though.

Recommendations

If you are comfortable with Unix or Unix-like operating systems, then Linux is for you. If you are a university student and use Unix at school, then Linux is ideal for you. On specific fronts:

Finding out more

I am no authority on Linux. Look in the following places for more complete, timely, and precise information about Linux.

Awards

Here are some awards presented to Linux and its community.

Minutae

I have aimed for clarity, not completeness. In particular, I deliberately left out the names of many people and organizations who have worked so hard to bring Linux to the world. They know who they are, and can be found by following the above links.

Arthur Tateishi's posting about his scorched earth policy for Linux upgrades is duplicated with permission.

The information in this document is subject to change. I don't promise to keep it up to date. Also, I may have sacrificed precision for clarity.

Oh, I almost forgot: The trademarks mentioned in this document are owned by their respective owners. :-)

I hope this document is useful to you. If you have comments, or want to redistribute this to others, send me mail.


Back to David Neto's home page