#### "Linux Gazette...making Linux just a little more fun!"

## Slackware

#### By Sean Dreilinger, sean@kensho.com

### Contents:

- Slackware Is Not For You (Or Maybe It Is)
- A Quick History
- Why, Then?
- Planning
- Thinking Through Storage and File Systems
- Upgrade? Think Twice!
- Boot Disks: Always A Good Thing
- Slackware Setup Worksheet
- Slackware Setup Program
- Troubleshooting
- Basking In The Afterglow
- Install and Test
- Secure the System
- Back Up

### Slackware Is Not For You (Or Maybe It Is)

Welcome to the Slackware distribution of Linux! This chapter aims to help the new Linux user or administrator evaluate Slackware, plan a Slackware system, and install Slackware Linux. In it you'll find an emphasis on careful planning rather than rushing into an impetuous installation. A special worksheet is included to help you "get it right the first time", which I hope will be especially useful to overworked Unix administrators in busy environments.

Whether or not to choose Slackware as the flavor of Linux you will use is a serious consideration. It may seem like a trivial decision now, but Linux boxes have a way of taking on more and more responsibility in organizational computing environments. Plenty of Linux experiments have evolved in their first year to become mission-critical machines serving many more users and purposes than originally intended. Slackware is one of the most widely used distributions of Linux. When it comes to finding the newest, easiest, or most carefully planned distribution of Linux, Slackware may be "none of the above". Some background on the life and times of Slackware put things into perspective.

### A Quick History

