@SysInclude{fontdefs}
@SysInclude{langdefs}
@SysInclude{eq}
@SysInclude{dl}

#---------------
@SysInclude{fig}
@SysInclude{tab}
#---------------

extend @DocumentLayout
export 
@HorizontalLine @Leaders
@Underlined
",," @Symbol
@ListGapAdd
@ListGap
@SubSectionGap
@TSListLabelWidth
@DescFollow
@TSCode
def @TypesetLayout

@Begin

def @ListGapAdd { 0.3v }
def @ListGap{ 0.8v }
def @SubSectionGap { 1.5v }
def @TSListLabelWidth { @ListLabelWidth }

# What the hell is going on?
# The commented out part is close to the native lout definitions.
# But refuses to work.
# Not sure that Jeff will answer some day...
#def @TSListMarkPlace { @Galley }
#def @TSListPlace { @Galley }
#
#def @TSListRawDef
#    named label {}
#{
#  |0c
#  @TSListLabelWidth @Wide { label &0io }
#  |0c @TSListPlace
#}
#
#def @TSListItemInc into { @TSListPlace&&preceding }
#    named mark {}
#    right text
#{
#  def sendtag into { @TSListMarkPlace&&preceding } { mark }
#  sendtag | text
#}
#
#macro @TSListDef { @TSListRawDef label { @TSListMarkPlace }  }
#macro @TSListItem { @TSListDef @TSListItemInc }

def @DescDDParPlace { @Galley }

def @DescFollowI into { @DescDDParPlace&&preceding }
    right x
{
   x
}

macro @DescFollow { |2f @DescDDParPlace | @DescFollowI }

macro @HorizontalLine { @HLine }

def @Underlined precedence 54 right x
{ @OneRow @HContract @VContract { x //0.2f @HLine } }

def @Symbol right x { {Symbol Base}@Font @Char x }
def ",," { @OneRow{{}/0.6fk @Char quotedblright} }

export "--"
def @TSCode body x 
{
 def "--" { "--" }
 {Courier Base }@Font x 
}

def @Leaders {.{@Leaders}}

@End @TypesetLayout

@SysInclude{reportf}

@Use{ @DocumentLayout
        @InitialFont{ Times Base 10p }
        @InitialBreak{  adjust 1.0fx hyphen }
        @ColumnNumber{ 1 }
        @PageHeaders{ Simple }
        @MakeContents{ No }
        @MakeReferences{ No  }
        @MakeIndex{ No }
        @PageType{ A4 }
        @OddLeftMargin{ 2.5c }
        @OddRightMargin{ 2.5c }
        @EvenLeftMargin{ 2.5c }
        @EvenRightMargin{ 2.5c }
        @ListGap{ 0.6v }
#        @ParaGap		{  1.30vx	}
# The obove looks ugly, especially within lists. //@LP for
# paragraph splitting seems to does the trick a little better.
# But even not good enough... :-(
  } 
@Use {@TypesetLayout }
@Use { @ReportLayout 
}
@Report
@InitialLanguage{English}
@Author{Bruce Perens, Sven Rudolph, Igor Grobman, James Treacy,    Adam P. Harris
   }
@DateLine{23 June, 1998
   }
@ColumnNumber{1}
@Title{Installing Debian Linux 2.0 For x86}//
@Abstract{@LP
Installation instructions for the Debian GNU"/"Linux 2.0
   system on the x86 architecture.}
@Section
@InitialLanguage{English}
@Title{About Copyrights and Software Licenses}
@Begin
{@PageMark S.1}@LP
I'm sure you've read the licenses that come with most commercial software
- they say you can only use one copy of the software on one computer. The
Debian GNU"/"Linux System isn't like that. We encourage you to put a copy
on every computer in your school or place of business. Lend it to your
friends, and help them install it on their computers. You can even make
thousands of copies and { Slope @Font{sell}} them - with a few restrictions. That's
because Debian is based on { Slope @Font{free software}}. 
@LP
Free software doesn't mean that it doesn't have a copyright, and it
doesn't mean that the CD you buy containing this software is distributed
at no charge, it simply means that the licenses of individual programs
do not require you to pay for the privilege of copying the programs. There
are other sorts of restrictions on how you copy the software, which you
can read about once you've installed the system. For example, many of the
programs in the system are licensed under the {Slope} @Font{GNU} {Slope} @Font{General Public
License}, or {Slope} @Font{GPL}. The GPL requires that you make the { Slope @Font{source
code}} of the programs available whenever you distribute a copy of the
program. Thus, we've included the source code for all of those programs
in the Debian system. There are several other forms of copyright and software
license used on the programs in Debian. You can find the copyrights and
licenses of every program by looking in the directory "/"usr"/"doc"/"{ Slope @Font{program-name}}"/"copyright
once you've installed your system. 
@LP
For more information on licenses and how Debian decides what is free enough
to be included in the distribution, see the 
Debian Social Contract.
@LP
The most important legal notice is that this software comes with {Slope} @Font{no
warranties}. People who write free software can't afford to be sued.
@End @Section
@Section
@InitialLanguage{English}
@Title{System Requirements}
@Begin
{@PageMark S.2}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{CPU}
@Begin
{@PageMark S.2.1}@LP
Your computer must have a 386, 486, Pentium, Pentium Pro, or Pentium II 
processor, or one of the clones of those processors made by manufacturers such 
as Cyrix, AMD, TI, IBM, etc. If your processor has letters like [quot  ]sx[quot  ],
[quot  ]sl[quot  ], [quot  ]slc[quot  ], etc. after the number as in [quot  ]386sx[quot  ],
that's fine. The system will { Slope @Font{not}} run on the 286 or lower processors.
@LP
While Debian 2.0 does support other processors and architectures,
this installation guide does not currently cover them.  Users on m68k
architectures such as Atari are directed to urlnam for more information.
Additionally, Alpha, Sparc, and PowerPC ports are available.  See
urlnam for more information.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{I"/"O Bus}
@Begin
{@PageMark S.2.2}@LP
Your computer must use the ISA, EISA, PCI, or VL bus. The VL bus is
also known as VESA Local Bus or VLB. Computers that have PCI or VLB generally
have ISA or EISA slots as well. Linux offers some support for the Micro-Channel
bus used in IBM PS"/"2 computers, but this is not included on the Debian
rescue disk. The newer AGP video slots are actually a modification on the PCI
specification, and most AGP video cards work under XFree86. See 
urlnam for more information and to
see if your video card is supported under Linux.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{RAM and Disk}
@Begin
{@PageMark S.2.3}@LP
You must have at least 4MB of RAM and 40MB of hard disk. If you want
to install a reasonable amount of software, including X window system, and
some development programs and libraries, you'll need at least 300MB. For a
more or less complete installation, you'll need around 600MB.  To install
{ Slope @Font{everything}} available in Debian, you'll probably need around 2GB.
The disk interfaces that emulate the [quot  ]AT[quot  ] hard disk interface which 
are often called MFM, RLL, IDE, or ATA are supported. SCSI disk controllers 
from many different manufacturers are supported. See the 
Linux Hardware Compatibility HOWTO for more details.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Floppy Disk}
@Begin
{@PageMark S.2.4}@LP
Unless you will be installing from a CD or a DOS partition, you must have 
a 1.2MB or 1.44MB floppy disk drive as the {@TSCode{a:}} drive
in the system upon which you will install Linux. If you have both a 1.2MB
and a 1.44MB drive, you could configure the hardware so that the
1.44MB drive is {@TSCode{a:}}, if this is not too difficult.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Display}
@Begin
{@PageMark S.2.5}@LP
You should be using a VGA-compatible display interface for the console
terminal. Nearly every modern display card is compatible with VGA. CGA,
MDA, or HGA might work OK for text, but they won't work with the X Window
System, and we haven't tested them. Use of a serial terminal for the console
is not yet supported. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Other Hardware}
@Begin
{@PageMark S.2.6}@LP
Linux supports a large variety hardware devices such as mice, printers,
scanners, modems, network cards, PCMCIA devices, etc. However, none of these 
devices are required while installing the system. Again, see the
Linux Hardware Compatibility HOWTO for more details to see if your
specific hardware is supported under Linux.
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{Before You Start}
@Begin
{@PageMark S.3}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{Backups}
@Begin
{@PageMark S.3.1}@LP
Before you start, make sure to back up every file that is now on your
system. The installation procedure can wipe out all of the data on a hard
disk! 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Information You'll Need}
@Begin
{@PageMark S.3.2}@LP
Besides this document, you'll need the 
cfdisk
manual page, the
Dselect Tutorial,
and the Linux Hardware Compatibility HOWTO.
@LP
If your computer is connected to a network 24 hours a day (i.e. an
Ethernet or equivalent connection - not a PPP connection), you should
ask your network's system administrator for this information: 
@LP
{1v @High {} //0co @Bullet}//0co @DescFollow {
Your host name (you may be able to decide this on your own). 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Your domain name. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Your computer's IP address. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The netmask to use with your network. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The IP address of your network. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
 The broadcast address to use on your network. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The IP address of the default gateway system you should route to, if
your network { Slope @Font{has}} a gateway. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The system on your network that you should use as a DNS (Domain Name
Service) server. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Whether you connect to the network using Ethernet, and whether your
Ethernet interface is a PCMCIA card.}

