The Paradox

Linux

Until recently, I was in despair at the comparative sluggishness of my computer. But now, I've found a way to avoid having to buy a new computer for a couple more years. Not to say I don't drool over the G4 or AMD's smokin' new processor - far from it, and as soon as I can afford to, I'm getting one or the other.

So how did I manage this? One word: Linux.

Just in case you somehow haven't heard about Linux recently Linux is a unix-like operating system originally designed to run on a personal computer. Now, before you hit the back button, bear with me for a few more sentences. Yes, Linux *is* harder to learn than, say, Macintosh or Windows (especially if you're already used to those systems) - but not as hard as some people would have you believe. Linux is also much more powerful and customisable than Windows or Macintosh could ever hope to be, which I find far outweighs the 'ease of learning' thing. So, if you're like me and enjoy learning, read on!

Of course, if you already know all about Linux, you probably already know what I'm going to ramble on about.

Why Linux?

So why should you look at Linux? Well, for me there were a few reasons. I missed the more flexible command line interface when I tried to access MS-DOS through windows 95 and found it almost totally crippled, for one. The second was the speed of my computer, as I mentioned above. Sure, I still can't play new, graphics-heavy games. Linux doesn't give you a faster processor. What it does is not take up as much processor time. For example, I can now play my MP3's - something I couldn't do under windows 95: according to a program included with Linux (top) the MP3 decoder takes approximately 90% of my CPU time. The third reason is that it is free, and my boyfriend had an install CD. The license for Linux explicitly allows - encourages! - you to pass it around and make copies.

How can it be free?

Well, first I should clarify something. By free I don't mean 'for no cost', although you can get it that way. The 'free' in 'free software' means freedom. Liberty. The freedom to do whatever you want with the software, including selling copies of it. The only restriction is that you can't put restrictions on the people you give it to. All free software has the source either available cheaply or included with the program. Some people distinguish the two meanings as 'libre' and 'gratis', some use 'free(speech), not free(beer)'. Or, as I saw in a signature once: "The true meaning of the GNU GPL: The source will be with you. Always."

The license - the GPL, or General Public License - that Linux was released under doesn't require you to agree to anything in order to use the software. Why should you - you don't have to agree to a license to read a book, or listen to music. If you want to distribute it, you have to agree to the GPL, however. After all, if you want to copy more than a few lines from a book you have to ask for permission from the author or publisher. If you want to copy or distribute a GPL'd program, the GPL states that you can, as long as you don't restrict the people you give it to. It states that if you change it and release those changes, they have to also be covered by the GPL (of course, if you don't release the changes they don't have to be covered by the GPL). The full text of the GPL is available at http://www.gnu.org/ as is the GNU philosophy (GNU stands for GNU's Not Unix) and lots of philosophical essays written by the guy who started GNU.

