by Kamran Husain
IN THIS CHAPTER
This chapter covers the many types of Linux systems and distributions available.
I strongly recommend that you read this chapter at least once before starting the
installation process. This chapter covers the following topics:
Many independent releases of Linux with their own lists of unique features are available. Some of these releases are free of charge if you have access to the Internet. Some releases are available for a nominal fee ($20 to $90) for distribution on CD-ROM or disks. Typically, the CD-ROM versions are cheaper and are easier to use than the floppy disk distributions because the cost of one CD-ROM is less than the cost of 30 or more floppy disks. Another plus for the CD-ROM is the convenience of having everything on one source media. It beats swapping disks!
A Linux release is a set of files for a complete Linux system. Various changes made by the Linux community are incorporated into each release.
Linux releases are usually identified by numbers. These numbers are of the form X.YY.ZZ, where X is a single digit, and YY and ZZ are numbers between 0 and 99. At the time of this writing, the release number was 2.0.20. Generally, the higher the number, the newer the release.
A release consists of several components called a series of disks, or a collection of disks. For example, the X Windows series of disks comes on 10 disks. Each series is referred to by its name. A name generally tells you who put the software together and what its date is.
Different releases from different vendors can vary in price significantly. You can always get Linux from the Internet, so what are you paying for? Basically, you are paying for time and features. The more time spent by the package developers to get the right features together, the higher the cost of the package.
Some of the releases of Linux are listed here:
Walnut Creek CDROM
4041 Pike Lane, Suite D 467
Concord, CA 94520
(800) 786-9907
info@cdrom.com
http://www.cdrom.com
Red Hat Software Inc.
3203 Yorktown Ave., Suite 123
Durham, NC 27713
(800) 546-7274
info@redhat.com
http://www.redhat.com
WorkGroup Solutions Inc.
P.O. Box 460190
Aurora, CO 80046
(800) 234-7813
info@wgs.com
http://www.wgs.com
Trans-Ameritech System, Inc.
2342A Walsh Ave.
Santa Clara, CA 95051
(408) 727-3883
roman@trans-am.com
Yggdrasil Computing, Incorporated
4880 Stevens Creek Blvd., Suite 205
San Jose, CA 95129-1034
(800) 261-6630
http://www.yggdrasil.com
orders@yggdrasil.com
Caldera, Inc.
633 South 550 East
Provo, UT 84606
(800) 850-7779
http://www.caldera.com
Craftwork Solutions Inc.
4320 Stevens Creek Blvd., Suite 170
San Jose, CA 95129
(800) 985-1878
http://www.craftwork.com
info@craftwork.com
InfoMagic
11950 N. Hwy 89
Flagstaff, AZ 86004
http://www.infomagic.com
There you have it. This list of locations where you can get Linux is incomplete. In fact, I should apologize to the folks whose company names didn't get listed here. I did not have enough time to fully review all the distributions before this book went to press. If you want a more complete list, look at the newsgroups comp.os.linux.announce and comp.os.linux.misc.
The document Distribution-HOWTO is archived on various Linux FTP sites, including sunsite.unc.edu in pub/Linux/docs/HOWTO.
If you like magazines, you will love Linux Journal (LJ), a monthly publication
covering the Linux community. Most material in LJ is new (that is, derived from a
bunch of Usenet newsgroup topics). Each issue includes columns and articles on Linux
programming, GNU, Free Software Foundation issues, systems administration, questions
and answers, interviews, and more. This is a darn good magazine with a great Web
site. You can reach the publishers at:
Linux Journal
P.O. Box 55549
Seattle, WA 9815
(206) 527-3385
http://www.ssc.com
As I mentioned earlier, a CD-ROM is not the only place for you to get Linux or information about Linux. After all, you might not have a CD-ROM reader. If you don't, you aren't out of luck. You can still get Linux goodies from the Internet sites in the following listing. The catch is that you have to be on the Internet.
So why am I showing you how to get Linux from the Internet when you already have it on a CD? Well, some of the files referenced on the CD might be different a year from now. In fact, some of the locations you see listed here might be different too. After you've learned how to uncover more information, you can use the archie method later to locate updates to Linux.
If you want to learn more about the Internet and archie, read The Internet Unleashed
(Sams Publishing, 1994).
The first place I look for new releases is on the World Wide Web. Using search engines such as Yahoo!, Web Crawler, or Lycos, I can use the keyword "Slackware" to find many locations where I can get Slackware Linux. Of course, going to sunsite.unc.edu via ftp and looking in the /pub/Linux directory will almost certainly get you the latest versions of software for Linux.
The World Wide Web is not the only place to search for Linux. Good old programs like archie still serve well in this endeavor. I used the telnet program to log into archie.internic.net, a good site from which to use the archie program. The archie program is a searching utility for locating files on the Internet by specifying keywords. I logged in with the name archie and didn't have to provide a password. (See Listing 2.1.)
The archie> prompt is where I issued the find Slackware command. The search type of sub means that we'll ask archie to search for all strings in its database with the word Slackware anywhere in them.
The Slackware release of Linux can be found on any number of FTP sites worldwide. The Linux META-FAQ lists several of the Linux FTP sites. To reduce Net traffic, I suggest that you try to find the software on the FTP site nearest you. Two of the major Linux FTP sites, however, are sunsite.unc.edu and tsx-11.mit.edu.
The Slackware release can be also be found on the following FTP sites: sunsite.unc.edu:/pub/Linux/distributions/slackware
tsx-11.mit.edu:/pub/linux/distributions/slackware
ftp.cdrom.com:/pub/linux/slackware
ftp.cdrom.com, which is Slackware's home site
Before you download from your nearest FTP site and put the files on floppies, keep in mind what you want from each release. Note that some releases give you only the kernel and a few utilities, and others give you everything you need (including X11, GCC, and more). In the latter case, you must download more than 50 big files.
Now you should have enough information to be able to obtain future releases of Linux in your sleep. Let's get on with the matter of the Linux CD-ROM included with this book.
The Slackware distribution is the release on the CD-ROM. This release is also available on floppy disks as sets. Each set is a collection of floppy disks containing related software. The following disk sets are available on the CD-ROM for Linux:
You do not have to install all these sets for a Linux distribution. As a bare minimum you need the A, AP, D, and F sets to get started. If you plan to run X Windows, you must install all the X and XAP disks. Obviously, if you want to develop applications on your system, you need the D series disk set, and for X Windows, you need the XD series set. The rest of the disk sets are optional. If you can spare the disk space, you should install them and see whether you like them.
Table 2.1 lists common filename extensions for the files you will see in Linux
archives. The fname in the following table implies the filename with which you want
to work.
Table 2.1. File extensions used in Linux releases.
Extension | Used By |
.Z | compress/uncompress. Use uncompress fname foo.Z to uncompress the file, where fname is the name of the file that was uncompressed. |
.z, .gz, .gzip | gzip is now used by many archive sites rather than compress. If you don't have gzip on |
|
your system, get it! To uncompress one of these files, use gzip -d fname.z. .gz is the new |
|
gzip extension. |
.tar | Tar file. Use tar xvf fname.tar to unpack it. Or you can use tar tvf fname.tar to get an |
|
index listing of the tar file. |
.taz | Compressed tar file. You can do something such as zcat fname.taz | tar xvf - or tar xvfz fname.taz to unpack it (some versions of tar don't have the z option). |
.tpz, .tgz | gzipped tar file. If you have gzip, zcat is linked to it, so you can do zcat foo.tpz | tar xvf to unpack it. |
.tpz | The old extension. All gzipped tar files should now end in .tgz instead. |
|
The disk sets on the CD-ROM can be found in the /slakware directory. (In DOS, this will be the SLAKWARE directory.) See Listing 2.1 for a directory listing of all the packages on the CD-ROM at the back of this book.
$ ls -l /cdrom/slakware total 2419 -r--r--r-- 1 root root 13585 Nov 29 21:47 CHECKSUMS -r--r--r-- 1 root root 29632 Nov 29 21:42 FILE_LIST -r--r--r-- 1 root root 2206297 Nov 29 21:46 MANIFEST -r--r--r-- 1 root root 409 Mar 20 1995 README -r--r--r-- 1 root root 3950 Dec 5 12:59 TRANS.TBL dr-xr-xr-x 2 root root 4096 Nov 30 03:20 a1/ dr-xr-xr-x 2 root root 2048 Aug 16 04:49 a2/ dr-xr-xr-x 2 root root 2048 Sep 10 04:31 a3/ dr-xr-xr-x 2 root root 2048 Nov 4 03:19 a4/ dr-xr-xr-x 2 root root 2048 Oct 25 04:18 a5/ dr-xr-xr-x 2 root root 2048 Aug 9 14:18 a6/ dr-xr-xr-x 2 root root 2048 Aug 9 14:19 a7/ dr-xr-xr-x 2 root root 2048 Oct 3 04:17 a8/ dr-xr-xr-x 2 root root 4096 Aug 9 14:20 ap1/ dr-xr-xr-x 2 root root 2048 Aug 9 14:21 ap2/ dr-xr-xr-x 2 root root 2048 Aug 9 14:21 ap3/ dr-xr-xr-x 2 root root 2048 Aug 9 14:22 ap4/ dr-xr-xr-x 2 root root 2048 Oct 5 04:33 ap5/ dr-xr-xr-x 2 root root 2048 Aug 9 14:23 d1/ dr-xr-xr-x 2 root root 2048 Aug 9 14:24 d10/ dr-xr-xr-x 2 root root 2048 Oct 18 04:20 d11/ dr-xr-xr-x 2 root root 2048 Aug 9 14:26 d12/ dr-xr-xr-x 2 root root 2048 Aug 9 14:26 d13/ dr-xr-xr-x 2 root root 2048 Aug 9 14:27 d2/ dr-xr-xr-x 2 root root 2048 Aug 9 14:28 d3/ dr-xr-xr-x 2 root root 2048 Aug 9 14:29 d4/ dr-xr-xr-x 2 root root 2048 Sep 11 04:36 d5/ dr-xr-xr-x 2 root root 2048 Aug 9 14:30 d6/ dr-xr-xr-x 2 root root 2048 Aug 9 14:31 d7/ dr-xr-xr-x 2 root root 2048 Sep 12 04:31 d8/ dr-xr-xr-x 2 root root 2048 Aug 9 14:32 d9/ dr-xr-xr-x 2 root root 2048 Aug 9 14:33 e1/ dr-xr-xr-x 2 root root 2048 Aug 9 14:34 e2/ dr-xr-xr-x 2 root root 2048 Aug 9 14:34 e3/ dr-xr-xr-x 2 root root 2048 Aug 9 14:34 e4/ dr-xr-xr-x 2 root root 2048 Aug 9 14:35 e5/ dr-xr-xr-x 2 root root 2048 Aug 9 17:49 e6/ dr-xr-xr-x 2 root root 2048 Aug 9 17:49 e7/ dr-xr-xr-x 2 root root 2048 Aug 9 17:47 e8/ dr-xr-xr-x 2 root root 2048 Oct 18 04:20 f1/ dr-xr-xr-x 2 root root 2048 Oct 18 04:19 f2/ dr-xr-xr-x 2 root root 2048 Aug 9 17:45 k1/ dr-xr-xr-x 2 root root 2048 Aug 9 17:44 k2/ dr-xr-xr-x 2 root root 2048 Aug 9 17:43 k3/ dr-xr-xr-x 2 root root 2048 Aug 9 17:43 k4/ dr-xr-xr-x 2 root root 2048 Aug 9 17:42 k5/ dr-xr-xr-x 2 root root 2048 Aug 9 17:41 k6/ -r--r--r-- 1 root root 16541 Oct 31 18:18 makeflop dr-xr-xr-x 2 root root 2048 Nov 30 03:21 n1/ dr-xr-xr-x 2 root root 2048 Aug 9 17:24 n2/ dr-xr-xr-x 2 root root 2048 Dec 2 03:17 n3/ dr-xr-xr-x 2 root root 2048 Dec 2 03:16 n4/ dr-xr-xr-x 2 root root 2048 Aug 21 04:30 n5/ dr-xr-xr-x 2 root root 2048 Oct 18 04:19 n6/ dr-xr-xr-x 2 root root 4096 Oct 5 04:36 t1/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t2/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t3/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t4/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t5/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t6/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t7/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t8/ dr-xr-xr-x 2 root root 2048 Oct 5 04:36 t9/ dr-xr-xr-x 2 root root 2048 Aug 9 15:05 tcl1/ dr-xr-xr-x 2 root root 2048 Aug 9 15:01 tcl2/ dr-xr-xr-x 2 root root 2048 Nov 4 03:18 x1/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x10/ dr-xr-xr-x 2 root root 2048 Nov 29 03:17 x11/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x12/ dr-xr-xr-x 2 root root 2048 Nov 28 03:25 x13/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x14/ dr-xr-xr-x 2 root root 2048 Nov 28 03:24 x15/ dr-xr-xr-x 2 root root 2048 Nov 28 03:22 x16/ dr-xr-xr-x 2 root root 2048 Nov 2 03:33 x17/ dr-xr-xr-x 2 root root 2048 Nov 28 03:23 x18/ dr-xr-xr-x 2 root root 2048 Nov 28 03:24 x19/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x2/ dr-xr-xr-x 2 root root 2048 Nov 2 03:31 x20/ dr-xr-xr-x 2 root root 2048 Nov 28 03:23 x21/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x3/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x4/ dr-xr-xr-x 2 root root 2048 Nov 29 03:18 x5/ dr-xr-xr-x 2 root root 2048 Nov 28 03:22 x6/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x7/ dr-xr-xr-x 2 root root 2048 Nov 29 03:18 x8/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 x9/ dr-xr-xr-x 2 root root 2048 Aug 9 10:17 xap1/ dr-xr-xr-x 2 root root 2048 Aug 9 10:07 xap2/ dr-xr-xr-x 2 root root 2048 Nov 4 03:19 xap3/ dr-xr-xr-x 2 root root 2048 Oct 7 04:19 xap4/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 xd1/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 xd2/ dr-xr-xr-x 2 root root 2048 Nov 2 03:44 xd3/ dr-xr-xr-x 2 root root 2048 Nov 2 03:28 xd4/ dr-xr-xr-x 2 root root 2048 Aug 9 08:49 xv1/ dr-xr-xr-x 2 root root 2048 Aug 9 17:40 xv2/ dr-xr-xr-x 2 root root 2048 Aug 9 16:19 xv3/ dr-xr-xr-x 2 root root 2048 Aug 9 14:16 y1/
Listing 2.1 shows the contents of the CD-ROM distribution disk's directory. Examine the output carefully. You will see that the A set consists of eight disks: a1 through a8. Similarly, the AP set consists of five disks: ap1, ap2, ap3, ap4, and ap5.
You will see similar directory structures on the FTP sites. This style of distribution is very helpful when you might have a bad distribution disk and would have to download from only one directory.
If you want to install Slackware from floppies rather than the hard drive, you'll need to have one blank, DOS-formatted floppy for each Slackware disk you want to work with.
The A disk set (disks A1 through A8) may be either 3.5- or 5.25-inch floppies. The rest of the disk sets, however, must be 3.5-inch disks.
One way to tell whether you need a package is to look in the contents directory on the CD-ROM. This directory contains descriptions of all the packages and their files. For example, look at the files in the XAP package's first disk, xap1, shown in Listing 2.2.
$ ls -l /cdrom/slakware/xd1 total 1402 dr-xr-xr-x 2 root root 2048 Aug 9 10:17 ./ dr-xr-xr-x 94 root root 12288 Nov 30 03:20 ../ -r--r--r-- 1 root root 571 Dec 5 12:59 TRANS.TBL -r--r--r-- 1 root root 2423 Dec 2 1995 diskxap1 -r--r--r-- 1 root root 722979 Aug 7 1995 gchess.tgz -r--r--r-- 1 root root 59753 Aug 7 1995 ghstview.tgz -r--r--r-- 1 root root 253161 Aug 7 1995 gnuplot.tgz -r--r--r-- 1 root root 188273 Jun 12 1995 gs_x11.tgz -r--r--r-- 1 root root 1809 Jun 10 1996 maketag -r--r--r-- 1 root root 2277 Jun 10 1996 maketag.ez -r--r--r-- 1 root root 129045 Nov 25 1995 seyon.tgz -r--r--r-- 1 root root 278 Jun 10 1996 tagfile -r--r--r-- 1 root root 278 Jun 10 1996 tagfile.org -r--r--r-- 1 root root 223 Jun 10 1996 tagfile.pat -r--r--r-- 1 root root 41994 Nov 22 1995 xxgdb.tgz
The xap1 disk contains the file xxgdb.tgz, among others. I want to know more about this package; the name xxgdb.tgz doesn't tell me much. So what do I do? The way to look at a file description is to look at header files in the contents directory. The name of a description file is the prefix of the file's name. In this case, it is xf_kit. Listing 2.3 shows the contents of the xxgdb file.
$ head /cdrom/contents/xxgdb drwxr-xr-x root/root 0 Nov 22 14:02 1995 ./ drwxr-xr-x root/root 0 Aug 7 20:44 1995 usr/ drwxr-xr-x root/root 0 Aug 7 20:44 1995 usr/X11R6/ drwxr-xr-x root/root 0 Nov 22 14:00 1995 usr/X11R6/bin/ -rwxr-xr-x root/bin 84608 Nov 22 14:00 1995 usr/X11R6/bin/xxgdb drwxr-xr-x root/root 0 Aug 7 20:44 1995 usr/X11R6/man/ drwxr-xr-x root/root 0 Nov 22 14:01 1995 usr/X11R6/man/man1/ -rw-r--r-- root/root 4431 Nov 22 14:01 1995 usr/X11R6/man/man1/xxgdb.1.gz drwxr-xr-x root/root 0 Oct 9 20:42 1994 var/ drwxr-xr-x root/root 0 Apr 27 20:59 1994 var/X11R6/ drwxr-xr-x root/root 0 Oct 9 20:42 1994 var/X11R6/lib/ drwxr-xr-x root/root 0 Dec 11 21:01 1993 var/X11R6/lib/app-defaults/ -rw-r--r-- root/root 2916 Nov 22 14:01 1995 var/X11R6/lib/app-defaults/XDbx $
From the description, I see that file's size is about 84KB, which is about twice the size of the archive and not the size of the uncompressed package. So do not be misled by the size of the archives; the uncompressed packages will eat up more disk space.
You can find similar descriptions for all the packages. This makes it easier for you to identify and install only the packages you need.
A bulletin board system (BBS) enables you to transfer messages and files via your phone line. All you need is a computer with communications software and a modem. Some BBSs transfer messages among themselves, forming large computer networks similar to Usenet. The most popular of these in the United States are FidoNet and RIME.
Linux is available from various BBSs worldwide. Some of the BBSs on FidoNet carry comp.os.linux as a FidoNet conference.
Linux supports several features you can use to access your DOS files from Linux. With the mtools package, included with most distributions of Linux, you can use commands such as mcopy and mdir to access your DOS files. Another option is to mount a DOS partition or floppy directly under Linux, which gives you direct access to your files by way of the DOS file system.
You will find the mtools package indispensable if you have to swap files between DOS and Linux. When you first start Linux from a DOS machine, it's comforting to know that you can transfer files easily between two machines that are running different operating systems. So don't worry; you will not have to give up your familiar DOS environment.
Why use mtools if you can just mount a DOS drive? mtools is good if you want to do something quickly--for example, if you want to get directories on a bunch of floppies. The mount procedure requires you to mount the drive, get a directory, and then umount it. With mtools, you can get the directory with one command.
mtools also comes with the Slackware release of Linux and is available in source code form on most Linux FTP sites. This mtools source tree can prove to be interesting reading, especially if you are a programmer.
A DOS emulator for Linux is also available, and there is a stable version of a Microsoft Windows emulator that runs under the X Window System. The DOS emulator isn't perfect, so don't expect to play Doom (Id Software) on this emulator. DOSemu is still in development stages. You can use it to run some standard applications such as WordPerfect 5.1, Quicken, and Lotus 1-2-3. See Chapter 62, "DOSemu."
This chapter has given you a whirlwind tour of what's available for Linux. You also learned about Linux releases and how to interpret the release numbers.
We covered the Slackware release in greater detail than other Linux releases. This preferential treatment results from the fact that the Slackware release is included on the CD-ROM that comes with this book and is included in the book's title.
Each Linux release consists of several disk sets. Each disk set contains many files. Some of these files are just labels, and some are called packages. A package is generally a compressed tar archive containing binary files and directory trees. You now know how to determine which types of files are stored in each disk set.
You also know how to get Linux from lots of other sources, including mail order companies, BBSs, and other CD-ROM vendors.
Finally, for DOS fans, Linux provides a host of tools to read or write DOS disks and files. You can even get DOS emulators to run DOS programs under Linux. Any DOS partitions can be mounted to appear as directory trees, so you can still work with your data on DOS disks.