@LP
If your computer is connected to the Internet via PPP or an
equivalent dialup connection, please see refnam (7.21) below for 
information on setting up PPP under Debian.  
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{Configuring Your System}
@Begin
{@PageMark S.4}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{Disks}
@Begin
{@PageMark S.4.1}@LP
There are some hardware details you should look into. First, decide
which disk you want to place the Linux system on. You've backed that up
along with your other disks already, right? 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The BIOS Set-Up Menu}
@Begin
{@PageMark S.4.2}@LP
Your motherboard probably provides a BIOS set-up menu. Some systems
start this menu if you press {@TSCode{DEL}} while the system is booting, some
require a SETUP disk, and some have other means of invoking the BIOS set-up
menu. If you can start this menu, use it to control the features discussed
in the following several paragraphs. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Boot Device Selection}
@Begin
{@PageMark S.4.3}@LP
Many BIOS set-up menus allow you to select the devices that will be
used to bootstrap the system. Set this to look for a bootable operating
system on {@TSCode{a:}}, (the first floppy disk), and then {@TSCode{c:}} (the first
hard disk). Since you'll boot Linux from a floppy while installing it,
it is important that the BIOS enables booting from a floppy disk. 
@LP
Note that some systems can boot from CD-ROM nowadays; if yours can,
and you're installing via the Official Debian GNU"/"Linux CD-ROM, you can
simply tell your BIOS set-up menu to boot from CD-ROM, and you won't
need a floppy at all. Exact details of how to do this vary depending
on the BIOS version; consult your hardware manuals.  If
your system can't boot directly from CD-ROM, don't despair; you can
simply run {@TSCode{E:"\\"boot"\\"boot.bat}} under DOS (replace {@TSCode{E:}}
with whatever drive
letter DOS assigns to your CD-ROM drive) 
to start the installation process. See refnam (6.3) below
for details.
@LP
Also, if you're going to be installing from a FAT (DOS) partition,
you won't need any floppies at all. See refnam (6.2.1) below
for more information on installing via this method.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Extended vs. Expanded Memory}
@Begin
{@PageMark S.4.4}@LP
If your system provides both ex{ Slope @Font{ten}}ded and ex{ Slope @Font{pan}}ded memory,
set it so that there is as much extended and as little expanded memory
as possible. Linux requires extended memory and cannot use expanded memory.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Virus Protection}
@Begin
{@PageMark S.4.5}@LP
Disable any virus-warning features your BIOS may provide. If you have
a virus-protection board or other special hardware, make sure it is disabled
or physically removed while running Linux. These aren't compatible with
Linux, and Linux has a better method of protecting you from viruses. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Shadow Ram}
@Begin
{@PageMark S.4.6}@LP
Your motherboard probably provides { Slope @Font{shadow RAM}}. You may see settings
for [quot  ]Video BIOS Shadow[quot  ], [quot  ]C800-CBFF Shadow[quot  ], etc. {Slope} @Font{Disable}
all shadow RAM. Shadow RAM is used to accelerate access to the ROMs on
your motherboard and on some of the controller cards. Linux avoids using
these ROMs once it has booted because it provides its own faster 32-bit
software in place of the 16-bit programs in the ROMs. Disabling the shadow
RAM may make some of it available for programs to use as normal memory.
Leaving the shadow RAM enabled may interfere with Linux access to hardware
devices. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Advanced Power Management}
@Begin
{@PageMark S.4.7}@LP
If your motherboard provides Advanced Power Management (APM), configure
it so that power management is controlled by APM. Disable the doze, standby,
suspend, nap, and sleep modes, and disable the hard-disk power-down timer.
Linux can take over control of these modes, and can do a better job of
power-management than the BIOS. The version of the operating system kernel
on the installation floppies does not, however, use APM, because we've
had reports of one laptop system crashing when the Linux APM driver is
configured. Once you've installed Linux, you can install the 
{@TSCode{kernel-source}}
package and build a custom-configured version of the operating system kernel
to enable APM and other features. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Turbo Switch}
@Begin
{@PageMark S.4.8}@LP
Many systems have a { Slope @Font{turbo}} switch that controls the speed of the CPU.
Select the high-speed setting. If your BIOS allows you to disable software
control of the turbo switch (or software control of CPU speed), do so and
lock the system in high-speed mode. We have one report that on a particular
system, while Linux is
auto-probing (looking for hardware devices) it can accidentally touch the
software control for the turbo switch.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Over-Clocking your CPU}
@Begin
{@PageMark S.4.9}@LP
Many people have tried operating their 90 MHz CPU at 100 MHz, etc.
It sometimes works, but is sensitive to temperature and other factors and
can actually damage your system. The author of this document overclocked
his own system for a year, and then the system started aborting the
{@TSCode{gcc}} program with an unexpected signal while it was compiling the
operating system kernel. Turning the CPU speed back down to its rated value
solved the problem.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Bad RAM}
@Begin
{@PageMark S.4.10}@LP
The {@TSCode{gcc}} compiler is often the first thing to die from
bad RAM (or other hardware problems that change data unpredictably)
because it builds huge data structures that it traverses repeatedly.
An error in these data structures will cause it to execute an illegal
instruction or access a non-existent address. The symptom of this will be
gcc dying from an unexpected signal.
@LP
The very best motherboards support parity RAM and will actually tell you if
your system has a single-bit error in RAM. Unfortunately, they don't have a way
to fix the error, thus they generally crash immediately after they tell you
about the bad RAM. Still, it's better to be told you have bad memory than to
have it silently insert errors in your data. Thus, the best systems have
motherboards that support parity and true-parity SIMMs.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Fake or ([quot  ]virtual[quot  ]) Parity RAM}
@Begin
{@PageMark S.4.11}@LP
If you ask for Parity RAM in a computer store, you'll probably get { Slope @Font{virtual
parity}} SIMMs instead of { Slope @Font{true parity}} ones. Virtual parity SIMMs can
often (but not always) be distinguished because they only have one more chip
than an equivalent non-parity SIMM, and that one extra chip is smaller than
all the others. Virtual-parity SIMMs work exactly like non-parity memory.
They can't tell you when you have a single-bit RAM error the way true-parity
SIMMs do in a motherboard that implements parity. Don't ever pay more for
a virtual-parity SIMM than a non-parity one. Do expect to pay a little more
for true-parity SIMMs, because you are actually buying one extra bit of
memory for every 8 bits.
@LP
If you do have true-parity RAM and your motherboard can handle it, be sure
to enable any BIOS settings that cause the motherboard to interrupt on
memory parity errors.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Cyrix CPUs and Floppy Disk Errors}
@Begin
{@PageMark S.4.12}@LP
Many users of Cyrix CPUs have had to disable the cache in their systems
during installation, because the floppy disk has errors if they do not.
If you have to do this, be sure to re-enable your cache when you are finished
with installation, as the system runs { Slope @Font{much}} slower with the cache
disabled.
@LP
We don't think this is necessarily the fault of the Cyrix CPU. It may be
something that Linux can work around. We'll continue to look into the problem.
For the technically curious, we suspect a problem with the cache being invalid
after a switch from 16-bit to 32-bit code.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Multiple Processors
We have several reports that Debian runs well (and { Slope @Font{very}} fast)
on systems with two (or more) Pentium, Pentium Pro, or Pentium II processors on the same motherboard. To take advantage of multiple
processors, you'll have to install the { Slope @Font{kernel-source}} package
and then re-compile the kernel with symmetric multiprocessing support
enabled. At this time (kernel version 2.0.33) the way you enable that
is to edit the top-level Makefile for the kernel and un-comment the line
that says [quot  ]SMP = 1[quot  ]. If you compile software on a multiprocessor system, look for the [quot  ]-j[quot  ] flag in the documentation on [quot  ]make[quot  ].}
@Begin
{@PageMark S.4.13}@LP

