.\"	$NetBSD: install,v 1.8.2.2 1999/04/15 16:29:51 minoura Exp $	
.\"
.\" Copyright (c) 1999 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"        This product includes software developed by the NetBSD
.\"        Foundation, Inc. and its contributors.
.\" 4. Neither the name of The NetBSD Foundation nor the names of its
.\"    contributors may be used to endorse or promote products derived
.\"    from this software without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.
Installing
.Nx
is a relatively complex process, but if you have
this document in hand and are careful to read and remember the
information which is presented to you by the install program, it
shouldn't be too much trouble.
.Pp
Before you begin, you should know the geometry of your hard disk, i.e.
the sector size (note that sector sizes other than 512 bytes are not
currently supported), the number of sectors per track, the number of
tracks per cylinder (also known as the number of heads), and the
number of cylinders on the disk. The
.Nx
kernel will try to
discover these parameters on its own, and if it can it will print them
at boot time. If possible, you should use the parameters it prints.
(You might not be able to because you're sharing your disk with
another operating system, or because your disk is old enough that the
kernel can't figure out its geometry.)
.Pp
You should now be ready to install NetBSD. It might be handy for you
to have a pencil, some paper, and a calculator handy.
.Pp
The following is a walk-through of the steps you will take while
getting
.Nx
installed on your hard disk. If any question has a
default answer, it will be displayed in brackets ("[]") after the
question. If you wish to stop the installation, you may hit Control-C
at any time, but if you do, you'll have to begin the installation
process again from scratch.
.Bl -enum
.It
Boot your machine using of boot floppy. If the boot prompt
does not appear in a reasonable amount of time, you either
have a bad boot floppy or a hardware problem. Try writing the
boot floppy image to a different disk, and using that. If it
still doesn't work,
.Nx
probably can't be run on your
hardware. This can probably be considered a bug, so you might
want to report it. If you do, please include as many details
about your system configuration as you can.
.Pp
It will take a while to load the kernel from the floppy,
probably around a minute or so.
.It
You will then be presented with the
.Nx
kernel boot
messages. You will want to read them, to determine your
disk's name and geometry. Its name will be something like
"sd0" and the geometry will be printed on a line that
begins with its name. As mentioned above, you will need your
disk's geometry when creating NetBSD's partitions. You will
also need to know the name, to tell the install tools what
disk to install on.
.It
You will be presented with a welcome message and a prompt
asking whether you are going to "install" NetBSD or "upgrade"
an exisiting system.  Select "install" to start installation.
.It
You will be presented a prompt asking if you wish to proceed
with the installation process.  If you wish to proceed,
enter "y" and hit return.
.It
The install program will then tell you which disks it can
install on, and ask you which it should use.
Reply with the name of your disk.
.It
You will then be asked to name your disk's disklabel. The
default response is "mysd", and for most purposes it will be
OK. If you choose to name it something different, make sure
the name is a single word and contains no special characters.
You don't need to remember this name.
.It
You will be prompted for your disk's geometry information,
i.e. the number of bytes per sector, cylinders on the disk,
tracks per cylinder (heads), and sectors per track. Enter
them when they are requested. If you make a mistake, hit
Control-C and when you get to the shell prompt, restart the
install process by running the "install" command. Once you
have entered this data, the install program will tell you the
total size of your disk, in both sectors, and cylinders.
Remember this number; if you're installing on the whole disk,
you'll need it again soon.
.It
When describing your partitions, you will have the option of
entering data about them in units of disk sectors or
cylinders. If you choose to enter the information in units of
sectors, remember that, for optimal performance, partitions
should begin and end on cylinder boundaries. You will be
asked about which units you wish to use, and you should reply
with "c" for cylinders, or "s" for sectors.
.It
You will be asked to enter the size of your
.Nx
root
partition. It should be at least 20M, but if you are going to
be doing development, 25M is a more desirable size. This
size should be expressed in units of sectors or cylinders,
depending on which you said you wanted to use.
.It
Next, you will be asked for the size of your swap partition.
You should probably allocate twice as much swap space as you
have real memory. Systems that will be heavily used should
have more swap space allocated, and systems that will be
lightly used can get by with less. If you want the system to
be able to save crash dumps when it panics, you will need at
least as much swap space as you have RAM. Again, this number
should be expressed in units of sectors or cylinders, as
appropriate.
.It
The install program will then ask you for information about
the rest of the partitions you want on your disk. For most
purposes, you will want only one more partition, "/usr".
(Machines used as servers will probably also want /var as a
separate partition. That can be done with these installation
tools, but is not covered here.) The install program will
tell you how much space there is left to be allocated in the
NetBSD area of the disk, and, if you only want one more
partition ("/usr"), you should enter it at the prompt when the
installer asks you how large the next partition should be.
It will then ask you for the name of the mount point for that
partition. If you're doing a basic installation, that is
"/usr".
.It
.Em You are now at the
.Em point of no return .
Nothing has been
written to your disk yet, but if you confirm that you want to
install NetBSD, your hard drive will be modified, and its
contents may be scrambled at the whim of the install program.
This is especially likely if you have given the install
program incorrect information. If you are sure you want to
proceed, enter "yes" at the prompt.
.It
The install program will now label your disk and make the file
systems you specified. The filesystems will be initialized to
contain
.Nx
bootstrapping binaries and configuration files.
It will also create an /etc/fstab for your system, and mount
all of the file systems under /mnt. (In other words, your root
partition will be mounted on /mnt, your /usr partition on
/mnt/usr, and so on.) There should be no errors in this
section of the installation. If there are, restart from the
beginning of the installation process.
.It
You will be placed at a shell prompt ("#"). The remaining
tasks are to copy the kernel from the kernel copy floppy to
the hard drive's root filesystem and install the distribution
sets. The flow of installation differs depending on your
hardware resources, and on what media the distribution sets
reside.
.El
.Bl -tag -width indent
.It Em To\ install\ from\ removable\ hard disk
.Pp
The first thing you should do is pick a temporary
directory where the distribution files can be stored.
To do this, enter the command "Set_tmp_dir", and enter
the name of the temporary directory. (Don't forget
that your disk is mounted under
.Pa /mnt ;
you should
probably pick a directory under
.Pa /mnt/usr . )
The
default is /mnt/usr/distrib.
.Pp
Insert the media onto the drive. Check the device
name of your drive from the boot message. The device
name is something like "sd2" depending on the SCSI
disk drives connected to your machine. Note that the
boot message can be displayed with the command
.Ic more /kern/msgbuf .
.Pp
Mount the disk on the temporary directory with a
command like:
.D1 Ic mount -t msdos /dev/sd2c Ar tmp_dir
if your removable drive's name is sd2.
.Pp
Run the
.Ic Extract
command once for each distribution
set you wish to install. For instance, if you wish to
install the
.Sy base
distribution set, followed by the
.Sy kern
distribution set, and finally the
.Sy etc
distribution set, use the commands:
.D1 Ic Extract base
.D1 Ic Extract kern
.D1 Ic Extract etc
.Pp
For each extraction, it will ask you if the extraction
should be verbose. If you reply affirmatively, it
will print out the name of each file that's being
extracted.
.It Em To install from floppy
.Pp
The first thing you should do is pick a temporary
directory where the distribution files can be stored.
To do this, enter the command
.Ic Set_tmp_dir ,
and enter
the name of the temporary directory. (Don't forget
that if your disk is still mounted under /mnt; you
should probably pick a directory under /mnt/usr.)
.Pp
After you have picked a temporary directory, enter the
.Ic Load_fd
command, to load the distribution sets from
your floppies.
.Pp
You will be asked which floppy drive to use. Enter
"0" (zero) if you're using the first floppy drive
(i.e. what DOS would call "A:"), or enter "1" if
you're using the second.
.Pp
You will be prompted to insert a floppy into the drive,
to have its contents copied to your hard disk. Do so,
and hit return to begin copying. When that is done,
read the remainder of the floppies that contain the
distribution sets that you want to install, one by
one. When the last is read, and you are being
prompted for another, hit Control-C.
.Pp
Run the "Extract" command once for each distribution
set you wish to install. For instance, if you wish to
install the "base" distribution set, followed by the
"kern" distribution set, and finally the "etc"
distribution set, use the commands:
.D1 Ic Extract base
.D1 Ic Extract kern
.D1 Ic Extract etc
.Pp
For each extraction, it will ask you if the extraction
should be verbose. If you reply affirmatively, it
will print out the name of each file that's being
extracted.
.Pp
.(Note
If you know that you will be running low on
disk space when installing NetBSD, you can load and
extract one distribution set at a time. To do this,
load only the floppies which contain the files for the
first distribution set, extract them, and then change
to the temporary directory and remove them with the
command "rm set_name.??".
.Note)
.Pp
Once you are finished extracting all of the sets that
you wish to install, you should proceed to the
instructions below (after the last install medium
type-specific instructions), that explain how you
should configure your system.
.
.It Em To install from tape
.Pp
The first thing you should do is pick a temporary
directory where the distribution files can be stored.
To do this, enter the command "Set_tmp_dir", and enter
the name of the temporary directory. (Don't forget
that your disk is mounted under /mnt; you should
probably pick a directory under /mnt/usr.) The
default is /mnt/usr/distrib.
.Pp
After you have picked a temporary directory, enter the
"Load_tape" command, to load the distribution sets from
tape.
.Pp
You will be asked which tape drive to use. The
default is "rst0", which is correct if you're using
the SCSI tape drive with the lowest SCSI ID number.
(For the SCSI tape drive with the next lowest SCSI ID
number, you should use "rst1", and so on.)
.Pp
You will be prompted to hit return when you have
inserted the tape into the tape drive. When you do,
the contents of the tape will be extracted into the
temporary directory, and the names of the files being
extracted will be printed.
.Pp
After the tape has been extracted, to go the directory
containing the first distribution set you wish to
install. (Depending on how you made the tape, it's
probably a subdirectory of the temporary directory you
specified above.) Once there, run the "Set_tmp_dir"
command again, and accept its default answer by
hitting return at the prompt.
.Pp
Use the
.Ic Extract
command to extract the distribution
set. For instance, if you're extracting the "base"
set, use the command:
.Ic Extract base
You will be asked if you wish the extraction to be
verbose. If you reply affirmatively, the name of each
file being extracted will be printed.
.Pp
Repeat the previous two steps for each distribution
set you wish to install. Change to the set's
directory, run "Set_tmp_dir", and then run
.Sy Extract Ar set_name
to extract the set.
.Pp
Once you are finished extracting all of the sets that
you wish to install, you should proceed to the
instructions below (after the last install medium
type-specific instructions), that explain how you
should configure your system.
.
.It Em To install via FTP or NFS
.Pp
The first thing you should do is pick a temporary
directory where the distribution files can be stored.
To do this, enter the command "Set_tmp_dir", and enter
the name of the temporary directory. (Don't forget
that your disk is mounted under
.Pa /mnt ;
you should
probably pick a directory under
.Pa /mnt/usr . )
The default is
.Pa /mnt/usr/distrib .
.Pp
Configure the network interface.  To use SLIP, type the following
command sequence:
.D1 Ic slattach\ -h\ -s Ar speed Ic tty00
.D1 Ic ifconfig\ sl0 Ar my_ipaddr peer_ipaddr
where
.Ar speed
is the network speed, and
.Ar my_ipaddr
is the numeric IP address of the machine you are going
to install NetBSD/x68k, while
.Ar peer_ipaddr
is the
address of the peer machine connected with your machine.
You might have to configure the peer SLIP interface
with similar sequence (depending on the peer system).
.Pp
For instance, the sequence
.D1 Ic "slattach -h -s 38400 tty00
.D1 Ic "ifconfig sl0 192.168.0.1 192.168.0.10
configures the SLIP interface for the network between
your machine (with IP address 192.168.0.1) and the peer
(192.168.0.10) with speed 38400 bps. Note that IP
addresses 192.168.*.* are the private IP addresses
described in RFC 1597.
.Pp
To use ethernet, do following:
.D1 Ic ifconfig\ ne0 Ar my_ipaddr
where
.Ar my_ipaddr
is the numeric IP address of the machine you are going
to install NetBSD/x68k.  ne0 is the interface name which correspond to
the Neptune-X or clone.
.Pp
If you are NFS-mounting the distribution sets, mount
them on the temporary directory with a command like:
.
.D1 mount\ -t\ nfs Ar serv_ipaddr:dist_dir tmp_dir
where
.Ar serv_ipaddr
is the server's numeric IP address,
.Ar dist_dir
is the path to the distribution files on
the server, and
.Ar tmp_dir
is the name of the local
temporary directory.
.Pp
Once this is done, proceed as if you had loaded the
files from tape, changing to the appropriate
directories, running
.Ic "Set_tmp_dir"
and running
.Ic "Extract"
as appropriate.
.Pp
If you are retrieving the distribution sets using ftp,
change into the temporary directory, and execute the
command:
.D1 Ic ftp Ar serv_ipaddr
where 
.D1 Ar serv_ipaddr
is once again the server's numeric
IP address. Get the files with FTP, taking care to
use binary mode when transferring the files.
.Pp
Once you have all of the files for the distribution
sets that you wish to install, you can proceed using
the instructions above, as if you had installed from a
floppy.
.(Note
As with the floppy install, if
you're short on disk space, you can transfer only one
set at a time, extract it, and then delete it in
order to save space.)
.Note)
.El
.Pp
Once you have finished extracting all of the distribution sets
.Pp
that you wish to install, and are back at the "#" prompt, you
are ready to configure your system. The configuration utility
expects that you have installed the "base" and "etc"
distribution sets. If you have not, you will not be able to
run it successfully (nor will you have a functional system, in
any case). To configure your newly-installed
.Nx
system,
run the command "Configure". It will ask you for the system's
host name, domain name, and other network configuration
information. It will set up your configuration files and make
the device nodes for the newly-installed system.
.Pp
Congratulations, you have successfully installed
.Nx \*V . When you
reboot into NetBSD, you should log in as "root" at the login prompt.
There is no initial password, but if you're using the machine in a
networked environment, you should create yourself an account and
protect it and the "root" account with good passwords.
.Pp
Some of the files in the
.Nx \*V
distribution might need to be
tailored for your site. In particular, the
.Pa /etc/sendmail.cf
file will
almost definitely need to be adjusted, and other files in
.Pa /etc
including
.Pa /etc/rc.conf
will probably need to be modified, as well. If
you are unfamiliar with UN*X-like system administration, it's
recommended that you buy a book that discusses it.