In 1993, SLS created one of the first organized distributions of Linux. Although it was a great start, the SLS distribution had many shortcomings (it didn't exactly work, for starters). Slackware, a godsend from Patrick Volkerding, solved most of these issues, was mirrored via FTP and pressed onto CD-ROMs the worldwide, and quickly became the most widely used flavor of Linux. For a while, Slackware was the only full-featured Linux solution. Other Linux distribution maintainers, both commercial and nonprofit, have gradually developed distributions that are also well worth your consideration.

According to statistics maintained by the Linux Counter Project, Slackware inhabits about 69% of all machines that run Linux. Slackware is typically obtained via FTP or CD-ROM and installed on a 486-class computer running at 66Mhz with about 16 MB of memory and 1050 MB of storage. More information about Linux use and the Linux Counter Project is available on the World Wide Web. http://domen.uninett.no/\~hta/linux/counter.html

By January 1994, Slackware had achieved such widespread use that it earned a popular notoriety normally reserved for rock stars and cult leaders. Gossip spread through the Usenet suggesting that the entire Slackware project was the work of witches and devil-worshippers! "Linux, the free OS....except for your SOUL! MOUHAHAHAHA!"

From: cajho@uno.edu
Date: 7 Jan 1994 15:48:07 GMT

Jokes alluding to RFC 666, demonic daemons, and speculation that Pat Volkerding was actually L. Ron Hubbard in disguise were rampant in the threads that followed. The whole amusing incident probably helped Slackware gain some market share:

I LOVE THIS!!

I was browsing here to figure which version of Linux to install, but after this, I think that I hve no choice but to install Slackware now.

From: David Devejian
Date: 10 Jan 1994 04:57:41 GMT

All folklore and kidding aside, Slackware is a wise and powerful choice for your adventures in Linux, whether you are a hobbyist, student, hacker, or system administrator in the making.

### Why, Then?

If you are a system administrator, you may already be dealing with one or more key servers running Slackware. Unless you have time to experiment at work, sticking to the tried-and-true distribution may be the easiest way to go. If you expect to get help from Unix literate friends and colleagues, better make sure they're running something compatible-odds are they're running Slackware. Its shortcomings are widely acknowledged, for the most part discovered, documented and patched whenever possible. You can put together a Slackware box, close the known security holes, and install some complementary tools from the other Linux distributions to create an excellent Unix server or desktop workstation, all in about half a day.

### Slackware Pros and Cons

Slackware is old | It's mature, widely available, and the most widely installed Linux distribution
Slackware lacks sexy administrative tools a la RedHat | You're free to add other distributions such as the RedHat package manager
Slackware includes bundled security holes | We know what some of the vulnerabilities are and volunteers have posted fixes
Donald Knuth complained about the fonts | Patrick Volkerding fixed the fonts
Linus Torvalds uses another distribution | Oh well
Slackware is assembled by Devil Worshippers | Satanist crackers (not SATAN itself) will avoid your box
Slackware is no longer | This is a myth, Slackware is developed actively maintained, sans marketing hype
Slackware is not supported by a commercial vendor or sanctionaed user group | Linux support is available along with consultants, explained further in the section on Commercial Support
Slackware is not created by a committee or development team | Good. A system designed by one accountable individual is cohesive

If you are still undecided whether Slackware is the tastiest flavor of Linux for you, have a look at the "Buyer's Guide" published in the Linux Journal, which gives a thorough comparison and evaluation of each major distribution. For a straightforward listing of Linux flavors, have a look at the Linux Distribution HOWTO on the Internet:
http://sunsite.unc.edu/LDP/HOWTO/Distribution-HOWTO.html

### Planning

Nine tenths of wisdom is timing. The right time to set up Slackware is afteryou've carefully planned the installation and alternatives in the unfortunate event of a problem. A well-planned installation of Slackware will repay itself many times over in the future, when the natural process of Linux evolution leads you to add disk space, install a newer Slackware release, or jettison any old, inferior operating systems that may linger on your drives.

Like Unix, Slackware Linux tends to grow like a virus. If you succeed in getting one Slackware box up and running, you're likely to start infecting other computers that belong to your friends, family, and coworkers. When this happens, you'll be grateful that you at least took the time to think through this first setup-and so will they!

This section will help you decide...

- if you've got what it takes (of course you do!)
- whether your computer hardware is ready to run Slackware Linux
- where and how to get Slackware Linux
- how to best arrange disks and file systems to protect your work
- not to upgrade an older version of Slackware
- which packages of the distribution you want and need
- how you will handle installation problems (however unlikely)

### Literacy Required

Linux is a powerful operating system, and with power comes responsibility. Like Linux, the Slackware release treats you with the respect you deserve as an intelligent human being. If you elect to wipe out a few hard drives with a misplaced punctuation mark, so be it. There are graceful and intelligent front-ends to Linux that allow the average end-user to get lots of productive work done without ever delving into the cryptic subtleties of Unix setup and administration. But there's no such luck for you, the appointed installation guru. If you're going to install Slackware, be forewarned that you should know your IRQs from your RS232s and your SCSIs from your IDEs.

### Hardware Compatibility

This is an essential element for planning any Linux installation. The only Slackware-specific hardware issue is this: you must confirm that the particular version (vintage, release) distribution of Slackware you'll be installing from provides a kernel and drivers to support your hardware. You're in great shape with just about any IBM-compatible personal computer with an Intel CPU older than the date on your Slackware distribution but younger than 1992 (built after 1992). If you have a bleeding-edge machine, you may need to download a newer boot disk that includes an updated kernel and drivers.

For the latest information on it general Linux hardware compatibility, check the Linux Hardware Compatibility HOWTO document on the World Wide Web:
http://sunsite.unc.edu/LDP/HOWTO/Hardware-HOWTO.html

To check for up-to-the minute Slackware news, such as which boot kernels are available, you can look in this directory of the Slackware home ftp site, ftp.cdrom.com:
ftp://ftp.cdrom.com/pub/linux/slackware/patches/

### Thinking Through Storage And File Systems

Careful planning of file systems and the storage media upon which they reside can spare you hours of painful juggling at a later date. In particular, putting all of your custom administration files, user homes, and local software onto dedicated partitions or disks will allow you to upgrade Slackware on the root partition with minimal disruption to your improvements to the system.

### Multiple Operating Systems On One Hard Drive

A typical personal computer has one fixed disk drive. If you're a hobbyist or power user, you may already have installed more than one Operating System on that drive. For example, your computer may have shipped running MS-DOS or Windows 95 as a pre-loaded operating system, after which you added another operating system such as OS/2, NeXTstep, Geoworks, or Linux. To run multiple operating systems from one drive, the disk is divided into separate areas known as partitions. Each partition may contain a different operating system. Once you've installed a second OS, you also need to install a small program called a boot manager or OS loader that runs at system startup time and offers you a choice of all the installed operating systems.

If you're adding Linux to a computer running a lesser OS, you may elect to keep the old operating system around for kicks. Take a look at the Linux Loader (LILO), a high-powered boot manager that comes free with Slackware. The latest distribution of LILO and its documentation are available via FTP from this URL:
ftp://lrcftp.epfl.ch/pub/linus/local/lilo/
An overview of LILO and how you can use it are easily gleaned from the LILO Mini-HOWTO:
http://sunsite.unc.edu/LDP/HOWTO/mini/LILO/

### Designing a File System To Use Multiple Partitions

In a simple world, you can set up Linux to run on a single disk partition (or maybe two-one for swap). In a real-world, multi-user Unix system, a single-drive file system setup creates unnecessary risks and hassles you can avoid by distributing the file system across multiple partitions. It's all the same to Unix, which views the file system as a continuum of available space comprised of all the disks and partitions "mounted" into various locations on the file tree.

If you create a Slackware setup on only one drive partition, you effectively put all of your eggs in one basket-one user may receive an abundance of e-mail and overload the `/var/mail` file system, another might store enormous files in their home area, etc. As with many Unix quandaries, you have a choice of solutions to control file system use, including quotas and user limits. Distributing your Unix file system across multiple partitions and disks has an extra benefit for Slackware users-it allows you to upgrade the Slackware installation with a minimum of pain.

The Linux file system standard puts the personal space of each user into a subdirectory of `/home`. The user Linus would typically have a home under `/home/linus`, the user Patricia under `/home/patricia`, and so on. An easy way to protect this file system during future upgrades is to mount `/home` on a separate disk or partition. Same goes for custom programs and resources you add to the off-the-shelf version of Slackware-plan to put these on a separate disk mounted to `/usr/local` and you'll have much less grief when it comes time to upgrade. "Where things go"---or where they try to go unless you dictate otherwise--- in a Slackware box is determined by a standard file system layout, called the Linux File system Hierarchy Standard. Read all about it URL:
http://www.pathname.com/fhs/

### Designing a File System To Use Multiple Hard Drives

In some settings, Linux boxes are assembled from leftover parts-"worthless" 386 and 486 motherboards, old grayscale monitors, and discarded hard drives. You may need to link together several ancient 40MB hard drives to come up with enough space to install Slackware. In other environments using Linux, there are so many users and such large development projects that several of the biggest, state-of-the-art drives or drive arrays must be integrated to provide enough space.

You can install Slackware onto more than one disk at once by designating individual disks to hold specific parts of the Slackware installation (just like using multiple partitions), creating a logically continuous and unified file system.

For an informed second opinion on partitioning, swap space setup, fragmentation and inode size consult Kristian Koehntopp's Partitions Mini-HOWTO via Internet URL:
http://sunsite.unc.edu/mdw/HOWTO/mini/Partition/

### Upgrade? Think Twice!

24-Aug-95 NOTE: Trying to upgrade to ELF Slackware from a.out Slackware will undoubtedly cause you all kinds of problems. Don't do it.

Patrick Volkerding

One thing we don't hear too often with Slackware is the U-word. Slackware's setup program is designed to put a fresh operating system onto empty hard disks or empty disk partitions. Installing on top of a previous Slackware installation can erase your custom applications and cause compatibility problems between updated applications and older files on the same system. When Slackware was first put together, everyone was a first-time Linux user, and the system was always experimental-reinstalling the entire operating system and applications was the norm in a developmental system. Today, many institutions and businesses now run mission-critical applications on Slackware Linux. In such environment, a simple reboot is a planned activity and taking down the system and overwriting all the user files or custom applications is absolutely unacceptable.

So, if you cracked open these pages to plot an upgrade, better think twice. If you're planning a first-time Slackware installation, there are a few decisions you can make now that will ease upgrading in the future:

- assign `/usr/local` to be mounted from its own separate drive or partition
- build and install all of your organization's custom applications under the `/usr/local` area of the file system
- assign `/home` to be mounted from its own separate drive or partition
- make sure all user "homes" are added under the `/home` area of the file system

Teaching you how to finagle a Slackware upgrade is beyond the scope of this chapter, but it is workable if you are an experienced Unix administrator and you've taken the precautions above. There is an Internet resource that claims to analyze your distribution and bring it up to date across the Internet, you might want to have a look at this URL if you're facing an upgrade situation:
ftp://ftp.wsc.com/pub/freeware/linux/update.linux/

Or read, weep, and learn from the upgrade expertise of Greg Louis in his mini HOWTO document: Upgrading Your Linux Distribution, available where finer LDP publications are mirrored:
http://sunsite.unc.edu/LDP/

### Select An Installation Method

Slackware can be installed from a variety of media and network sources to fit your needs and budget. Every installation method will require you to have at least three floppy diskettes available to get started.

### CD-ROM

Installation from CD-ROM is fast, popular, and convenient. Although someone has to break down and pay for the initial purchase of a CD-ROM, sharing CD's is encouraged. Because Linux and the Slackware distribution are copylefted, you may make as many copies as you like. CD-ROM installation is also a bit better practice in terms of netiquette, since you're not hogging bandwidth for an all-day FTP transfer. Finally, you may be grateful for the extra utilities and documentation that accompany the CD-ROM, especially if you run into installation hassles or need to add components in the future.

### Party!

If you're a hobbyist (or want to watch a few dozen Slackware installs before taking on the task at work), see if there is a LUG (Linux User Group) in your area that sponsors install parties. Imagine a roomful of generous and knowledgeable hackers uniting to share CD-ROMs and expertise with other enthusiasts.

FTP

According to the Linux Counter Project, FTP is still the most popular way to obtain Linux by a narrow margin. Once you transfer Slackware from the closest possible FTP mirror, you'll still need to put the Slackware 'disk sets' onto installation media such as a hard drive partition or laboriously copy them onto 50-odd floppy diskettes.

NFS

In a networked environment, it is possible to install Slackware on a shared file system and allow everyone on the Local net to attach to this shared location and install. If you have the technical know-how or a geeked out system administrator who is Linux-literate, this is a great way to go. The initial distribution of Slackware can be added to the network via CD-ROM, FTP, Loading floppies, tape, or even via a remote NFS share across the Internet! For details on such a remote share, see these URLs:

- http://sunsite.doc.ic.ac.uk/sunsite/access/nfs.html
- ftp://ftp.cdrom.com/pub/linux/slackware/MIRRORS.TXT
- http://www.cs.us.es/archive/nfs.html

Floppy

It's time consuming, but it works-you can buy or create the pile of floppies needed to install Slackware and then feed them into your box one-by-one when prompted. Slackware 'disk sets' are actually designed and arranged to fit floppy diskettes. If you happen to have a huge stack of recycled high-density floppy diskettes at your disposal, this can be the most economical way to go.

Hard Disk

This is the way to do it if you've transferred the Slackware distribution across the Internet via FTP-you'll escape the floppy trap by merely creating boot, root, and rescue diskettes. It requires you to have an extra disk or disk partition with extra space to hold the Slackware files during installation (you can erase them afterwards). Installation from the hard drive is also a workaround if you bought the CD but your CD-ROM drive is not supported by any of the Linux kernels that come with the Slackware CD. You can use your present operating system to transfer the Slackware files onto spare hard disk space, then boot into the Slackware installation.

Tape

Still experimental as of this writing, tape offers a great compromise of speed and economy when installing Slackware-worth considering if a friend with compatible tape drive can dupe a CD or FTP archive for you. Get the latest details from the TAPE section of the INSTALL.TXT file that accompanies your Slackware distribution.

### Boot Disks: Always a Good Thing

Even if you're gifted with a direct T-3 Internet connection that allows you to suck up a new distribution of Slackware right off the 'net, you'll be wise to start by building the two Slackware setup disks (boot and root) before proceeding. In the event of an unfortunate accident (power outage, feline friends traversing the keyboard, or even human error), these two little disks, in the hands of an experienced Unix hacker, may be able to revive your system or at least rescue your personal files.

### Prepare To Be Questioned (There Will Be a Quiz...)

During the installation, must choose which disk sets (Slackware lingo for collections of software) and individual programs to install. You can usually just accept the default recommendation of whether or not a package is worth having. A few setup decisions are crucial. Mid-installation is no time to decide you want to boot back into OS/2 and look up what kind of graphics chip your video card uses, which network card you've got in there, or whether you'll be needing a SCSI or an IDE kernel to get started.

### Contingency Plan: Food For Thought

I've often blurted out to a supervisor, "Oh sure, I can have it up and running in a few hours." Famous last words. If anyone else has a stake in the Slackware computer's health, you owe it to them and yourself to think through a less-than-perfect installation attempt:

1. What's your plan in the unfortunate event that Slackware Linux doesn't run perfectly on your system?
2. Do you have the necessary tools and know-how to revert to your previous operating system?
3. Do you have a backup of your old system on-hand, and do you have experience restoring entire systems?
4. Is this a shared computer? Will people be coming into work on Monday expecting to log in to the system you just hosed?
5. Where is the closest Unix expert with Slackware Linux expertise? Can you call on them to help you in the event of a problem setting up or upgrading a critical Slackware system?

### Slackware Setup Worksheet

After the files are all copied, Slackware can go on to do most of the system and network configuration, if you're ready. To help you plan your decisions, Section 3 consists of a worksheet derived from the text-based Slackware setup program. You can use this worksheet to record answers in advance (while your computer is still working!), so you'll be ready with the necessary details-partitions, IP addresses, modem and mouse IRQs, host and domain names, and others that you're required to provide during setup.

1. Keyboard: Slackware setup will want to know if you need to remap your keyboard to something other than a standard USA 101 key layout? Yes or No.
2. Swap Configuration:Do you have one or more partitions prepared as type 82 (Linux Swap)? Yes or No.
3. Do you want setup to use mkswap on your swap partitions? Most likely "yes", unless you have less than 4MB of RAM and have already done this to help setup work better. Yes or No.
4. Prepare Main Linux Partition: Setup will list any partitions marked as type 83 (Linux Native) and ask which one to use for the root (/) of the Linux file system. Use a format like `/dev/hda3` or whatever the device name is. Yes or No.

   Last chance to back out! When using the install from scratch option, you must install to a blank partition. If you have not already formatted it manually, then you must format it when prompted. Enter `I` to install from scratch, or `a` to add software to your existing system.

5. (Re)format the main Linux partition. Would you like to format this partition? Yes or No.

   Ext2fs defaults to one inode per 4096 bytes of drive space. If you're going to have many small files on your drive, you may need more inodes (one is used for each file entry). You can change the density to one inode per 2048 bytes, or even per 1024 bytes. Enter `2048` or `1024`, or just hit `Enter` to accept the default of 4096. 4096, 2048, or 1024.

6. Prepare Additional Linux Partitions: You can mount some other partitions for `/usr` or `/usr/X11` or whatever (`/tmp`---you name it). Would you like to use some of the other Linux partitions to mount some of your directories? Yes or No.

   These are your Linux partitions (partition list displayed). These partitions are already in use (partition list displayed). Enter the partition you would like to use, or type `q` to quit adding new partitions. Use a format such as: `/dev/hda3` or whatever the device name is. Partition name or `quit`

7. Would you like to format this partition? Yes, No, or Check Sections, too
8. Now this new partition must be mounted somewhere in your new directory tree. For example, if you want to put it under `/usr/X11R6`, then respond: `/usr/X11R6` Where would you like to mount this new partition? Mount point
9. Would you like to mount some more additional partitions? Yes or No.

   DOS and OS/2 Partition Setup: The following DOS FAT or OS/2 HPFS partitions were found: (partition list displayed).

10. Would you like to set up some of these partitions to be visible from Linux? Yes or No.
11. Please enter the partition you would like to access from Linux, or type `q` to quit adding new partitions. Use a format such as: `/dev/hda3` or whatever the device name is. Partition name or Quit
12. Now this new partition must be mounted somewhere in your directory tree. Please enter the directory under which you would like to put it. for instance, you might want to reply `/dosc`, `/dosd`, or something like that. Where would you like to mount this partition? Mount point
13. Source Media Selection:
    1. Install from a hard drive partition.
    2. Install from floppy disks.
    3. Install via NFS.
    4. Install from a pre-mounted directory.
    5. Install from CD-ROM.
    1, 2, 3, 4, or 5
14. Install from a hard drive partition: To install directly from the hard disk you must have a partition with a directory containing the Slackware distribution such that each disk other than the boot disk is contained in a subdirectory. For example, if the distribution is in `/stuff/slack`, then you need to have directories named `/stuff/slack/a1`, `/stuff/slack/a2`, and so on, each containing the files that would be on that disk. You may install from DOS, HPFS, or Linux partitions. Enter the partition where the Slackware sources can be found, or `p` to see a partition list. Partition name or Partition list
15. What directory on this partition can the Slackware sources be found. In the example above, this would be: `/stuff/slack`. What directory are the Slackware sources in? Directory name
16. What type of file system does your Slackware source partition contain?
    1. FAT (MS-DOS, DR-DOS, OS/2)
    2. Linux Second Extended File System
    3. Linux Xiafs
    4. Linux MINIX
    5. OS/2 HPFS
    1, 2, 3, 4, or 5
17. Install from a pre-mounted directory: OK, we will install from a directory that is currently mounted. This can be mounted normally or through NFS. You need to specify the name of the directory that contains the subdirectories for each source disk. Which directory would you like to install from? Directory name
18. Install from floppy disks: The base Slackware series (A) can be installed from 1.2M or 1.44M media. Most of the other disks will not fit on 1.2M media, but can be downloaded to your hard drive and installed from there later. Which drive would you like to install from (1/2/3/4)?
    1. `/dev/fd0u1440` (1.44M drive a:)
    2. `/dev/fd1u1440` (1.44M drive b:)
    3. `/dev/fd0h1200` (1.2M drive a:)
    4. `/dev/fd1h1200` (1.2M drive b:)
    1, 2, 3, or 4
19. Install via NFS: You're running off the hard drive file system. Is this machine currently running on the network you plan to install from? If so, we won't try to reconfigure your ethernet card. Are you up-and-running on the network? Yes or No.
20. You will need to enter the IP address you wish to assign to this machine. Example: 111.112.113.114. What is your IP address? IP address
21. Now we need to know your netmask. Typically this will be 255.255.255.0. What is your netmask? IP address
22. Do you have a gateway? Yes or No.
23. What is your gateway address? IP address

    Good! We're all set on the local end, but now we need to know where to find the software packages to install. First, we need the IP address of the machine where the Slackware sources are stored. Since you're already running on the network, you should be able to use the hostname instead of an IP address if you wish.

24. What is the IP address of your NFS server? IP address

    There must be a directory on the server with the Slackware sources for each disk in subdirectories beneath it. Setup needs to know the name of the directory on your server that contains the disk subdirectories. For example, if your A3 disk is found at `/slackware/a3`, then you would respond: `/slackware`.

25. What is the Slackware source directory? Directory name
26. Install from CD-ROM: What type of CD-ROM drive do you have?
    1. Works with most ATAPI/IDE CD drives `/dev/hd*`
    2. SCSI `/dev/scd0` or `/dev/scd1`
    3. Sony CDU31A/CDU33A `/dev/sonycd`
    4. Sony 531/535 `/dev/cdu535`
    5. Mitsumi, proprietary interface---not IDE `/dev/mcd`
    6. New Mitsumi, also not IDE `/dev/mcdx0`
    7. Sound Blaster Pro/Panasonic `/dev/sbpcd`
    8. Aztech/Orchid/Okano/Wearnes `/dev/aztcd`
    9. Phillips and some ProAudioSpectrum16 `/dev/cm206cd`
    10. Goldstar R420 `/dev/gscd`
    11. Optics Storage 8000 `/dev/optcd`
    12. Sanyo CDR-H94 + ISP16 soundcard `/dev/sjcd`
    13. Try to scan for your CD drive
    1, 2, 3, 4, 5, 6, 7 8, 9, 10, 11, 12, or 13 IDE CD-ROM: Enter the device name that represents your IDE CD-ROM drive. This will probably be one of these (in the order of most to least likely): `/dev/hdb /dev/hdc /dev/hdd /dev/hde /dev/hdf /dev/hdg /dev/hdh /dev/hda` Device name
27. SCSI CD-ROM: Which SCSI CD-ROM are you using? If you're not sure, select `/dev/scd0`. `1. /dev/scd0
    2. /dev/scd1`
28. Installation method: With the Slackware CD, you can run most of the system from the CD if you're short of drive space or if you just want to test Linux without going through a complete installation. Which type of installation do you want (slakware or slaktest)?
    - [slakware] Normal installation to hard drive
    - [slaktest] Link `family /usr-$>$/cdrom/live/usr` to run mostly from CD-ROM
    slakware or slaktext
29. Series Selection: Identify which Packages you plan to install. You may specify any combination of disk sets at the prompt which follows. For example, to install the base system, the base X Window System, and the Tcl toolkit, you would enter: a x tcl Which disk sets do you want to install?
    - [A] Base Linux system
    - [AP] Various applications that do not need X
    - [D] Program Development (C, C++, Kernel source, Lisp, Perl, etc.)
    - [E] GNU Emacs
    - [F] FAQ lists
    - [K] Linux kernel source
    - [N] Networking (TCP/IP, UUCP, Mail)
    - [Q] Extra kernels with special drivers (needed for non-SCSI CD)
    - [T] TeX
    - [TCL] Tcl/Tk/TclX, Tcl language, and Tk toolkit for developing X apps
    - [X] Xfree86 Base X Window System
    - [XAP] X Window Applications
    - [XD] Xfree86 X11 server development system
    - [XV] Xview (OpenLook virtual Window Manager, apps)
    - [Y] Games (that do not require X)
    Any combination of a ap d e f k n q t tcl x xap xd xv y and other disk sets offered, separated by spaces
30. Software Installation: Next, software packages are going to be transferred on to your hard drive. If this is your first time installing Linux, you should probably use PROMPT mode. This will follow a defaults file on the first disk of each series you install that will ensure that required packages are installed automatically. You will be prompted for the installation of other packages. If you don't use PROMPT mode, the install program will just go ahead and install everything from the disk sets you have selected. Do you want to use PROMPT mode (y/n)?

    These defaults are user definable---you may set any package to be added or skipped automatically by editing your choices into a file called TAGFILE that will be found on the first disk of each series. There will also be a copy of the original tagfile called TAGFILE.ORG available in case you want to restore the default settings. The tagfile contains all the instructions needed to completely automate your installation.

31. Would you like to use a special tagfile extension?

    You can specify an extension consisting of a "." followed by any combination of 3 characters other than `tgz`. For instance, I specify '.pat', and then whenever any tagfiles called 'tagfile.pat' are found during the installation they are used instead of the default "tagfile" files. If the install program does not find tagfiles with the custom extension, it will use the default tagfiles. Enter your custom tagfile extension (including the leading ("."), or just press `Enter` to continue without a custom extension. Tagfile extension `Enter`

32. Extra Configuration: If you wish, you may now go through the options to reconfigure your hardware, make a bootdisk, and install LILO. If you've installed a new kernel image, you should go through these steps again. Otherwise, it's up to you.
33. Boot Disk Creation: It is recommended that you make a boot disk. Would you like to do this? Yes or No.

    Now put a formatted floppy in your boot drive. This will be made into your Linux boot disk. Use this to boot Linux until LILO has been configured to boot from the hard drive. Any data on the target disk will be destroyed. Insert the disk and press `Return`, or `s` if you want to skip this step.

34. Modem Setup: A link in `/dev` will be created from your callout device (cua0, cua1, cua2, cua3) to `/dev/modem`. You can change this link later if you put your modem on a different port. Would you like to set up your modem? Yes or No.
35. These are the standard serial I/O devices, Which device is your modem attached to (0, 1, 2, 3)?
    1. `/dev/ttyS0` (or COM1: under DOS)
    2. `/dev/ttyS1` (or COM2: under DOS)
    3. `/dev/ttyS2` (or COM3: under DOS)
    4. `/dev/ttyS3` (or COM4: under DOS)
36. Mouse Setup: A link will be created in `/dev` from your mouse device to `/dev/mouse`. You can change this link later if you switch to a different type of mouse. Would you like to set up your mouse? Yes or No.
37. These types are supported. Which type of mouse do you have (1, 2, 3, 4, 5, 6, 7)?
    1. Microsoft compatible serial mouse
    2. QuickPort or PS/2 style mouse (Auxiliary port)
    3. Logitech Bus Mouse
    4. ATI XL Bus Mouse
    5. Microsoft Bus Mouse
    6. Mouse Systems serial mouse
    7. Logitech (MouseMan) serial mouse
    1, 2, 3, 4, 5, 6, or 7
38. These are the standard serial I/O devices. Which device is your mouse attached to (0, 1, 2, 3)?
    1. `/dev/ttyS0` (or COM1: under DOS)
    2. `/dev/ttyS1` (or COM2: under DOS)
    3. `/dev/ttyS2` (or COM3: under DOS)
    4. `/dev/ttyS3` (or COM4: under DOS)
    0, 1, 2, or 3
39. Network Configuration: Now we will attempt to configure your mail and TCP/IP. This process probably won't work on all possible network configurations, but should give you a good start. You will be able to reconfigure your system at any time by typing netconfig. First, we'll need the name you'd like to give your host. Only the base hostname is needed right now (not the domain). Enter the hostname. Hostname

    Now, we need the domain name. Do not supply a leading "." Enter the domain name. Domain name

    If you only plan to use TCP/IP through loopback, then your IP address will be 127.0.0.1 and we can skip a lot of the following questions. Do you plan to ONLY use loopback? Yes or No.

    Enter your IP address for the local machine. Example: 111.112.113.114. Enter the IP address for this machine (aaa.bbb.ccc.ddd). IP address

40. Enter your gateway address, such as 111.112.113.1. If you don't have a gateway, you can edit /etc/rc.d/rc.inet1 later,or you can probably get away with entering your own IP address here. Enter the gateway address (aaa.bbb.ccc.ddd). IP address
41. Enter your netmask. This will generally look something like this: 255.255.255.0. Enter the netmask (aaa.bbb.ccc.ddd). IP address
42. Will you be accessing a nameserver? Yes or No.
43. Please give the IP address of the name server to use. You can add more Domain Name Servers by editing `/etc/resolv.conf`. Name Server for your domain (aaa.bbb.ccc.ddd)? HIP address

    You may now reboot your computer by pressing `Ctrl+Alt+Delete`. If you installed LILO, remove the boot disk from your computer before rebooting. Don't forget to create you `{/etc/fsta` if you don't have one!

    ### Making Slackware Happen

    If you've taken the time to plot and plan as recommended in the preceding sections, then the actual installation will be a piece of cake. There isn't much writing needed to explain the actual process of loading Slackware onto your computer(s). You just follow the steps to build boot and root diskettes, then answer a long series of questions asked by the menu-driven Slackware installation program. If you've completed the Slackware Installation Worksheet, these questions will be familiar and everything will run smoothly.

    ### Build Some Boot Disks

    Choose Your Kernel

    When installing Slackware Linux, you must create a boot diskette with a Linux kernel that is specially prepared to recognize your system hardware. For example, to install Slackware from an IDE CD-ROM drive onto a SCSI hard drive, the kernel that you put onto the boot diskette will need to have drivers for your SCSI card and your IDE CD-ROM drive.

    The kernels are stored as compressed binary image files that you can access from most any operating system to create a Slackware Boot diskette. On the Slackware FTP site, CD-ROM, or NFS mount, you'll find a subdirectory called bootdsks.144-containing 1.44 MB kernel images for creating boot disks on 1.44MB high density 3.5'' floppy diskettes. If you're working from a 5.25'' floppy diskette drive, look in a directory called bootdsks.12 for kernel images that will fit the smaller diskette format.

    Table 2 provides a quick reference of the kernel images available as we went to press. Information and up-to-date boot disk image information is available from this URL: ftp://ftp.cdrom.com/pub/linux/slackware/bootdsks.144/README.TXT

    ### Slackware Boot Kernel Image Descriptions

    Table 1

    aztech.i | CD-ROM drives: Aztech CDA268-01A, Orchid CD-3110, Okano/Wearnes, CDD110, Conrad TXC, CyCDROM CR520, CR540
    bare.i | (none, just IDE support)
    cdu31a.i | Sony CDU31/33a CD-ROM
    cdu535.i | Sony CDU531/535 CD-ROM
    cm206.i | Philips/LMS cm206 CD-ROM with cm260 adapter card
    goldstar.i | Goldstar R420 CD-ROM (sometimes sold in a Reveal "Multimedia Kit")
    mcd.i | NON-IDE Mitsumi CD-ROM support
    mcdx.i | Improved NON-IDE Mitsumi CD-ROM support
    net.i | Ethernet support
    optics.i | Optics Storage 8000 AT CD-ROM (the "DOLPHIN" drive)
    sanyo.i | Sanyo CDR-H94A CD-ROM support
    sbpcd.i | Matsushita, Kotobuki, Panasonic, CreativeLabs (Sound Blaster), Longshine and Teac NON-IDE CD-ROM support
    xt.i | MFM hard drive support

    Table 2

    7000fast.s | Western Digital 7000FASST SCSI support
    Advansys.s | AdvanSys SCSI support
    Aha152x.s | Adaptec 152x SCSI support
    Adaptec 1542 SCSI support
    Aha1740.s | Adaptec 1740 SCSI support
    Aha2x4x.s | Adaptec AIC7xxx SCSI support (For these cards: AHA-274x, AHA-2842, & AHA-2940, AHA-2940W, AHA-2940U, AHA-2940UW, AHA-2944D, AHA-2944WD, & AHA-3940, AHA-3940W, AHA-3985, AHA-3985W)
    Am53c974.s | AMD AM53/79C974 SCSI support
    Aztech.s | All supported SCSI controllers, plus CD-ROM support for Aztech CDA268-01A, Orchid CD-3110, Okano/Wearnes CDD110, Conrad TXC, CyCDROM CR520, CR540
    Buslogic.s | Buslogic MultiMaster SCSI support
    Cdu31a.s | All supported SCSI controllers, plus CD-ROM support for Sony CDU31/33a
    Cdu535.s | All supported SCSI controllers, plus CD-ROM support for Sony CDU531/535
    Cm206.s | All supported SCSI controllers, plus Philips/LMS cm206 CD-ROM with cm260 adapter card
    Dtc3280.s | DTC (Data Technology Corp) 3180/3280 SCSI support
    Eata\_dma.s | DPT EATA-DMA SCSI support (Boards such as PM2011, PM2021, PM2041, & PM3021, PM2012B, PM2022, PM2122, PM2322, PM2042, PM3122, PM3222, & PM3332, PM2024, PM2124, PM2044, PM2144, PM3224, PM3334.)
    Eata\_isa.s | DPT EATA-ISA/EISA SCSI support (Boards such as PM2011B/9X, & PM2021A/9X, PM2012A, PM2012B, PM2022A/9X, PM2122A/9X, PM2322A/9X)
    Eata\_pio.s | DPT EATA-PIO SCSI support (PM2001 and PM2012A)
    Fdomain.s | Future Domain TMC-16x0 SCSI support
    Goldstar.s | All supported SCSI controllers, plus Goldstar R420 CD-ROM (sometimes sold in a Reveal "Multimedia Kit")
    In2000.s | Always IN2000 SCSI support

    Table 3

    Iomega.s | IOMEGA PPA3 parallel port SCSI support (also supports the parallel port version of the ZIP drive)
    Mcd.s | All supported SCSI controllers, plusstandard non-IDE Mitsumi CD-ROM support
    Mcdx.s | All supported SCSI controllers, plus enhanced non-IDE Mitsumi CD-ROM support
    N53c406a.s | NCR 53c406a SCSI support
    N\_5380.s | NCR 5380 and 53c400 SCSI support
    N\_53c7xx.s | NCR 53c7xx, 53c8xx SCSI support (Most NCR PCI SCSI controllers use this driver)
    Optics.s | All supported SCSI controllers, plus support for the Optics Storage 8000 AT CDROM (the "DOLPHIN" drive)
    Pas16.s | Pro Audio Spectrum/Studio 16 SCSI support
    Qlog\_fas.s | ISA/VLB/PCMCIA Qlogic FastSCSI! support (also supports the Control Concepts SCSI cards based on the Qlogic FASXXX chip)
    Qlog\_isp.s | Supports all Qlogic PCI SCSI controllers, except the PCI-basic, which the AMD SCSI driver supports |
    Sanyo.s | All supported SCSI controllers, plus Sanyo CDR-H94A CD-ROM support
    Sbpcd.s | All supported SCSI controllers, plus Matsushita, Kotobuki, Panasonic, CreativeLabs (Sound Blaster), Longshine and Teac NON-IDE CDROM support
    Scsinet.s | All supported SCSI controllers, plus full ethernet support
    Seagate.s | Seagate ST01/ST02, Future Domain TMC-885/950 SCSI support
    Trantor.s | Trantor T128/T128F/T228 SCSI support
    Ultrastr.s | UltraStor 14F, 24F, and 34F SCSI support
    Ustor14f.s | UltraStor 14F and 34F SCSI support

    Unix Operating Systems

    If you have the Slackware kernel images on a Unix host that has a floppy drive, you can quickly create the necessary boot and root diskettes using Unix commands. You can use the dd command. The example below which puts the scsi.s boot kernel image onto the floppy device rfd0: `dd if=scsi.s of=/dev/rfd0 obs=18k`

    You'll need to repeat this process with one of the root disk images onto a second floppy diskette.

    DOS, OS/2, MS-Windows 95 \& NT

    Slackware bundles a utility called rawrite.exe that will generate boot and root diskettes under DOS-literate operating systems. To write the scsi.s kernel image onto the formatted, high-density diskette in your A:$\backslash$ diskette drive, issue the following command: `RAWRITE SCSI.S A:`

    You'll need to repeat this process with one of the root disk images onto a second floppy diskette.

    ### Boot Into Action

    Here's the big anticlimax. After all this planning, preparation, and partitioning, you're in the home stretch. Make sure the boot floppy is in the diskette drive, and restart your computer. Now is a good time to go get some coffee (or whatever you like to keep you company) and return to the machine ready to play the part of a button-pushing drone, answering yes-no questions for an hour or so.

    Log in as root (no password) and type setup or setup.tty

    ### Slackware Setup Program

    Slackware comes with two versions of an excellent setup program. One is a colorful, dialog-based, menu-driven version. An alternative setup, setup.tty, is a text-only version of the installation that you may actually prefer, because detailed diagnostics and error messages will stay on the screen and not be erased by the next dialog box, which happens in the color version. If you're attempting a Slackware setup on sketchy hardware, I strongly recommend the less colorful setup.tty routine. If you don't know much about Unix and would feel more comfortable with an attractive. ``clean'' interface to the same setup process, then by all means go for the beautiful setup.

    ###
    Slackware96 Linux Setup (version HD-3.1.0)

    ### Welcome to Slackware Linux Setup

    Hint: If you have trouble using the arrow keys on your keyboard, you can use '+', '-', and TAB instead. Which option would you like?

    - HELP: Read the Slackware Setup HELP file
    - KEYMAP: Remap your keyboard
    - MAKE TAGS: Tagfile customization program
    - TARGET: Select target directory [now: / ]
    - SOURCE: Select source media
    - DISK SETS: Decide which disk sets you wish to install
    - INSTALL: Install selected disk sets
    - CONFIGURE: Reconfigure your Linux system
    - PKGTOOL: Install or remove packages with Pkgtool
    - EXIT: Exit Slackware Linux Setup OK Cancel

    To transfer Slackware onto your system from here should involve little more than selecting what you want off the menus. By filling out the Section 3 worksheet in advance, you should be able progress quickly through each menu in order, until you reach the INSTALL option, at which point things may s l o w down: you are advised to select the PROMPT feature and read about each software package, deciding whether or not you'd like it to end up on your Slackware system. The last part of a regular setup is the CONFIGURE section on the setup menu, and the questions you must answer bear a striking resemblance to the second half of the Section 3 worksheet.

    ### Is That All?

    Definitely not! At this point, you've either got some annoying obstacle that is preventing the setup from completing, or more likely, you're looking at the root prompt `darkstar\~\#`
    and wondering "What Next?"

    Well, if you're plagued by problems, you'll want to proceed directly to the next section on troubleshooting. If things appear to be in working order, you've still got some details to attend to. Sort of like purchasing a new automobile-after you've selected an paid for a new car, there are still some things you need before you can drive it with confidence-insurance, a steering wheel club, and perhaps some luxuries that make the driving experience closer to Fahrvergn\ügen than FAQ!

    ### Troubleshooting Difficult Deliveries

    Not every Slackware installation is born on cue to expecting system administrators. I've pulled a few all nighters, sitting down after work one evening to upgrade a Slackware box and still there struggling to get the damn thing back online at dawn, before people start bitching about their missing mail and news. This section will look at a few common Slackware setup problems, solutions, and where to look for additional assistance.

    ### Slackware Installation FAQs

    Patrick Volkerding, the father of Slackware, has dealt with the many questions of new users by listening, answering, and anticipating repeat queries. To catch the new Slackware users before they ask the same question for the 5,000th time, Patrick has kindly created documentation and included it with the Slackware distribution. Three files that you may find very helpful in answering your initial questions are FAQ.TXT, INSTALL.TXT, and BOOTING.TXT.

    Web Support For Slackware

    At this time, the Slackware-specific help you'll find on the Internet tends to be highly customized---such as how to NFS-mount the distribution on computers within a certain university or how to wire your dorm room into a particular residential WAN using Slackware.

    Usenet Groups For Slackware

    The comp.os.linux.* hierarchy of the Usenet is a treasure-trove of Linux information, not necessarily Slackware-specific. At present, 11 separate Linux forums handle a high volume of discussion in this hierarchy. Dozens of other general-Unix newsgroups are also available. Some discussions relevant to getting Slackware up and running are:

    - comp.os.linux.setup

      A group established for figuring out Linux installation and system administration. The best place to look for clever setup strategies and to network with others who may have recently installed Slackware.

    - comp.os.linux.announce

      A must-read for Linux administrators and enthusiasts, C.o.l.a is a sort of daily Linux digest for the Internet community. The group is moderated, so only the relevant material makes it into circulation. The newsgroup is designed as a low-traffic alert service for announcing Linux-specific software, documentation, and security warnings.

    - comp.os.linux.answers

      Here's where to find (or post) the latest Linux FAQs, How-Tos, READMEs and other documents that answer questions about Linux.

    Mail Lists For Slackware

    At this time, there are no electronic mail discussions devoted to Slackware per-se. You can participate in some excellent Linux-related talk via e-mail, try www.linux.org and asking in the newsgroups for a few good subscription lists.

    ### You Get What You Pay For (Commercial Support)

    Commercial support for Linux is available from some of the CD-ROM vendors and a long list of Linux Consultants, who can be contacted through the Linux Commercial and Consultants HOWTO documents: http://sunsite.unc.edu/LDP/HOWTO/Consultatns-HOWTO.html
    http://sunsite.unc.edu/LDP/HOWTO/Commercial-HOWTO.html

    ### Basking In the Afterglow

    Don't rest on your laurels quite yet. Especially if your Slackware machine is a shared computer or lives in a networked environment. Grooming a computer for community and network use is a bit more demanding than just running the setup program and forgetting about it. We'll leave you with a few pointers to securing and sharing your new Slackware system.

    ### Consider Reinstalling!

    I know you just sat through what may have been a long and perplexing installation session. But before you move into the house you just built, consider tearing it down and starting over again. Friedrich Nietzsche had a quote: "A man learns what he needs to know about building his house only after he's finished."

    If, in the process of installing the system, you had some thoughts about how you might do it differently, now is the time. If your Slackware Linux box will be a multi user machine or a network server, there may never be such a convenient opportunity to reinstall or reconfigure the system in radical ways.

    ### Install And Test Key Applications

    Before you put away the CDROM or return the 50 floppy disks you borrowed to run the Slackware installation, sit down and test each application that your users may expect to find in working order. If professor Bien absolutely has to have emacs humming under X-Windows, you'd better test it out now, while you've still got the workstation 'in the shop.'

    Did you set up this Linux box to serve a specific purpose in your organization, such as...

    - File and Print Server for Macintoshes or Windows PCs: Better make sure netatalk, CAP and samba are configured and tested
    - World Wide Web Server: Time to choose a www daemon and get it up and running
    - Mail Server: Have you configured sendmail? How alternative mail applications that offer improved performance, features, or security over their Slackware-default counterparts? Most mail servers would benefit from cucipop, procmail, and Smarlist, to name a few.
    - Remote Access Server: Got those serial ports or add-in boards working?
    - Firewall: You might like to look at the second firewall toolkit from TIS, as well as front-ends to ease firewall and network administration, such as linuxconf.

    ### Secure the System

    Get Off The LAN At Once

    Out of the box, Slackware is an insecure system. Although Patrick does his best to create a secure distribution, a few inevitable holes become known, and patches or workarounds are made available in the system administration (and cracker) communities. If you installed Slackware from a network source such as an NFS-mounted drive, you should temporarily disconnect your box from the LAN after a successful installation, while you plug a few holes.

    Give Root a Password

    By default, a new Slackware box will not require a password for the root user. When you're comfortable that your new Slackware system is stable (after a few hours, not days or weeks), add a password to protect the root account. Login as root and type: `passwd root`

    Give Yourself An Account

    On large shared systems, the super-user root account is not used as a working login account by any individual. If you're interested in system administration or are running a networked machine, this is a good precedent to follow. Use the \texttt{/sbin/adduser} program to make yourself a login account, rather than working out of the root login. I always smile when I see students and hobbyists posting proudly to the Usenet as root@mymachine.mydomain. Be humble and safe, create another login account for your daily work and use su (rather than login) to enter the root account sparingly.

    Deny Root Logins

    Not only is it uncommon to work as the root user, it is not considered secure to login as root across the network. Administrative users usually connect to a Unix box as their regular username login, and then use the su utility to become the root user as needed. To prevent crackers, hackers, and ignorant users from logging in directly as root, edit the file `/etc/securetty` and comment out (prepend a pound \# sign before) all but the local terminals: `console tty1 tty2 \# ttyS0 \# ttyS1`

    After this fix, users who attempt to login in as root across the network will be denied: `Linux 2.0.29 (durak.interactivate.com)
    durak login: root
    root login refused on this terminal.
    durak login:`

    Apply the Simple Fixes

    Slackware installs itself with some very real security problems. Rather than master Unix security and sleuth out these vulnerabilities yourself, you can jump start the hole-patching process by visiting a web resource maintained for just this purpose, called Slackware SimpleFixes: http://cesdis.gsfc.nasa.gov/linux-web/simplefixes/simplefixes.html

    Check For Patches On ftp.cdrom.com

    As an actively maintained Linux distribution Slackware updates and patches are available from: ftp://ftp.cdrom.com/pub/linux/slackware/patches/

    Stay Current

    You might like to subscribe to one or more electronic mail lists that alert users to issues in Linux administration, such as:

    - linux-alert-request@tarsier.cv.nrao.edu
    - linux-security-request@redhat.com

    ### Back Up

    Like how things are running? Save it for a rainy day by backing up. Amanda (The Advanced Maryland Automatic Network Disk Archiver) is one of several backup options for Linux installations. You can learn more about Amanda from: http://www.cs.umd.edu/projects/amanda/index.html/

    ##### Copyright © 1997, Sean Dreilinger
    Published in Issue 17 of the Linux Gazette, May 1997