@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{BIOS Settings to Watch Out For}
@Begin
{@PageMark S.4.14}@LP
If your BIOS offers something like [quot  ]15-16 MB Memory Hole[quot  ],
please disable that. Linux expects to find memory there if you have that
much RAM. 
@LP
We have a report of an Intel Endeavor motherboard on which there is
an option called [quot  ]LFB[quot  ] or [quot  ]Linear Frame Buffer[quot  ]. This
had two settings: [quot  ]Disabled[quot  ] and [quot  ]1 Megabyte[quot  ]. Set it
to [quot  ]1 Megabyte[quot  ]. When disabled, the installation floppy was not
read correctly, and the system eventually crashed. At this writing we don't
understand what's going on with this particular device - it just worked
with that setting and not without it. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Hardware Settings to Watch Out For}
@Begin
{@PageMark S.4.15}@LP
If any cards provide [quot  ]mapped memory[quot  ], the memory should be
mapped somewhere between 0xA0000 and 0xFFFFF (from 640K to just below 1
megabyte) or at an address at least 1 megabyte greater than the total amount
of RAM in your system. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Windows-specific Hardware}
@Begin
{@PageMark S.4.16}@LP
A disturbing trend is the proliferation of { Slope @Font{Windows}} modems and
printers. In some cases these are specially designed to be operated by
the Microsoft Windows operating system and bear the legend { Slope @Font{WinModem}}
or { Slope @Font{Made especially
for Windows-based computers}}. This is generally done by removing the
embedded processors of the hardware and shifting the work they do over
to a Windows driver that is run by your computer's main CPU. This strategy
makes the hardware less expensive, but the savings are often { Slope @Font{not}}
passed on to the user and this hardware may even be more expensive than
equivalent devices that retain their embedded intelligence.
@LP
You should avoid Windows-specific hardware for two reasons. The first
is that the manufacturers do not generally make the resources available
to write a Linux driver. Generally, the hardware and software interface
to the device is proprietary, and documentation is not available without
a non-disclosure agreement, if it is available at all. This precludes its
being used for free software, since free software writers disclose the
source code of their programs. The second reason is that when devices like
these have had their embedded processors removed, the operating system
must perform the work of the embedded processors, often at { Slope @Font{real-time}}
priority, and thus the CPU is not available to run your programs while
it is driving these devices. Since the typical Windows user does not multi-process
as intensively as a Linux user, the manufacturers hope that the Windows
user simply won't notice the burden this hardware places on their CPU.
However, any multi-processing operating system, even { Slope @Font{Windows 95}}
or { Slope @Font{NT,}} is degraded when peripheral manufacturers skimp on the embedded
processing power of their hardware. 
@LP
You can help this situation by encouraging these manufacturers to release
the documentation and other resources necessary for us to program their
hardware, but the best strategy is simply to avoid this sort of hardware
until it is listed as working in the Linux Hardware Compatibility HOWTO.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Other Closed Hardware}
@Begin
{@PageMark S.4.17}@LP
Some hardware manufacturers simply won't tell us how to write drivers
for their hardware, or they won't allow us access to the documentation
without a non-disclosure agreement that would prevent us from releasing
the Linux source code. One example is the IBM laptop DSP sound system used
in recent ThinkPad systems - some of these systems also couple the sound
eystem to the modem. Since we haven't been granted access to the documentation
on these devices, they simply won't work under Linux. You can help by asking
the manufacturers of such hardware to release the documentation. If enough
people ask, they will realize that Linux is an important market. The Linux Hardware Compatibility HOWTO provides information about what devices
currently have Linux drivers.
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{ Notes on Partitioning your Hard Drive }
@Begin
{@PageMark S.5}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{Background}
@Begin
{@PageMark S.5.1}@LP
Partitioning your disk simply refers to the act of breaking up your
disk into sections. Each section is then independent of the others.
It's roughly equivalent to putting up walls in a house; if you add furniture
to one room it doesn't affect any other room. 
@LP
If you already have an OS on your system (Windows95, WindowsNT, OS"/"2, DOS,
FreeBSD) and want to stick Linux on the same disk, you will probably need to
repartition the disk.
In general, changing a  partition with a filesystem already on it will
destroy any information there. Thus you should always make backups before
doing any repartitioning.
Using the analogy of the house, you would
probably want to move all the furniture out of the way before moving a wall
or you risk destroying it. Luckily, there is an alternative for some users. 
See the section on refnam (5.4). 
@LP
At a bare minimum, Linux needs two partitions. In this scenario, one
will contain the entire operating system, all the programs and your
personal files. The other is called the swap partition. Swap is scratch
space for an operating system. By putting it on its own partition Linux
can make much more efficient use of it (it is possible to force Linux
to use a regular file as swap, but it is not recommended).
@LP
 There are two reasons you might want to break up the filesystem
into a number of smaller partitions. The first is for safety.
If something happens to corrupt the file system, generally only one partition
is affected. Thus, you only have to replace (from the backups you've been
carefully keeping) a portion of your system. At a bare minimum, you should
consider creating what is commonly called a 'root partition'. This contains
the most essential components of the system. If any other partitions get
corrupted, you can still boot into Linux to fix the system. This can save
you the trouble of having to reinstall the system from scratch.
@LP
The second reason is generally more important in a business setting,
but it really depends on your use of the machine. Suppose something runs
out of control and starts eating disk space.
If the process causing the problem happens to have root
privileges (the system keeps a percentage of the disk away from users),
you could suddenly find yourself out of disk space. This is not good
as the OS needs to use real files (besides swap space) for many things.
It may not even be a problem of local origin.
For example, getting spammed with e-mail can easily fill a partition.
By using more partitions, you protect the system from many of these
problems. Using mail as an example again, by putting
{@TSCode{"/"var"/"spool"/"mail}} on its own partition, the bulk of the system
will work even if you get spammed.
@LP
Another reason applies to you only if you have a large IDE disk, and are 
not using neither LBA addressing, nor overlay drivers usually provided by
hard disk manufacturer.  In this case, you will have to put the root 
partition into the first 1024 cylinders of your hard drive (usually around 
524 megabytes).  
@LP
The only real drawback to using more partitions is that it is often difficult
to know in advance what your needs will be. If you make a partition too small
then you will either have to reinstall the system or you will be constantly
moving things around to make room in the undersized partition. On the other
hand, if you make the partition too big, you will be wasting space that could
be used elsewhere. Disk space is cheap nowadays, but why throw your money
away.  
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{What do you recommend?}
@Begin
{@PageMark S.5.2}@LP
As described above, you should definitely have a separate smaller root
partition, and a larger {@TSCode{"/"usr}} partition, if you have the space.  For
examples, see below.  For most users, the two partitions initially
mentioned is sufficient.  This is especially appropriate when you have
a single small disk, since breaking out lots of partition can waste
space.
@LP
In some cases, you might need a separate {@TSCode{"/"usr"/"local}} partition if you
plan to install many programs that are not part of the operating
system.  If your machine will be a mail server, you might need to make
{@TSCode{"/"var"/"spool"/"mail}} a separate partition.  Often, putting
{@TSCode{"/"tmp}} on it's own 
partition, for instance 20 to 32MB, is a good idea.  If you are
setting up a server with lots of user accounts, it's generally good to
have a separate, large, {@TSCode{"/"home}} partition.  In general, the partitioning
situation varies from computer to computer depending on its uses.
@LP
That still leaves the question of swap space.
There are as many views on how much
swap you need as there are Unix administrators. One rule of thumb which
works well is to use as much swap as you have RAM, although there probably
isn't much point in going over 64MB of swap for most users. If you start using
that much swap, you should get more RAM. Of course, there are exceptions. If you
are trying to solve 10000 simultaneous equations on a machine with 256MB of
RAM you may need a gigabyte (or more) of swap.  If your swap
requirements are this high, however, you should probably try to spread 
the swap across different disks.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Examples}
@Begin
{@PageMark S.5.3}@LP
As an example, the author's home machine has 32MB of RAM and a 1.7GB IDE
drive on {@TSCode{"/"dev"/"hda}}. There is a 500MB DOS partition on
{@TSCode{"/"dev"/"hda1}} (should have 
made it 200MB as it never gets used). A 32MB swap partition is used on
"/"dev"/"hda3 and the rest (about 1.2GB on {@TSCode{"/"dev"/"hda2}}) is the
Linux partition.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Lossless repartitioning when starting from DOS,
Windows95 or OS"/"2}
@Begin
{@PageMark S.5.4}@LP
One of the most common installations is onto a system that already contains
DOS (including Windows3.1), Windows95, or OS"/"2 and it is desired to put Debian
onto the same disk without destroying the previous system.
As explained in the refnam (5.1),
decreasing the size of an existing partition will almost certainly damage the
data on that partition unless certain precautions are taken.
The method described here, while not guaranteed to protect your data, works
extremely well in practice.
As a precaution, you should { Bold @Font {make a backup}}.
@LP
Before going any further, you should have decided how you will be dividing
up the disk. The method in this section will only split a partition into two
pieces. One will contain the original OS and the other will be used for Debian.
During the installation of Debian, you will be given the opportunity to finish
dividing the Debian portion of the disk as you see fit.
@LP
The idea is to move all the data on the partition to the beginning, before
changing the partition information, so that nothing will be lost.
It is important that you do as little as possible between the data movement
and repartitioning to minimize the chance of a file being written near the end
of the partition as this will decrease the amount of space you can take from
the partition.
@LP
The first thing needed is a copy of {@TSCode{fips}} which is available in the 
tools"/" directory on your nearest debian mirror. Unzip the archive and copy the 
files {@TSCode{RESTORRB.EXE}}, {@TSCode{FIPS.EXE}} and {@TSCode{ERRORS.TXT}} to a
bootable floppy.  A bootable 
floppy can be created using the command {@TSCode{sys a:}} under DOS.  Fips comes 
with very good documentation which you may want to read.  You will definitely 
need to read the documentation if you use one of the following:

