Installation
Slackware's installation is a bit more simplistic than many other Linux
distributions use, and is very reminiscent of installing one of the
varieties of BSD operating systems. If you're familiar with those, you
should feel right at home. If you've never installed Slackware or used
a distribution that makes use of a non-graphical installer, you may
feel a bit overwhelmed. Don't panic. The installation is very easy
once you understand it, and works on just about any x86 platform.
The latest versions of Slackware Linux are distributed on DVD or CD
media, but Slackware can be installed in a variety of other ways. This
book will only focus on the most common way: installing via optical
media. In order to install Slackware, you'll need at least an Intel
486 or equivilant CPU, but we recommend you obtain a 586 or better CPU
if at all possible. Slackware can be pared down to run on as little as
32 MB of RAM (or even less), but with the size of the 2.6 kernel and
user-space applications, you will find yourself having a much easier
time if you have a minimum of 64 MB of RAM. If you wish to use
anything older than these, you might want to obtain an older copy of
Slackware which will perform better with fewer CPU Megahertz and less
RAM.
Booting the Installer
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
Partitioning
Unlike many other Linux distributions, Slackware does not make use of a
graphical disk partitioning tool in its installer. Rather, Slackware
makes use of fdisk(8) and
cfdisk(8), both console tools.
cfdisk is a curses-based partitioning tool
while fdisk is not. Whichever you choose to
use should only rarely matter. In this book, we'll only discuss
fdisk.
In order to partition your hard drive, you'll first need to know how to
identify it. In Linux, all hardware is identified by a special file
called a device file. These are all (typically) located in the
/dev directory. If your hard drive is IDE, you
will most likely find it as /dev/hda; however,
many hard drives today including SATA disks are identified as SCSI
devices by the kernel. If you don't know what your hard drive is
identified in Linux as, fdisk can help you
out.
root@slackware:/# fdisk -l
Disk /dev/sda: 72.7 GB, 72725037056 bytes
255 heads, 63 sectors/track, 8841 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Here, you can see that my system has a hard drive located at
/dev/sda that is 72.7 GB in size. You can also
see some additional info about this hard drive. (In my case, this is
actually three SCSI hard drives on a hardware RAID controller that
makes them appear as a single drive.) The -l argument to
fdisk tells it to display the hard drives
and all the partitions it finds on those drives, but won't make any
changes to the disks. In order to actually partition our drives, we'll
have to tell fdisk what drive to operate on.
root@slackware:/# fdisk /dev/sda
The number of cylinders for this disk is set to 8841.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):
Now we've told fdisk what disk we wish to partition and it has dropped
us into command mode after printing an annoying warning message. The
1024 cylinder limit has not been a problem for some time, and
Slackware's boot loader will have no trouble booting disks larger than
this. Typing m and hitting ENTER will print out a helpful
message telling you what to do with fdisk.
Command (m for help): m
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
FILL THIS IN! FILL THIS IN!
Now that we know what commands will do what, it's time to begin to
partition our drive. At a minimum, you will need a single
/ partition and should create a swap partition.
You might also want to make a seperate /home
partition for storing user files (this will make it easier to upgrade
later, or install a different Linux operating system by keeping all of
your users' files on a seperate partition). So, let's go ahead and
make three partitions. The command to create a new partition is
n (which you would have noticed if you read the help).
Command: (me for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-8841, default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-8841, default 8841): +8G
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (975-8841, default 975): 975
Last cylinder or +size or +sizeM or +sizeK (975-8841, default 8841): +1G
Here we have created two partitions. The first is 8GB in size and the
second is only 1GB. We can view our existing partitions with the
p command.
Command (m for help): p
Disk /dev/sda: 72.7 GB, 72725037056 bytes
255 heads, 63 sectors/track, 8841 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 974 7823623+ 83 Linux
/dev/sda2 975 1097 987997+ 83 Linux
Both of these partitions are of type "83" which is the standard Linux
filesystem. We will need to change /dev/sda2 to
type "82" in order to make this a swap partition. We will do this with
the t command.
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 82
Command (me for help): p
Disk /dev/sda: 72.7 GB, 72725037056 bytes
255 heads, 63 sectors/track, 8841 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 974 7823623+ 83 Linux
/dev/sda2 975 1097 987997+ 82 Linux swap
The swap partition is a special partition that is used for
virtual memory by the Linux kernel. If for some reason you run out of
RAM, the kernel will move the contents of some of the RAM to swap in
order to prevent a crash. The size of your swap partition is up to
you. A great many people have participated have participated in a
great many flamewars on the size of swap partitions, but a good rule of
thumb is to make your swap partition about twice the size of your
system's RAM. Since my machine has only 512MB of RAM, I decided to
make my swap partition 1GB. You may wish to experiment with your swap
partition's size and see what works best for you, but generally there
is no harm in having "too much" swap.
At this point we can stop, write these changes to the disk, and
continue on, but I'm going to go ahead and make a third partition which
will be mounted at /home.
Command: (me for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (1098-8841, default 1098): 1098
Last cylinder or +size or +sizeM or +sizeK (1098-8841, default 8841): 8841
Now it's time to finish up and write these changes to disk.
Command: (me for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Synching disks.
root@slackware:/#
At this point, we are through partitioning our disks and are ready to
begin the setup program. However, if you
have created any extended partitions, you may wish to reboot once to
ensure that they are properly read by the kernel.