The GPL says nothing about the price of the software - you can get a copy for $100USF or from your neighbour on a CD-R. If someone tried to sell a copy for a billion dollars, they would be entitled to - but nobody would buy it, because someone else would sell the same thing (or close enough - fundamentally, all the distributions of Linux are the same, they're just set up differently) for cheaper. Real competition.

In addition to 'boxed sets' containing the OS, you can find lots of books about Linux that include a full distribution on a CD, on the back cover. I have on my desk right now a copy of 'Linux: Installation and Configuration' which came with Slackware Linux 3.3 and 'Linux System Administration' which came with Slackware Linux 3.5. They may be old but the fundamentals of the system haven't changed, only the details, and they've been invaluable in learning about my system.

Programmers all over the world work on Linux and the GNU tools that come with it - and because of the terms of the GPL they can immediately fix and distribute the fixes to bugs that they find, rather than simply reporting them to the software maker and waiting for a fix to be released. If it is. All of these programmers work on it because they want to: for some it's a hobby, for some a passion - and for some lucky programmers, it's also their job. But they all work on it because they want to make good software.

Hardware requirements

The minimum hardware requirements depend on what platform you're interested in.

For x86-family processors, you need at least a 386, 4Mb of RAM, and 100Mb of hard drive space. This won't let you do much, but it will run if you set it up properly. For an 'average' install, you should have 16Mb of RAM (but more is always better) and 500Mb to 1Gb of hard drive space.

Plug and Play devices mostly work fine now (my sound card is PnP, as is my ethernet card), but winmodems and winprinters don't - makers of win-devices haven't released the specs, so Linux programmers can't make them work. Make sure you find out what type of cards you have in your computer before you install - especially if you've got a newer computer. Winmodems are very popular in new computers, because they're a lot cheaper than real modems.

Linux will also work on Apple's Macintosh hardware, both the 68k and PowerPC processors, the Sparc, and the DEC Alpha. I've also heard reports of Linux running on Intel's new 'Itanium', Transmeta's new 'Crusoe', and Apple's iBook and G4's.

Whatever hardware you have, you'll need the manuals - especially for your monitor and any non-standard hardware you have. Also, because Linux talks very closely to the hardware, any existing faults in your hardware that are not apparent under Windows will show up.

Windows and Macintosh Compatibility

If you're not ready to jump to a 100% Linux computer or you need to keep Windows or MacOS around for another reason, Linux is quite happy to co-exist with them.

You can set it up in a few different ways to allow access to both (or any number of) operating systems. You could boot Linux from a boot floppy; leaving the floppy out would let the computer boot to whatever other OS is there. You could install LILO, the Linux Loader, and tell it as you boot up which OS you want to use. You could install Loadlin, a windows program that soft-boots from windows into linux. You could install the UMSDOS version of linux; a version that runs on an MS-DOS formatted partition instead of its native ext2 (this is slower, however). There are a couple of other ways that are specific to Apple's hardware that I'm not familiar with (since I don't have a Mac).

To dual-boot, no matter which way, you need to make a partition for Linux. This can be tricky to do when you've got an existing OS installed, because even the best partition tools have the risk of trashing your files. With the price of hard drives so low, I'd recommend buying a new one - it's much easier on your stomach lining to make and delete partitions on a hard drive you know is empty.

When running Linux, you can access tons of filesystem formats. Glancing at the list in fdisk, I get the following list of supported filesystems:

EmptyPartition MagicOS/2 hidden C:
FAT12Venix 80286Linux extended
XENIX rootPPC PReP BootNTFS volume set
XENIX usrSFSAmoeba
FAT16 <32MQNX4.xAmoeba BBT
ExtendedQNX4.x 2nd P.IBM Thinkpad
FAT16QNX4.x 3rd P.BSD/386
HPFS/NTFSOnTrack DMOpenBSD
AIXOnTrack DM6 AuxNeXTSTEP
AIX BootableCP/MBSDI fs
OS/2 Boot ManagerOnTrack DM6BSDI swap
Win95 FAT32EX-DriveDRDOS/sec
Win95 FAT32 (LBA)Golden BowSyrinx
Win95 Ext'd (LBA)Priam EdiskCP/M / CTOS
OPUSSpeed StorDOS access
Hidden FAT12GNU HURDDOS R/O
Compaq diagnosticNovell NetwareBeOS
Hidden FAT16 <32MDisk SecureDOS Secondary
Hidden FAT16PC/IXLinux raid auto
Hidden HPFS/NTFSOld MinixLANstep
AST Windows swapMinix/Old LinuxBBT
Hidden Win95Linux Swap
NEC DOSLinux Native

So what does that huge long list mean? Well for one, it means that Linux can read any partition you're likely to have, and then some. By contrast, Windows can only read the ones marked 'DOS', 'Win95', 'FAT', or 'NTFS'. Oh, and it can read Macintosh disks as well. So when you're running Linux, you can still access the files on your windows formatted hard drive, but when you're in windows you can't even see your linux disk. Ok, so I'm bragging a little - but my point is that Linux can read lots of different formats.

Distros

Distributions of Linux can vary quite a bit in their install procedure and default tools, but they all have some common features: they have the basic Linux kernel - whichever version they used will be indicated; they have the GNU tools; they have network services available, like a web server and mail server; they have programming languages and compilers; and all but some really old versions have XFree86, the program that allows the graphical interface.

Some distros, in no particular order:

So with all that choice, how do you pick one? -Especially since that's not a complete list! I left off distros aimed at certain specialty niches, like embedded systems or ham radio operators, and I also left off non-english distros.

Well, it depends on a few things. First, what hardware do you have? If you're running x86, then you probably don't want LinuxPPC because it runs on macintosh hardware. You should check the list of hardware a given distro runs on first. Then, there are a few other questions.

Do you want it to install with a pretty point and click interface, and set up the GUI right away? Corel claims to do just that. Several other distros also have graphical installs - I haven't tried them all. Actually, I've hardly tried any of them. Check out the distro's home page to see what they say.

Do you want to know exactly what's going on, and install exactly what *you* want? Most distros probably provide that option.

Do you want to do everything yourself? I picked Slackware for this reason (well, that and my boyfriend had a copy handy). Once the programs you choose are installed, Slackware gets out of the way. The default configuration for almost everything will work - but you can make them work better for your hardware, or the way you want, by tuning and tweaking the configuration files. Of course all distros allow you to get your hands dirty, but Slackware puts you there right away.

Again, there may be other distros that do the same - I haven't tried them. I'm not writing a comparative distro review here!

I leave the choice to you - those of you who've suffered through my blathering to this point. Check out the distro's websites and find out what their philosophy is, and decide if you like it. Find out as much as you can - or want to.

In Conclusion...

If you're curious - try it! you can pick up a cd for dirt cheap, or buy a box set. You can get a copy from a friend (or your local Linux User's Group). You could download it if you have a high-speed connection to the internet.

If you want to learn more about your computer or programming - try it! it comes with compilers or interpreters for a whole bunch of languages.

What do I like best about Linux? The stability is nice, but it's the little things that I really like. I love tab completion - it makes long filenames really usable. I like having multiple consoles - having a HOWTO or man page open on one and carrying out the instructions on another is so incredibly useful. I like that it uses the forward slash instead of the backslash for directories - have you ever noticed that the backslash is in a different place on every keyboard, while the forward slash is always in the same place? I like that I can set different file types to display in different colours on the console. I like that I can install a new program and not have to reboot. I like that I can get as much screen space as I want, via virtual desktops, when I'm running the X windowing system. No more buried windows!

Have fun!

The OpenNIC You are using the legacy domain name, paradox.homeip.net, to access this site. This site is also available through the OpenNIC system as www.paradox.null. For more information, please visit The OpenNIC web site. To learn how to configure your computer for OpenDNS, please click here, or see this page to learn how to configure your name server.

This page was last modified Saturday July 06, 2002