@LP
{1v @High {} //0co @Bullet}//0co @DescFollow {
Stacker"/"SuperStor"/"Doublespace etc.}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
OS"/"2}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
OnTrack Disk Manager or similar driver}

@LP
Create the disk and read the documentation { Bold @Font {before}} you defragment the 
disk.
@LP
The next thing needed is to move all the data to the beginning of the
partition. {@TSCode{defrag}}, which comes standard with DOS 6.0 and later can
easily do the job. See the fips documentation for a list of other software
that may do the trick. Note that if you have Windows95, you must run 
{@TSCode{defrag}} from there, since DOS doesn't understand FAT32).
@LP
After running the defragmentor (which can take a while on a large disk),
reboot with the fips disk you created in the floppy drive.
Simply type {@TSCode{a:"\\"fips}} and follow the directions.
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{Methods for Installing Debian}
@Begin
{@PageMark S.6}@LP
 You can install Debian from the following media: floppies, hard
disk, CD, or from an NFS server. You can also mix those four methods
for different parts of installation, as discussed below.
@LP
The installation disks are divided into three parts:  the rescue disk, the
driver disk, and the base system.  You will be prompted for each one of
them separately.  Therefore, you can place each one of them on a different
medium if you wish.  Below you will find a description of the most common
methods of installing Debian.  Keep in mind that if need be, you can
always put every distinct part of bootdisks on a separate medium.
Note that the base system is available in two forms: floppy disk images for
direct writing to a floppy, and in a tar archive for other forms of 
installation.
@LP
Below is an annotated list of files you will find in disks-i386 directory.
You do not need to download them all, but only those you will need for your
particular form of installation.  See below for detailed installation
instructions.  All disk images are available in a form suitable for using
in a 1.44MB and older 1.2MB floppy drives separately.  The images for
1.2MB drives have 12 somewhere in their filename, and 1.44MB images have
14 embedded in their filenames.
@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{Downloading the files }
@Begin
{@PageMark S.6.1}@LP
If you are using a web browser on a networked computer to read this
document, you can probably retrieve the files by selecting their
names in your web browser. Otherwise, you can retrieve them from urlnam,
or a similar directory in any of the Debian FTP mirror sites.
@LP

{}// outdent @Break{ Bold @Font { resc1440.bin, resc1200.bin :  the rescue disk image } &2f This is the rescue disk image.  It is used for initial setup, and also
in emergencies when your system doesn't boot for some reason in the future.
Therefore it is recommended you write the disk image to the floppy even if
you are not using floppies for installation.}// 
@LP outdent @Break{ Bold @Font { resc1440tecra.bin  : The rescue 
disk image for some laptops. } &2f This is the rescue disk image for computers that can't handle the
kernel compression format called bzImage.  This problem is usually
exhibited by certain models laptops (notably, Toshiba tecras), but has
also been reported on other kinds of
computers.  If your computer reboots or freezes while kernel is booting, it is 
worth a try to use this disk image.}// 
@LP outdent @Break{ Bold @Font { drv1440.bin, 
drv1200.bin: the driver disk image } &2f This disk image contains the kernel modules, or drivers, for all
kinds of hardware that are not necessary for initial booting.  You will be
prompted to choose the drivers you need during the installation process.}// 
@LP outdent @Break{ Bold @Font { base2_0.tgz, 
base14-1.bin...base14-5.bin base12-1.bin...base12-6.bin : the base system. } &2f These files contain the base system which will be installed on your
Linux partition during the installation process.  This is the bare minimum
necessary for you to be able to install the rest of the packages.  The
{@TSCode{base2[lowbar]0.tgz}} file is for installation from non-floppy media. }// 
@LP outdent @Break{ Bold @Font { root.bin : an image of the temporary 
filesystem. } &2f This file contains an image of temporary filesystem that gets loaded
into memory when you boot.  This is used for installations from hard disk
and from CD-ROM.}// 
@LP outdent @Break{ Bold @Font { rawrite2.exe : utility to write an 
image to floppy. } &2f This is a DOS utility to write a floppy disk image to a floppy.  You
should not copy images to the floppy, but instead use this utility to
rawrite them.}// 
@LP outdent @Break{ Bold @Font { loadlin.exe : Linux boot loader for 
DOS. } &2f You will need this boot loader if you are installing from a DOS partition 
or from a CD.}// 
@LP outdent @Break{ Bold @Font { install.bat : DOS batch file for 
starting Debian installation from DOS. } &2f This batch file is used in installations from hard disk or CD.}// 
@LP outdent @Break{ Bold @Font { linux : the kernel image } &2f This is the Linux kernel image to be used for hard disk and CD
installations.}// 
@LP outdent @Break{ Bold @Font { install.txt, install.html : this file } &2f }// 
@LP outdent @Break{ Bold @Font {cfdisk.txt : instructions for using 
cfdisk, the partitioning software } &2f }// 
@LP outdent @Break{ Bold @Font { basecont.txt : listing of
contents of the base system. } &2f }// 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Installing from Hard Disk }
@Begin
{@PageMark S.6.2}@LP

// //@SubSectionGap @CNP English @Language{
@Heading{6.2.1  Installing from a DOS partition {@PageMark S.6.2.1}}
@LP
1 //0co @DescFollow {
 Get the following files from your nearest Debian ftp mirror and
put them into a directory on your DOS partition:
{@TSCode{resc1440.bin}}, {@TSCode{drv1440.bin}}, {@TSCode{base2[lowbar]0.tgz}},
{@TSCode{root.bin}}, {@TSCode{linux}}, {@TSCode{install.bat}} and
{@TSCode{loadlin.exe}}.
}

//@ListGap 2 //0co @DescFollow {
 Execute {@TSCode{install.bat}} from that directory in DOS.
}

//@ListGap 3 //0co @DescFollow {
 skip down to refnam (7).
}
}
// //@SubSectionGap @CNP English @Language{
@Heading{6.2.2 Installing from an ext2fs partition {@PageMark S.6.2.2}}
@LP
1 //0co @DescFollow {
 Get the following files and place them in a directory on your ext2
partition: {@TSCode{resc1440.bin}}, {@TSCode{drv1440.bin}}, and
{@TSCode{base2[lowbar]0.tgz}}.
}

//@ListGap 2 //0co @DescFollow {
 Write the rescue disk image (resc1440.bin) to the floppy by using 
the following command:


@LP
{@TSCode {lines @Break {{} dd if=resc1440.bin of="/"dev"/"fd0 bs=512 conv=sync ; sync }}}

@LP
 
}

//@ListGap 3 //0co @DescFollow {
 insert the floppy with the image into your floppy drive, and reboot
the computer.
}

