About Linux

Adapted from a presentation I gave to the Twin Cities, Minnesota, IEEE Computer Society

It's hard to know where to start with Linux, because it is under active development in so many areas.

book cover thumbnail image of Teach Yourself Linux

Teach Yourself Linux

Who Should Use Linux?

With Linux, you can turn your PC into a UNIX workstation. Linux is an ideal platform for many potential users:

  • Users who want to learn more about the UNIX operating system and the X Window System.
  • Internet surfers who want a powerful platform for cruising the Internet.
  • Business users who want to avoid the vast array of malware, ever-rising licensing costs, onerous accounting requirements and vendor lock in.
  • Programmers who want a cheap home or small-business platform for developing software that can be used on other, more powerful UNIX systems.

Linux is a free UNIX-workalike operating system. It comes with full source code and oodles of free software including the GNU C (and C++) compiler, the Firefox Web browser and the OpenOffice.org office suite.

Linux runs on a variety of computer architectures, including ARM, SPARC, Alpha, PowerPC, M68k, MIPS, and Intel. Linux is free on the Internet and you can purchase CD-ROMs with Linux for about US $10-$30. Major companies are now endorsing Linux as a platform for their wares, including IBM, Hewlett-Packard, Oracle, and Novell.

Linux is used by a number of companies, primarily as a server, and by countless individuals, often as a home system. You can find Linux embedded into TiVo personal video recorders, Zaurus and Yopy handhelds, and other places.

That's all you really need to know, except for the most important thing…

Lih-nucks vs. Linn-ucks

The most controversial thing about Linux is how to pronounce it. The correct answer is available online as a sound file, and you should know Finnish pronunciation. It appears to be something like leen-ooks. For the rest of us, linn-ucks suffices.

There's an online pronunciation HOW-to Web page, if you're really curious.

Origins of Linux

Linux is a UNIX-like operating system originally developed by Linus Torvalds, then a University student in Finland. Linux has its roots in Minix, an educational version of UNIX developed by Andrew Tannenbaum. As an interesting aside, we might be talking about Minix today if not for the licensing that Minix required. Few people have heard about Minux today, despite the Minux 3 microkernel.

Early on, Linux grew as a cheap UNIX that ran on Intel-based PC equipment. At the time, you could purchase UNIX for PCs, but at a high cost. I remember paying $1500 for a developer's version of Interactive UNIX that ran on a 386.

book cover thumbnail image of Linux Configuration and Installation, 4th Edition

Linux Configuration and
Installation, 4th Edition

Linux Distributions

To make things confusing, there's more than one version of Linux. Technically, Linux is really just an OS kernel, produced under the direction of Linus Torvalds. But, Linux usually comes with a set of utility, desktop, and server programs, including networking suites, Web servers, file systems, compilers, and a whole lot more. For example, Linux includes the X Window System for graphics, the GNU C compiler GCC, and code from quite a lot of other places.

A number of organizations, some commercial and some volunteer, collect together versions of all these programs with the Linux kernel, test that everything works together, and then release a what is called a distribution of Linux.

Most distributions are more or less equal. The main differences lie in platform support, administration, and installation.

The main Linux distributions include:

Which is the Best Distribution?

A lot of people ask which is the best Linux distribution. Unfortunately, there's no easy answer.

So here's my take. The best Linux distribution to try is the one you already have. You might as well see if the versions you have handy will work before going to the effort to get a particular version.