//@ListGap 4 //0co @DescFollow {
 Skip down to refnam (7) 
}
}
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Installing from a CD  }
@Begin
{@PageMark S.6.3}@LP
You are very likely to be installing from an official Debian CD.  Booting
a Debian CD is as easy as putting the CD in the drive, and booting off the
CD if your BIOS supports it.  In the case that your computer does not
support bootable CDs, you should boot into DOS, and execute boot.bat file
which is located in the {@TSCode{"\\"boot}} directory on your CD.  Then, skip down
to refnam (7)  
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Installing from NFS}
@Begin
{@PageMark S.6.4}@LP
Due to the nature of this method of installation, only the base system
can be installed via NFS.  You will need tno have the rescue disk and
the driver disk available locally using one of the above methods.  To
install the base system via NFS, you'll have to go through the
regular installation as explained in refnam (7).  Do not
forget to insert the module (driver) for your ethernet card, and the
file system module for nfs.  When the menu system asks you where the
base system is located, you should choose NFS, and follow the
instructions.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Installing Base from Floppies }
@Begin
{@PageMark S.6.5}@LP
NOTE: This is not a recommended way of installing Debian, because the
floppies are generally the flakiest type of media.  This is only
recommended if you have no filesystems on any of the hard drives on your
system.
@LP
Of course, when installing from scratch on a machine without a
bootable CDROM, you'll need at least the Rescue disk and the Drivers
Disk on floppies.
// //@SubSectionGap @CNP English @Language{
@Heading{6.5.1 Writing Floppy Disk Image Files to Floppy Disk{@PageMark S.6.5.1}}
@LP
 
You will need to write the following disk images to floppies:
@LP

{}// outdent @Break{ Bold @Font { Rescue Disk } &2f       If your {@TSCode{a:}} drive of the system upon which you will
install Linux uses 1.44MB floppy disks, you will need the file resc1440.bin; if it uses 1.2MB floppy disks,
you will need the file resc1200.bin,}// 
@LP outdent @Break{ Bold @Font { Driver Disk } &2f If your {@TSCode{a:}} drive of the system upon which you will
install Linux uses 1.44MB floppy disks, you will need the file drv1440.bin; if it uses 1.2MB floppy disks,
you will need the file drv1200.bin,}// 
@LP outdent @Break{ Bold @Font { Base Disks } &2f These disks will be generated from the following files (1.44MB
 version)  base14-1.bin, base14-2.bin, base14-3.bin, base14-4.bin and base14-5.bin.}
@LP @DescFollow {And these are the  1.2MB versions: base12-1.bin, base12-2.bin, base12-3.bin, base12-4.bin, base12-5.bin and base12-6.bin.}// 
@LP
If you are using a web browser on a networked computer to read this
document, you can probably retrieve the files by selecting their
names in your web browser. Otherwise, you can retrieve them from ftp:"/""/"ftp.debian.org"/"debian"/"stable"/"disks-i386"/"current"/", or a
similar directory in any of the Debian FTP mirror sites. All of these
are { Slope @Font{floppy disk image files}}, which means that each file
contains the complete contents of a floppy disk in { Slope @Font{raw}} form. A
special program is used to write the image files to floppy disk in
{ Slope @Font{raw}} mode. 
@LP
Find (up to) 10 formatted floppy disks. Mark them as [quot  ]Rescue[quot  ], [quot  ]Device
Drivers[quot  ], [quot  ]Custom Boot[quot  ], [quot  ]Base 1[quot  ], [quot  ]Base
2[quot  ], etc. 
@LP
No file is written to the Custom Boot floppy, that will be written by
the Debian system while it is being installed. }
// //@SubSectionGap @CNP English @Language{
@Heading{6.5.2 Writing Disk Images From DOS, Windows, or OS"/"2{@PageMark S.6.5.2}}
@LP
You'll find the rawrite2.exe
program in the same directory as the floppy disk images.
There's also a rawrite2.txt
file containing instructions for rawrite2.exe . 
@LP
To write the floppy disk image files to the floppy disks, use the command
@LP
{@TSCode{        rawrite2 -f { Slope @Font{file}} -d { Slope @Font{drive}}}}
@LP
where { Slope @Font{file}} is one of the floppy disk image files, and
{ Slope @Font{drive}} is either {@TSCode{a:}} or {@TSCode{b:}}. }
// //@SubSectionGap @CNP English @Language{
@Heading{6.5.3 Writing Disk Images From a Linux or Unix System{@PageMark S.6.5.3}}
@LP
Some systems attempt to automatically mount a floppy disk when you
place it in the drive. You might have to disable this feature before the
workstation will allow you to write a floppy in { Slope @Font{raw mode}}. 
Unfortunately, I don't know the command necessary to do this for your
particular workstation.  Ask your system administrator. 
@LP
To write the floppy disk image files to the floppy disks, use the command
@LP
{@TSCode{  dd if={ Slope @Font{file}} of="/"dev"/"fd0 bs=512 conv=sync ; sync}}
@LP
where { Slope @Font{file}} is one of the floppy disk image files. {@TSCode{"/"dev"/"fd0}}
is a commonly used name of the floppy-disk device, it may be different
on your workstation. The command may return to the prompt before Unix has
finished writing the floppy disk, so look for the disk-in-use light on
the floppy drive and be sure that the light is out and the disk has stopped
revolving before you remove it from the drive. On some systems, you'll
have to run a command to eject the floppy from the drive. }
// //@SubSectionGap @CNP English @Language{
@Heading{6.5.4 Floppy-disk Reliability{@PageMark S.6.5.4}}
@LP
The number one problem of people installing Debian for the first time
seems to be floppy-disk reliability. 
@LP
The Rescue Floppy is the one with the worst problems, because that floppy
is read by BIOS before Linux boots. BIOS doesn't read as reliably
as the Linux floppy disk driver, and may just stop without printing an
error message if it reads incorrect data. There can also be failures in
the drivers floppy and the base floppies, most of which indicate themselves
with a flood of messages about disk I"/"O errors. 
@LP
If you are having the installation stall at a particular floppy, the
first thing you should do is re-download the floppy disk image and write
it to a { Slope @Font{different}} floppy. Simply reformatting the old floppy is
not sufficient, even if it appears that the floppy was reformatted and
written with no errors. It is sometimes useful to try writing the floppy
on a different system. 
@LP
One user reports he had to write { Slope @Font{three}} boot floppies before one
worked, and then everything was fine with the third floppy.
@LP
 Other users have reported that simply rebooting a few times with the
same floppy in the floppy drive can lead to a successful boot. This is all
due to buggy BIOS floppy drivers.}
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Installation on Systems with Low Memory }
@Begin
{@PageMark S.6.6}@LP
If your system has less than 6MB of RAM, you will need to use a special 
low-memory disk image lowmem.bin.
This image needs to be written to a floppy disk, and you should boot 
from that disk first.  See refnam (7.2) below for more instructions.
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{ Using the Installation System to Install and Configure Debian   }
@Begin
{@PageMark S.7}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{The Rescue Floppy}
@Begin
{@PageMark S.7.1}@LP
Place the Rescue floppy in the {@TSCode{a:}} floppy drive, and reset the
system by pressing {Slope} @Font{reset}, turning the system off and then on, or
by pressing {Slope} @Font{Control-Alt-Del} on the keyboard. The floppy disk should
be accessed, and you should then see a screen that introduces the rescue
floppy and ends with the {@TSCode{boot:}} prompt. It's called the Rescue floppy
because you can use it to boot your system and perform repairs if there
is ever a problem that makes your hard disk unbootable. Thus, you should
save this floppy after you've installed your system. Pressing F3 will give
further information on this.
@LP
If you are using an alternative way to boot the system, follow the
instructions, and wait for the {@TSCode{boot:}} prompt to come up.
@LP
You can do two things at the {Slope} @Font{boot:} prompt. You can press the
function keys F1 through F10 to view a few pages of helpful
information, or you can boot the system. If you have less than 6MB
RAM, you have to boot from the Low-Memory Boot Disk (see refnam (6.6) below). If you boot from a 1.2MB floppy drive, you have
to use a ramdisk boot method, and you will need the Root Disk.
@LP
If you have any hardware devices that aren't made
accessible from Linux correctly when Linux boots, you may find a
parameter to add to the boot command line in the screens you see by
pressing F4 and F5. If you add any parameters to the boot command
line, be sure to type the boot method (the default is {@TSCode{linux}})
and a space before the first parameter. If you simply press Enter,
that's the same as typing {@TSCode{linux}} without any special
parameters. 
@LP
If this is the first time you're booting the system, just press Enter
and see if it works correctly. It probably will. If not, you can reboot
later and look for any special parameters that inform the system about
your hardware.  Some floppies, in particular about accessing floppies, 
in which case you might boot with the comment {@TSCode{linux
floppy=thinkpad}}.
@LP
Once you press Enter, you should see the message {@TSCode{Loading...}},
and then {@TSCode{Uncompressing Linux...}}, and then a page or so of cryptic
information about the hardware in your system. There may be many messages
in the form {@TSCode{can't find something}}, or {@TSCode{something not present}},
{@TSCode{can't inttialize something}}, or even {@TSCode{this driver release depends
on something}}. Most of these messages are harmless. You see them because
the installation boot disk is built to run on computers with many different
peripheral devices. Obviously, no one computer will have every possible
peripheral device, so the operating system may emit a few complaints while
it looks for peripherals you don't own. You may also see the system pause
for a while. This happens when it is waiting for a device to respond, and
that device is not present on your system. If you find the time it takes
to boot the system unacceptably long, later you can create a
{ Slope @Font{custom kernel}} 
once you've installed your system without all of the drivers for
non-existent devices.
@LP
If you choose a non-default boot method, e.g. ramdisk or floppy,
you will be prompted to insert the Root floppy. Insert the Root Floppy
into the first disk drive and press Enter.  (If you choose floppy1
insert the Root Floppy into the second disk drive.)
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Low-Memory Systems   }
@Begin
{@PageMark S.7.2}@LP
If you system has less than 6MB RAM, a paragraph about low memory
and a text menu with four choices can be displayed. This means that
the system detected that you don't have enough memory for a normal
installation, hence must follow a special low-memory installation procedure.
Go through the menu selections in order:
@LP
{1v @High {} //0co @Bullet}//0co @DescFollow {
Use fdisk to create a
Linux Swap partition (type 82). The swap partition is needed to provide
{ Slope @Font{virtual memory}} during the installation process, since that process
will use more memory than you have in your system. Select the size for
the amount of virtual memory you intend to use once your system is installed.
16 megabytes is probably the lowest amount that's practical, use 32 megabytes
if you can spare the space, and 64 if your disk is large enough that you
won't miss that much.

@LP
In addition create a MINIX partition (type 81). This will hold the
root filesystem in the early installation process. Its size should be
at least 2 megabytes. This partition can be deleted when the installation is
finished.}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Activate the swap partition.}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Copy the root filesystem to disk. You will need a DOS-formatted
floppy disk with the root.bin file in it (for example, the rescue floppy
disk).}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Exit. The normal installation system will be started.}

@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Color-or-Monochrome Dialog Box}
@Begin
{@PageMark S.7.3}@LP
Once the system has finished booting, you should see the color or monochrome
choice dialog box. If your monitor displays black-and-white, press Enter
to continue with the installation. Otherwise, use the arrow key to move
the cursor to the { Slope @Font{Color}} menu item and then press Enter. The display
should change from black-and-white to color.  Then move the cursor to the
Next item and press Enter again to continue with the installation.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Main Menu}
@Begin
{@PageMark S.7.4}@LP
You may see a dialog box that says { Slope @Font{The installation program is 
determining the current state of your system}}. On some systems, this will 
go by
too quickly to read. You'll see this dialog box between steps in the main
menu. The installation program will check the state of the system in between
each step. This checking allows you to re-start the installation without
losing the work you have already done if you happen to halt your system
in the middle of the installation process. If you have to restart an 
installation,
you will have to configure color-or-monochrome, configure your keyboard,
re-activate your swap partition, and re-mount any disks that have been
initialized. Anything else that you have done with the installation system
will be saved.
@LP
During the entire installation process, you will be presented with the
main menu. The choices at the top of the menu will change to indicate your
progress in installing the system. Phil Hughes wrote in { Slope @Font{Linux Journal}}
that you could teach a { Slope @Font{chicken}} to install Debian! He meant that
the installation process was mostly just { Slope @Font{pecking}} at the return key.
The first choice on the installation menu is the next action that you should
perform according to what the system detects you have already done.   It
should say { Slope @Font{Next}}, and at this point the { Slope @Font{next}} step in
installing the system will be taken.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Configuring the Keyboard}
@Begin
{@PageMark S.7.5}@LP
Make sure the highlight is on the { Slope @Font{Next}} item, and press Enter
to go to the keyboard configuration menu. Select a keyboard that conforms
to the layout used for your national language, or select something close
if the keyboard layout you want isn't represented. Once the system is installed,
you'll be able to select a keyboard layout from a wider range of choices.
Move the highlight to the keyboard selection you desire and press Enter.
Use the arrow keys to move the highlight - they are in the same place in
all national language keyboard layouts, so they are independent of the
keyboard configuration.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Shell}
@Begin
{@PageMark S.7.6}@LP
If you are an experienced Unix or Linux user, press {@TSCode{LeftAlt-F2}}
to get to the second { Slope @Font{virtual console}}. That's the {@TSCode{Alt}} key
on the left-hand side of the space bar, and the {@TSCode{F2}} function key,
at the same time. This is a separate window running a Bourne shell clone
called {@TSCode{ash}}. At this point you are booted from the RAM disk, and
there is a limited set of Unix utilities available for your use. You can
see what programs are available with the command {@TSCode{ls "/"bin "/"sbin "/"usr"/"bin
"/"usr"/"sbin}}. Use the menus to perform any task that they are able to
do - the shell and commands are only there in case something goes wrong.
In particular, you should always use the menus, not the shell, to activate
your swap partition, because the menu software can't detect that you've
done this from the shell. Press {@TSCode{LeftAlt-F1}} to get back to menus.
Linux provides up to 64 virtual consoles, although the Rescue floppy only
uses a few of them.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Last Chance!}
@Begin
{@PageMark S.7.7}@LP
Did we tell you to back up your disks? Here's your first chance to wipe
out all of the data on your disks, and your last chance to save your old
system. If you haven't backed up all of your disks, remove the floppy from
the drive, reset the system, and run backups. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Partition Your Hard Disks}
@Begin
{@PageMark S.7.8}@LP
If you have not already partitioned your disks for Linux native and
Linux swap filesystems, the menu item { Slope @Font{Next}} will be { Slope @Font{Partition
a Hard Disk}}. If you have already created at least one Linux Native
and one Linux Swap disk partition, the { Slope @Font{Next}} menu selection will
be { Slope @Font{Initialize and Activate the Swap Disk Partition,}} or you may even
skip that step if your system had low memory and you were asked to activate
the swap partition as soon as the system started. Whatever the { Slope @Font{Next}}
menu selection is, you can use the down-arrow key to select { Slope @Font{Partition
a Hard Disk}}. 
@LP
The { Slope @Font{Partition a Hard Disk}} menu item presents you with a list
of disk drives you can partition, and runs the {@TSCode{cfdisk}} program, which
allows you to create and edit disk partitions. The cfdisk
manual page is included with this document, and you should read it now.  You
should also read refnam (5) above.
You must create at least one [quot  ]Linux[quot  ] (type 83) disk partition, and one
[quot  ]Linux Swap[quot  ] (type 82) partition. 
@LP
Your swap partition will be used to provide virtual memory for the system
and should be between 16 and 128 megabytes in size, depending on how much
disk space you have and how many large programs you want to run.  The old
rule of thumb is that swap should be twice as big as the amount of
physical memory you have available.  Once you get past the 32MB of RAM
mark, you shouldn't make your swap partition more than 1.5 bigger than the
amount of RAM. Linux will not use more than 128 megabytes of swap on a
single swap partition, so there's
no reason to make your swap partition larger than that. However, you can
make multiple swap partitions by hand and edit {@TSCode{"/"etc"/"fstab}} after you've
installed to get more than 128 megabytes of swap. A swap partition is
strongly recommended, but you can do without one if you insist, and if your 
system has more than 16 megabytes of RAM. If you wish to do this, please 
select the { Slope @Font{Do Without a Swap Partition}} item from the menu. 
@LP
The [quot  ]Linux[quot  ] disk partition will hold all of your files, and
you may make it any size between 40 megabytes and the maximum size of your
disk minus the size of the swap partition. If you are already familiar
with Unix or Linux, you may want to make additional partitions - for example,
you can make partitions that will hold the {@TSCode{"/"var}}, and {@TSCode{"/"usr}},
filesystems. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Initialize and Activate the Swap Disk Partition}
@Begin
{@PageMark S.7.9}@LP
This will be the { Slope @Font{Next}} menu item once you have created one disk
partition. You have the choice of initializing and activating a new swap
partition, activating a previously-initialized one, and doing without a
swap partition. It's always permissible to re-initialize a swap partition,
so select { Slope @Font{Initialize and Activate the Swap Disk Partition}} unless
you are sure you know what you are doing. This menu choice will give you
the option to scan the entire partition for un-readable disk blocks caused
by defects on the surface of the hard disk platters. This is useful if
you have MFM, RLL, or older SCSI disks, and never hurts. Properly-working
IDE disks don't need this choice, as they have their own internal mechanism
for mapping out bad disk blocks. 
@LP
The swap partition provides { Slope @Font{virtual memory}} to supplement the
RAM that you've installed in your system. It's even used for virtual
memory while the system is being installed. That's why we initialize it
first. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Initialize a Linux Disk Partition}
@Begin
{@PageMark S.7.10}@LP
At this point, the { Slope @Font{Next}} menu item should be { Slope @Font{Initialize a Linux
Disk Partition}}. If it isn't, it's because you haven't completed the
disk partitioning process, or you haven't made one of the menu choices
dealing with your swap partition. 
@LP
You can initialize a Linux Disk partition, or alternately you can mount
a previously-initialized one. 
@LP
These floppies will not upgrade an old system without removing the files
- Debian provides a different procedure than using the boot floppies for
upgrading existing Debian systems. Thus, if you are using old disk partitions
that are not empty, you should initialize them (which erases all files)
here. You must initialize any partitions that you created in the disk 
partitioning
step. About the only reason to mount a partition without initializing it
at this point would be to mount a partition upon which you have already
performed some part of the installation process using this same set of
installation floppies. 
@LP
Select the { Slope @Font{Next}} menu item to initialize and mount the {@TSCode{"/"}}
disk partition. The first partition that you mount or initialize will be
the one mounted as {@TSCode{"/"}} (pronounced { Slope @Font{root}}). You will be offered
the choice to scan the disk partition for bad blocks, as you were when
you initialized the swap partition. It never hurts to scan for bad blocks,
but it could take 10 minutes or more to do so if you have a large disk.
@LP
Once you've mounted the {@TSCode{"/"}} partition, the { Slope @Font{Next}} menu item
will be { Slope @Font{Install the Operating System Kernel and the Device
Drivers}} unless you've already performed
some of the installation steps. You can use the arrow keys to select the
menu items to initialize and"/"or mount disk partitions if you have any more
partitions to set up. If you have created separate partitions for {@TSCode{"/"var}},
{@TSCode{"/"usr}}, or other filesystems, you should initialize and"/"or mount them
now. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Install the Operating System Kernel and the Device Drivers}
@Begin
{@PageMark S.7.11}@LP
 This should be the { Slope @Font{Next}} menu step after you've mounted your
{@TSCode{"/"}} disk, unless you've already performed some of the
installation steps on {@TSCode{"/"}}. Select it, and you will be offered
a menu of drives to use to read the kernel.  Choose the appropriate place
to install the kernel and modules.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Configure the Device Drivers}
@Begin
{@PageMark S.7.12}@LP
Select the { Slope @Font{Configure Device Drivers}} menu item and look for
devices that are on your system. Configure those device drivers, and
they will be loaded whenever your system boots. If you want to install
the base system via NFS you must load and configure the driver
module for your network card, and the NFS module itself, available
under { Slope @Font{filesystems}}.
// //@SubSectionGap @CNP English @Language{
@Heading{7.12.1 Configure PCMCIA Support{@PageMark S.7.12.1}}
@LP
 There is an alternate step, {Slope} @Font{before} the { Slope @Font{Configure
Device Drivers}} menu selection, called { Slope @Font{Configure PCMCIA
Support}}.  This menu is used to enable PCMCIA support.
@LP
If you do have PCMCIA, but are not installing your Debian system using
it (i.e., installatio with a PCMCIA ethernet card), then you need not
configure PCMCIA at this point.  You can easily configure and enable
PCMCIA at a later point, after installation is complete.  However, if
you are installing by way of a PCMCIA network device, this alternate
must be selected, and PCMCIA support must be configured prior to
configuring the network.
@LP
If you need to install PCMCIA, select the alternate, below
{ Slope @Font{Configure Device Drivers}}.  You will be asked which PCMCIA
controller your system contains.  In most cases, this will be
{@TSCode{i82365}}.  In some cases, it will be {@TSCode{tcic}}; your
laptop's vendor-supplied specifications should provide the information
if in doubt.  The following options, all following the pattern
{@TSCode{*[lowbar]OPTS[lowbar]MSG}}, can generally be left blank.  Again, certain
hardware has special needs; the Linux PCMCIA HOWTO contains plenty of information in case the default
doesn't work.
@LP
In some unusual cases, such as using network devices on certain IBM
Thinkpad models, you will also need to read and edit
"/"etc"/"pcmcia"/"config.opts.  You can open your second virtual terminal
({@TSCode{LeftAlt-F2}}) and edit the file there, and then reconfigure
your PCMCIA, or manually forcing a reload of the modules using
{@TSCode{insmod}} and {@TSCode{rmmod}}.
@LP
Once PCMCIA is properly configured and installed, you should jump back
up and configure your device drivers as described in the previous
section.}
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Configure the Network}
@Begin
{@PageMark S.7.13}@LP
You'll have to configure the network even if you don't have a network,
but you'll only have to answer the first two questions - { Slope @Font{what is the
name of your computer?}}, and { Slope @Font{is your system connected to a network?}}.
@LP
If you are connected to a network, here come some questions that you
may not be able to figure out on your own - check with your network 
administrator if you don't know: 
@LP
NOTE: if your primary connection to the network will be PPP, you should
choose {Slope} @Font{NOT} to configure the network.
@LP
{1v @High {} //0co @Bullet}//0co @DescFollow {
Your host name. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Your domain name.
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
Your computer's IP address. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The netmask to use with your network. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The broadcast address to use on your network. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The IP address of the default gateway system you should route to, if
your network { Slope @Font{has}} a gateway. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
The system on your network that you should use as a DNS (Domain Name
Service) server. 
}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
 The type of your network (Ethernet, Token Ring). }