Many books on Linux include CD-ROMs with the OS. (I'm the co-author of such books.) Sometimes magazines include Linux CDs. And, there are a number of CD vendors you can get the OS from. Last but not least, if friends or colleagues have Linux, ask them to borrow a CD. You can tap into their experiences to help you get going. If you're interested in Linux, chances are you have a Linux CD or can get one easily. Use that.

Installation Gotchas

The first thing you need to do when installing Linux is set up a partition for it. Disk partitions have been around since the earliest DOS hard disk days. Basically, what you need to do is reserve space for Linux and separate that space from that used by any other OS, such as Windows. Typically, you create a Linux partition for data, and another, smaller, partition for swap space.

Since Windows comes pre-installed on most PCs, this means you must go through an extra step to install any non-Windows OS. To some, setting up a partition makes Linux harder to install. But, this task is necessary for BeOS or any other OS you install on PC hardware.

WARNNG: Changing partition types or deleting partitions wipes out any data that was already on that partition.

Windows and Linux: Peaceful Coexistence

Yes. You can have a system that supports booting into Linux or Windows. I tend to separate the two to different machines, but you can support two or three or more OSes on a given system.

Most systems come today with Windows installed and the Windows partition filling the entire hard disk. To get space for Linux, you need to reduce the size of the Windows partition and then slice off part of the remaining space for Linux.

Tools such as PartitionMagic and FIPS, a freeware program, can shrink a disk partition. Before you do this, though, use the Windows scandisk and defragmentation programs to fix any disk problems and move all your files to the beginning of the disk partition. This makes slicing the partition much easier.

Also, Windows wants to own the master boot record, or MBR, on a hard disk. It's best to make Linux fit around Windows, because Windows isn't very flexible in this regard.

Furthermore, many Linux distributions include a LiveCD, which you can use to try out Linux on your PC without installing Linux on your hard disk.

To run your Windows applications on Linux, use WINE. WINE is a Windows application execution environment that runs under Linux on Intel systems. With WINE, you can run many Windows applications.

The current status of WINE is available on the Web, along with a list of Windows applications and how well they work.

Hardware Support

As mentioned previously, Linux runs on a number of hardware architectures. By far the main platform, though, is Intel systems. Linux supports most Intel PC hardware.

Linux supports a wide variety of older hardware and can run fine on ancient 386s and 486s you may have lying around. If you have an old PC that's underused, that's a good candidate for Linux.

But, be sure to check the hardware compatibility lists, though. Linux does not support all hardware. Most hardware vendors still focus only on the Windows market, because that's where the main volume remains. So, with Linux, you must wait until someone writes a driver for the hardware.

In general, the hardware that is most used (and often cheapest) is supported best.

For laptop users, there's a great Linux on laptops web page containing links to hundreds of particular laptop models, describing people's experiences installing Linux. Check this out first, at http://www.linux-laptop.net/. You can purchase laptops with Linux pre-installed from vendors such as LinuxCertified.

You're not totally on your own, though. Millions of users run Linux.

Office Software

Linux includes most standard UNIX, networking, and X Window applications in most distributions. In general, there's a lot more software available for Windows than Linux, particularly in the area of office productivity software. Even so, you can get a number of packages for Linux, including:

Freeware and Open Source Software

Linux is fueled by the free or open source software movement. By this, think free speech rather than free beer, although some of us might prefer the latter. Linux was developed by thousands of people, and it is available for free on the Internet. You can download the source code to virtually all of Linux.

Most Linux applications are also freeware. This leads to a few very good applications, including language compilers and the Apache Web server. Apache, in fact, is listed as the number one Web server on the Internet.

With freeware, though, you also get a lot of applications that are not that good. It's hard to complain, because you get them for free. Luckily, there are a number of very good applications in addition to Apache. These applications include the GIMP, a graphics program sort of like Adobe Photoshop, Firefox, a full-featured Web browser, and OpenOffice.org, an office suite.

Do Corporations Have Problems with Open Source?

Oftentimes, yes, because the license is odd from a corporate sense. And, odd translates to hassles, at least in some minds. I know that personally, if I cannot figure out a freeware program's license, I simply don't use it.

To get around problems with freeware licenses, you can purchase Linux from a company such as RedHat, SUSE or a number of other firms. You can purchase support from these and other vendors.

Furthermore, many companies are already using freeware without even knowing it. If your employer bans freeware, you might want to talk about things like Internet email, which is mostly passed between systems via sendmail, a free program. Or, you can talk about DNS, the Domain Name Service. The free BIND version of DNS is widely used and forms the basis for most commercial UNIX versions of DNS, too. The Apache Web server is listed as the number one Web server on the Internet. Perl or PHP are used for most Web forms. So, whether your employer likes it or not, chances are it's using freeware right now. So there.

Support for Linux

One of the big questions on Linux lies in support. I'm always surprised by this, because I find basic true commercial support to be lacking from most Linux competitors. I mean, with Microsoft Windows, we all know to reboot our machine whenever there's a problem. If things get worse, you have the option of paying money to call up Microsoft and ask for help. Chances are you'll be told that you can wait for the next service pack or load a current service pack that you already know may break a number of applications. Whoopee.

It is true that with Linux, since you're typically dealing with less commercial products you get less formal support. To get around this, you can purchase support contracts from a number of third-party vendors. You can also get support from distributors such as RedHat, which sells Linux for the enterprise with full support.

Few hardware vendors support Linux, other than IBM, Hewlett-Packard and a few others. But then, I haven't found hardware support for Windows to be that great. For example, I once called up Compaq because a system of mine got a BIOS (hardware) error that the hard disk was not found and the system couldn't boot. After waiting an interminably long time on hold, the Compaq tech person insisted I boot the machine and copy a registry file from the hard disk. I couldn't believe it.

With Linux, at least you have the source code. This means that if you have the time, you can track down and fix many problems. Most of us don't have a lot of time, though. I've found that the Internet newsgroups form a great source of support, particularly for hardware and configuration issues. Chances are if you face a problem, someone else has already solved the problem and posted an answer to the Internet.

You can also email many developers to ask for help and to provide suggestions. For example, I've fixed a bug in a Perl application called DailyUpdate and sent the fix in to the author. I also made suggestions for its improvement.

And, there's a lot of support out there, particularly in informal channels. As Linux continues to grow, more and more support options will become available.