@LP
Some technical details you might, or might not, find handy: the program
assumes the network IP address is the bitwise-AND of your system's
IP address and your netmask. It will guess the broadcast address is the
bitwise OR of your system's IP address with the bitwise negation of the
netmask. It will guess that your gateway system is also your DNS server.
If you can't find any of these answers, use the system's guesses - you
can change them once the system has been installed, if necessary, by editing
{@TSCode{"/"etc"/"init.d"/"network}}. (On a Debian system, daemons are started
by scripts in {@TSCode{"/"etc"/"init.d"/"}}.)
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Install the Base System}
@Begin
{@PageMark S.7.14}@LP
 Select the { Slope @Font{Install the Base
System}} menu item.  You'll be offered a menu of drives to use to
read the base floppies. Select the appropriate drive. If you choose to
install from floppy disk feed in the Base 1, 2, 3, ... as requested
by the program. If one of the base floppies is unreadable, you'll have
to create a replacement floppy and feed all floppies into the
system again. Once the floppies have all been read, the system will
install the files it had read from the floppies. This could take 10 minutes or
more on slow systems, less on faster ones. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Configure the Base System}
@Begin
{@PageMark S.7.15}@LP
At this point you've read in all of the files that make up a minimal
Debian system, but you must perform some configuration before the system
will run. Select the { Slope @Font{Configure the Base System}} menu item. 
@LP
You'll be asked to select your time zone. Look for your time zone or
region of the world in the menu, and type it at the prompt. This may lead
to another menu, in which you can select your actual time zone. 
@LP
Next, you'll be asked if your system clock is to be set to GMT or local
time. Select GMT if you will only be running Linux and Unix on your system,
and select local time if you will be running another operating system such
as DOS or Windows. Unix and Linux keep GMT time on the system clock and
use software to convert it to the local time zone. This allows them to
keep track of daylight savings time and leap years, and even allows users
who are logged in from other time zones to individually set the time zone
used on their terminal. If you run the system clock on GMT and your locality
uses { Slope @Font{daylight savings time}}, you'll find that the system adjusts
for daylight savings time properly on the days that it starts and ends.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Make the Hard Disk Bootable}
@Begin
{@PageMark S.7.16}@LP
If you select to make the hard disk boot directly to Linux, you will
be asked to install a master boot record. If you aren't using a boot manager
(and this is probably the case if you don't know what a boot manager is),
answer {Slope} @Font{yes} to this question. The next question will be whether you
want to boot Linux automatically from the hard disk when you turn on your
system. This sets Linux to be the { Slope @Font{bootable partition}} - the one that
will be loaded from the hard disk. If you answer {Slope} @Font{no} to this question,
you can set the bootable partition later using the DOS {@TSCode{fdisk}} program,
or with the Linux {@TSCode{fdisk}} or {@TSCode{activate}} programs.
@LP
If you are installing Linux on a drive other than the first hard disk
in your system, be sure to make a boot floppy. The boot ROM of most systems
is only capable of directly booting from the first hard drive, not the
second one. You can, however, work around this problem once you've installed
your system. To do so, read the instructions in the directory 
{@TSCode{"/"usr"/"doc"/"lilo}}.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Make a Boot Floppy}
@Begin
{@PageMark S.7.17}@LP
You should make a boot floppy even if you intend to boot the system
from the hard disk. The reason for this is that it's possible for the hard
disk bootstrap to be mis-installed, but a boot floppy will almost always
work. Select { Slope @Font{Make a Boot Floppy}} from the menu and feed the system
a blank floppy as directed. Make sure the floppy isn't write-protected,
as the software will format and write it. Mark this the [quot  ]Custom Boot[quot  ]
floppy and write-protect it once it has been written. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Moment of Truth}
@Begin
{@PageMark S.7.18}@LP
This is what electrical engineers call the { Slope @Font{smoke test}} - what
happens when you turn on a new system for the first time. Remove the floppy
disk from the floppy drive, and select the { Slope @Font{Reboot the System}} menu
item. If the Linux system doesn't start up, insert the Custom Boot floppy
you created and reset your system. Linux should boot. You should see the
same messages as when you first booted the installation boot floppy, followed
by some new messages.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Set the Root Password}
@Begin
{@PageMark S.7.19}@LP
This is the password for the { Slope @Font{super-user}}, a login that bypasses
all security protection on your system. It should only be used to perform
system administration, and only for as short a time as possible. Do not
use {Slope} @Font{root} as your personal login. You will be prompted to create
a personal login as well, and that's the one you should use to send and
receive e-mail and perform most of your work - not root. The reason to
avoid using root's privileges is that you might be tricked into running
a { Slope @Font{Trojan-horse}} program - that is a program that takes advantage
of your super-user power to compromise the security of your system behind
your back. Any good book on Unix system administration will cover this
topic in more detail - consider reading one if it's new to you. The good
news is that Linux is probably more secure than other operating systems
you might run on your PC. DOS and Windows, for example, give { Slope @Font{all}}
programs super-user privileges. That's one reason that they have been so
plagued by viruses. 
@LP
All of the passwords you create should contain from 6 to 8 characters,
and should contain both upper and lower-case characters, as well as punctuation
characters. 
@LP
Once you've added both logins, you'll be dropped into the {@TSCode{dselect}}
program.
The Dselect Tutorial is required
reading before you run {@TSCode{dselect}}.
{@TSCode{Dselect}} allows you to select { Slope @Font{packages}} to be installed
on your system. If you have a CD-ROM or hard disk containing the additional
Debian packages that you want to install on your system, or you are connected
to the Internet, this will be useful to you right away. Otherwise, you may
want to quit {@TSCode{dselect}} and start it later, once
you have transported the Debian package files to your system. You must
be the super-user (root) when you run {@TSCode{dselect}}.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Log In}
@Begin
{@PageMark S.7.20}@LP
After you've quit {@TSCode{dselect}}, you'll be presented with the
login prompt.  Log in using the personal login and password you
selected. Your system is now ready to use. 
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{ Setting up PPP   }
@Begin
{@PageMark S.7.21}@LP
NOTE: In case you are installing from CD-ROM and"/"or are connected directly 
to the network, you can safely skip this section.  
@LP
The base system includes a full PPP package.  This package allows you to
connect to your ISP using PPP.  Below are some basic instructions for
setting up your ppp connection.  The boot disks contain a program called 
{@TSCode{pppconfig}} which will help you set up PPP.  However, if it does 
not work for you, see below for detailed instructions.
@LP
 In order to setup PPP, you'll need to know the basics of file
viewing and editing in Linux.  To view files, you should use more, and
zmore for compressed files with a {@TSCode{.gz}} extension.  For example, to
view {@TSCode{README.debian.gz}}, type {@TSCode{zmore README.debian.gz}}.
{@TSCode{Less}} is a superior paging program, but it does not come with the
base system.  You should install the {@TSCode{less}} package as soon as you
can.  The only editor that comes with the base system is {@TSCode{ae}},
which also poses as {@TSCode{vi}}.  It is very simple to use, but does not
have a lot of features.  You will be able to choose from a great
number of editors once you get into {@TSCode{dselect}}.
@LP
 Edit {@TSCode{"/"etc"/"ppp"/"peers"/"provider}} and replace '"/"dev"/"modem'
with '"/"dev"/"ttyS[num   ]' where
[num   ] stands for the number of your COM port. Please remember that in Linux, the 
count starts from 0, so COM1 is {@TSCode{"/"dev"/"ttyS0}} under Linux. The
next step is to edit {@TSCode{"/"etc"/"chatscripts"/"provider}} and insert
your provider's phone number, your username and password. Please do
not delete the '"\\"q' that precedes the password. It hides the password
from appearing in your log files.
@LP
Many providers use PAP or CHAP for login sequence instead of textmode
authentication.  Others use both.  If your provider requires PAP or
CHAP, you'll need to follow a different procedure.  Comment out everything
below the dialing string (the one that starts with ATDT) in 
{@TSCode{"/"etc"/"chatscripts"/"provider}}, modify
{@TSCode{"/"etc"/"ppp"/"peers"/"provider}} as described 
above, and add "\""user username"\"" (no quotes) where username stands for your
username for the provider you are trying to connect to.  Next, edit
{@TSCode{"/"etc"/"pap-secrets}} or {@TSCode{"/"etc"/"chap-secrets}} and enter your
password there. 
@LP
 You will also need to edit {@TSCode{"/"etc"/"resolv.conf}} and add your
provider's name server (DNS) IP addresses.  The lines in
{@TSCode{"/"etc"/"resolv.conf}} are in the following format:
@LP
{@TSCode {lines @Break {{} nameserver xxx.xxx.xxx.xxx }}}

@LP
where { Slope @Font{x}}'s stand for numbers in your IP address. 
@LP
Unless your provider has a login sequence different than the majority of ISPs 
you are done! Start the PPP connection by typing {@TSCode{pon}}, and monitor the 
process using {@TSCode{plog}} command. To disconnect, use {@TSCode{poff}}. 
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{Technical Information on the Boot Floppies}
@Begin
{@PageMark S.8}@LP

@BeginSubSections
@SubSection
@InitialLanguage{English}
@Title{Source Code}
@Begin
{@PageMark S.8.1}@LP
The [quot  ]boot-floppies[quot  ] package contains all of the source code for the
installation floppies.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Rescue Floppy}
@Begin
{@PageMark S.8.2}@LP
The Rescue Floppy has an MS-DOS filesystem, and you should be able to access
it from a DOS or Windows system or anything else that can mount DOS disks.
The Linux kernel is in the file [quot  ]linux[quot  ].
The file {@TSCode{root.bin}} is a gzip-compressed disk image of a 1.44 MB Minix
filesystem, and will be loaded into the RAM disk and used as the root
filesystem.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{Replacing the Kernel}
@Begin
{@PageMark S.8.3}@LP
If you find it necessary to replace the kernel on the Rescue Floppy,
you must configure your new kernel with these features linked in, not in
loadable modules:

@LP
{1v @High {} //0co @Bullet}//0co @DescFollow {
Initial RAM disk.}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
MSDOS, Minix, and EXT2 filesystems.}

//@ListGap {1v @High {} //0co @Bullet}//0co @DescFollow {
ELF executables.}

@LP

Copy your new kernel to the file [quot  ]linux[quot  ] on the Rescue
Floppy, and then 
run the shell script [quot  ]rdev.sh[quot  ] that you'll find on the
floppy.
@End @SubSection
@SubSection
@InitialLanguage{English}
@Title{The Base Floppies}
@Begin
{@PageMark S.8.4}@LP
The base floppies contain a 512-byte header followed by a portion of a
gzip-compressed {@TSCode{tar}} archive. If you strip off the headers and
then concatenate the contents of the base floppies, the result should be the
compressed tar archive. The archive contains the base system that will be
installed on your hard disk. Once this archive is installed, you must go
through the { Slope @Font{Configure the Base System}} menu item in the installation
system and other menu items
to configure the network and install the operating system kernel and modules
before the system will be usable.
@End @SubSection
@EndSubSections
@End @Section
@Section
@InitialLanguage{English}
@Title{Copyright of This Document}
@Begin
{@PageMark S.9}@LP
{@TSCode {lines @Break {{}Copyright 1996 Bruce Perens; 1996, 1997 Sven
Rudolph, 1998 Igor Grobman <igor"@"debian.org, James Treacy treacy"@"easynet.on.ca and
Adam P. Harris <aph"@"onshore.com>. }}}

@LP

This document may be distributed under the terms of the GNU
General Public License. 
@End @Section
@Section
@InitialLanguage{English}
@Title{Trademark Acknowledgement}
@Begin
{@PageMark S.10}@LP
Trademarks that are not explicitly acknowledged here are the
property of their respective holders. 386, 386sx, 486, Pentium,
Pentium Pro and Pentium II are the property of Intel. Windows,
Window95, WindowsNT, and WinModem are a trademark of Microsoft.
ThinkPad and OS"/"2 are the property of IBM.
@End @Section
