This is a copy of the install man page. The official original document can
downloaded/accessed here.
INSTALL(8) NetBSD System Manager's Manual INSTALL(8)
NAME
INSTALL - Installation procedure for NetBSD/i386.
CONTENTS
About this Document............................................2
Quick install notes for the impatient..........................3
What is NetBSD?................................................3
Changes Between The NetBSD 2.0 and 2.1 Releases................4
Kernel......................................................4
Networking..................................................4
File system.................................................5
Security....................................................5
System administration and user tools........................5
Miscellaneous...............................................5
i386 specific...............................................6
Changes Between The NetBSD 1.6 and 2.0 Releases................6
Kernel......................................................6
Networking..................................................7
File system.................................................7
Security....................................................7
System administration and user tools........................7
Miscellaneous...............................................8
Important notes about NetBSD 2.1...............................8
The Future of NetBSD...........................................8
Sources of NetBSD..............................................9
NetBSD 2.1 Release Contents....................................9
NetBSD/i386 subdirectory structure.........................10
Binary distribution sets...................................11
NetBSD/i386 System Requirements and Supported Devices.........13
Supported devices..........................................13
Floppy controllers......................................13
MFM, ESDI, IDE, and RLL hard disk controllers...........13
SCSI host adapters......................................13
MDA, CGA, VGA, SVGA, and HGC Display Adapters...........14
Serial ports............................................14
Parallel ports..........................................15
Ethernet adapters.......................................15
FDDI adapters...........................................16
Token-Ring adapters.....................................16
Wireless network adapters...............................16
High Speed Serial.......................................16
Tape drives.............................................16
CD-ROM drives...........................................16
Mice....................................................17
Sound Cards.............................................17
Game Ports (Joysticks)..................................17
Miscellaneous...........................................17
PCMCIA Controllers......................................17
RAID Controllers........................................18
Specific driver footnotes:..............................18
Unsupported devices........................................18
Required configurations....................................18
Getting the NetBSD System on to Useful Media..................21
Preparing your System for NetBSD installation.................23
Installing the NetBSD System..................................24
Running the sysinst installation program...................24
Introduction............................................24
Possible PCMCIA issues..................................24
General.................................................26
Quick install...........................................26
Booting NetBSD..........................................28
Network configuration...................................28
Installation drive selection and parameters.............29
Partitioning the disk...................................29
Preparing your hard disk................................30
Getting the distribution sets...........................30
Installation using ftp..................................31
Installation using NFS..................................31
Installation from CD-ROM................................32
Installation from a floppy set..........................32
Installation from an unmounted file system..............32
Installation from a local directory.....................32
Extracting the distribution sets........................32
Finalizing your installation............................33
Post installation steps.......................................33
Upgrading a previously-installed NetBSD System................35
Compatibility Issues With Previous NetBSD Releases............36
Issues affecting an upgrade from NetBSD 1.6................36
Using online NetBSD documentation.............................37
Administrivia.................................................37
Thanks go to..................................................38
We are........................................................40
Legal Mumbo-Jumbo.............................................46
The End.......................................................52
DESCRIPTION
About this Document
This document describes the installation procedure for NetBSD 2.1 on the
i386 platform. It is available in four different formats titled
INSTALL.ext, where .ext is one of .ps, .html, .more, or .txt:
.ps PostScript.
.html Standard Internet HTML.
.more The enhanced text format used on UNIX -like systems by the
more(1) and less(1) pager utility programs. This is the
format in which the on-line man pages are generally pre-
sented.
.txt Plain old ASCII.
You are reading the ASCII version.
Quick install notes for the impatient
This section contains some brief notes describing what you need to
install NetBSD 2.1 on a machine of the i386 architecture.
o Fetch the appropriate pair of boot floppy images from the
i386/installation/floppy/ directory, or a CD-ROM image. Most people
will need the boot1.fs and boot2.fs images for VGA console installa-
tion, or the boot-com1.fs and boot-com2.fs images for installation
via serial console. You may also possibly (but not necessarily) want
to use bootlap1.fs and bootlap2.fs if installing on a laptop.
o The actual binary distribution is in the i386/binary/sets/ directory.
When you boot the install floppies, the installation program can
fetch these files for you (using e.g. ftp), if you have a network
connection. There are several other methods to get the binary sets
onto your machine.
You will at a minimum need one of the kernel sets, typically
kern-GENERIC.tgz, as well as base.tgz and etc.tgz. In a typical
workstation installation you will probably want all the installation
sets.
o Write the floppy images directly to a pair of floppies. If you have
problems writing a raw image to a floppy, the rawrite.exe MS-DOS pro-
gram or the Rawrite32.exe Windows32 program (inside rawrite32.zip) in
the i386/installation/misc/ directory may be of help.
The disk(s) you just prepared will be used to boot the installation
kernel, which contains all the tools required to install NetBSD.
o For third-party programs which are not part of the base NetBSD dis-
tribution, you will want to explore the pkgsrc system with its more
than 5400 program packages.
What is NetBSD?
The NetBSD Operating System is a fully functional Open Source UNIX -like
operating system derived from the University of California, Berkeley Net-
working Release 2 (Net/2), 4.4BSD-Lite, and 4.4BSD-Lite2 sources. NetBSD
runs on fifty four different system architectures (ports), featuring sev-
enteen machine architectures across fifteen distinct CPU families, and is
being ported to more. The NetBSD 2.1 release contains complete binary
releases for many different system architectures. (A few ports are not
fully supported at this time and are thus not part of the binary distri-
bution. For information on them, please see the NetBSD web site at .:
http://www.NetBSD.org/)
NetBSD is a completely integrated system. In addition to its highly por-
table, high performance kernel, NetBSD features a complete set of user
utilities, compilers for several languages, the X Window System, firewall
software and numerous other tools, all accompanied by full source code.
NetBSD is a creation of the members of the Internet community. Without
the unique cooperation and coordination the net makes possible, it's
likely that NetBSD wouldn't exist.
Changes Between The NetBSD 2.0 and 2.1 Releases
The NetBSD 2.1 release is the first functional update release of the
NetBSD 2 release branch. This provides numerous functional enhancements,
including support for many new devices, hundreds of bug fixes, patches
and updates to kernel subsystems, and many enhancements to the user envi-
ronment. In addition, all of the security fixes and critical bug fixes
from the NetBSD 2.0.3 update are included as well. The result of these
improvements is a stable operating system fit for production use that
rivals most commercially available systems.
It is impossible to completely summarize all the changes that have gone
in over the over nine months since the release of NetBSD 2.0. Some high-
lights include:
Kernel
o Fix a bug that caused spontaneous reboot under heavy load on SH3/4
platforms.
o Fixed some sparc64 and alpha pmap issues.
o A longstanding bug in the SYSV semaphore code has been fixed.
o Eliminated hangs when large processes fork.
o ata(4) and wdc(4) drives now only downgrade modes due to actual CRC
errors, and UDMA modes are downgraded more slowly.
o The pdcsata(4) driver was added, with support for the Promise SATA150
series of controllers, including RAID support.
o The RAIDframe disk driver had various bugfixes and improvements.
o Added support for various devices from the nVidia nForce3 chipset.
(i386, amd64)
o Fixed interrupt problems on some Intel Xeon systems.
o Added support for the VT642 SATA RAID Controller.
o Various fixes to the esiop(4) driver.
o Added support for the Dell CERC SATA RAID to the aac(4) driver.
o Added support for additional Dell boards to the ahd(4) driver.
o Fix a number of issues with the ehci(4) driver.
o Added ukyopon(4) : Kyocera AIR-EDGE phone driver.
o The wdc(4) driver has been fixed for commands with opaque data struc-
tures. atactl smart status now works on big-endian hosts.
Networking
o wm(4) fixed major performance issues with the i82547 Gig-E chip.
o sk(4) improved chip identification and improved performance, and
added support for the Belkin Gigabit Desktop Network PCI card.
o Fix a bug which would crash the system when destroying vlan(4) inter-
faces.
o Added rtk(4) and tl(4) interfaces as rnd(4) sources.
o Added support for the Compaq Netelligent 10 T/2 PCI UTP/Coax Con-
troller to the tl(4) driver.
o Added support for changing the MTU of an stf(4) interface.
o Added support for IPv6 over gre(4) interfaces.
o The hme(4) driver now supports Sun QFE boards on non-sparc hardware.
o stge(4) Fix some bigendian issues, and some other issues. Now works
on sparc64 with hardware checksums.
File system
o Fix a number of NFS issues.
o Fixed file access problems via SMBFS when the file is already open on
the server.
o Various improvements to LFS, the BSD log-structured file system.
Security
o krb5(3) Support changing passwords in a Windows 2000 (or later)
domain.
o Fixed a possible Denial of Service attack via IPSec AH packets.
o NetBSD-SA2005-07 AES-XCBC-MAC always caculated with same key
o NetBSD-SA2005-06 Multiple vulnerabilites in CVS
o NetBSD-SA2005-05 cgd(4) key destruction on unconfigure
o NetBSD-SA2005-04 Buffer overflows in MIT Kerberos 5 telnet client
o NetBSD-SA2005-03 F_CLOSEM local denial of service
o NetBSD-SA2005-02 Local DoS via audio device with specific drivers
System administration and user tools
o ntpd(8) coredump if local system and NTP server did not have overlap-
ping protocol family support (IPv4 vs. IPv6, for example) fixed.
o pax(1) has a number of bugfixes and new features.
o ifwatchd(8) has been fixed to call the CARRIER script if a link is
already up during the initial interface scan.
o CVS has been upgraded to version 1.11.20.
o Avoid crashes in grep(1) on empty or very large files.
o Fixed a number of issues in gzip(1)
Miscellaneous
o Added VT switching for the cats port.
o Various fixes and improvements to the cross-build system.
o Fixed some issues in libpthread and libpthread_dbg.
o Implement a USB memory reserve to work around problems plugging in
(for example) umass(4) devices after boot.
o Package tools have been upgraded to version 20050530.
i386 specific
This is the ninth major release of NetBSD for the i386.
As is usual between releases, the i386 port has had many improvements
made to it--too many to detail all of them here.
Numerous new drivers have been added. See the supported hardware list
for details.
Some (but not all!) notable i386-specific improvements include:
o Support for Symmetric Multi-Processing (SMP)
NetBSD 2.1 on i386 is, as usual, also fully backward compatible with old
NetBSD/i386 binaries, so you don't need to recompile all your local pro-
grams provided you set the appropriate binary compatibility options in
your kernel configuration.
Changes Between The NetBSD 1.6 and 2.0 Releases
The NetBSD 2.0 release provides numerous significant functional enhance-
ments, including support for many new devices, integration of hundreds of
bug fixes, new and updated kernel subsystems, and many user-land enhance-
ments. The result of these improvements is a stable operating system fit
for production use that rivals most commercially available systems.
It is impossible to completely summarize over two years of development
that went into the NetBSD 2.1 release. Some highlights include:
Kernel
o Ports to new platforms including: amd64, evbsh5, and xen.
o Native thread support has been added, based on Scheduler Activations.
Applications which support native threads can now take full advantage
of the high-performance NetBSD POSIX threads implementation.
o Kernel events notification framework - kqueue kqueue provides a
stateful and efficient event notification framework. Currently sup-
ported events include socket, file, directory, fifo, pipe, tty and
device changes, and monitoring of processes and signals. kqueue is
supported by all writable filesystems in the NetBSD tree (with the
exception of Coda) and all device drivers supporting poll(2).
o Improvements have been made to NetBSD's Linux emulation to support
the latest Sun JDK/JRE for Linux. Testing has shown that it now runs
as well as it does on Linux natively.
o NetBSD 2.0 enforces non-executable mappings on many platforms. This
means that parts of the stack and heap are made non-executable when
they are marked writable. This makes exploiting potential buffer
overflows harder.
o For the i386 port it now supports SMP and has a new ACPI and power
management framework which takes advantage of Intel's ACPI implemen-
tation.
o The macppc port also now supports SMP as well as hardware support for
newer G4 models has been added.
o SMP support has been added to the sparc port as well.
o New generic i2c framework, supporting bit-bang and "intelligent" con-
trollers.
o sysctl(9) was switched from a static binding to a dynamic implementa-
tion.
o Add a new driver satalink(4) and move SATA support from other con-
trollers into this along with adding support for new controllers.
Networking
o ipf(8) has been upgraded to version 4.1.3.
o tcp(4) now implements path MTU discovery blackhole detection (i.e. it
will turn off path MTU discovery if the connection is losing).
o Socket buffer insertion is now O(C). This can provide a substantial
performance boost to some applications which use large socket
buffers.
o wi(4) has support for Host-AP mode, allowing Intersil
Prism2/2.5/3-based boards to be used to make an 802.11 Access Point.
o Support for ipf(8) has been added to bridge(4) and brconfig(8)
o Change port allocation from linked list to a hash table for better
performance.
File system
o FreeBSD's UFS2 has been ported to NetBSD. UFS2 is an extension to
FFS, adding 64 bit block pointers and support for extended file stor-
age. Among other enhancements, UFS2 allows for file systems larger
than 1Terabyte.
o The cryptographic disk driver (cgd) can be used to encrypt disks or
partitions, using some strong encryption algorithms, like AES (Rijn-
dael) and Blowfish. cgd can also be configured to encrypt swap.
Security
o The systrace utility has been added to the system. systrace monitors
and controls an application access to the system by enforcing access
policies for system calls. The systrace utility might be used to
trace an untrusted application's access to the system. In addition,
it can be used to protect the system from software bugs (such as
buffer overflows) by constraining a daemon's access to the system.
The privilege elevation feature of systrace can be used to obviate
the need to run large, untrusted programs as root when only one or
two system calls require the elevated privilege.
o Verified Exec support has been added in this release. Verified Exec
verifies a cryptographic hash before allowing execution of binaries
and scripts. This can be used to prevent a system from running bina-
ries or scripts which have been illegally modified or installed. In
addition, Verified Exec can also be used to limit the use of script
interpreters to authorized scripts only and disallow interactive use.
System administration and user tools
o Switched from the GPL version to a non-GPL version of various tools
including gzip and awk.
Miscellaneous
o NetBSD 2.0 supports a new toolchain based on gcc 3.3.3 and binutils
2.14. gcc 3.3.1 adds support for a number of CPU targets and greatly
improved support for i386 and other targets. The support for new
platforms in gcc 3.3.3 has enabled the porting of NetBSD to even more
architectures.
o Updates of most third party packages that are shipped in the base
system to the following latest stable releases:
- bind 8.3.7
- binutils 2.14
- cvs 1.11.17
- diffutils 2.8.1
- file 4.08
- gcc 3.3.3
- gdb 5.3
- grep 2.5.1
- groff 1.19
- less 381
- openssl 0.9.7d
- postfix 2.0.19
- sendmail 8.12.11
- tcpump 3.7.1
- texinfo 4.6
o Many new packages in the pkgsrc system, including the latest open
source desktop KDE3, OpenOffice, perl, Apache and many more. A num-
ber of new platforms are supported, including Darwin, FreeBSD, IRIX,
Linux, OpenBSD and Solaris. Support for various other platforms
(among them AIX, BSD/OS and HP-UX) is currently being worked on
thanks to our new, portable bootstrap kit which makes it much simpler
to port pkgsrc support to new operating systems. At the time of
writing, there are over 5400 third party packages available in
pkgsrc.
Kernel interfaces have continued to be refined, and more subsystems and
device drivers are shared among the different ports. You can look for
this trend to continue.
Important notes about NetBSD 2.1
o As noted above, the sendmail third-party program has been upgraded
since the last release. The new version of sendmail runs without
requiring being set-user-ID to ``root''.
In order to retain the functionality that a newly installed system
can send mail ``out of the box'', the default has changed so that
sendmail will now start by default, and listen for host-local connec-
tions.
If this behaviour is not desired, you can either
1. explicitly set the sendmail variable to ``NO'' in /etc/rc.conf,
2. modify /etc/mail/submit.cf to point to another host,
3. modify /etc/mailer.conf to point to something else than send-
mail, or
4. make sendmail set-user-ID to ``root'', remove
/etc/mail/submit.cf, and set the sendmail_suid variable to
``YES'' in /etc/rc.conf.
The latter method is strongly discouraged.
The Future of NetBSD
The NetBSD Foundation has been incorporated as a non-profit organization.
Its purpose is to encourage, foster and promote the free exchange of com-
puter software, namely the NetBSD Operating System. The foundation will
allow for many things to be handled more smoothly than could be done with
our previous informal organization. In particular, it provides the
framework to deal with other parties that wish to become involved in the
NetBSD Project.
The NetBSD Foundation will help improve the quality of NetBSD by:
o providing better organization to keep track of development efforts,
including co-ordination with groups working in related fields.
o providing a framework to receive donations of goods and services and
to own the resources necessary to run the NetBSD Project.
o providing a better position from which to undertake promotional
activities.
o periodically organizing workshops for developers and other interested
people to discuss ongoing work.
We intend to begin narrowing the time delay between releases. Our ambi-
tion is to provide a full release every six to eight months.
We hope to support even more hardware in the future, and we have a rather
large number of other ideas about what can be done to improve NetBSD.
We intend to continue our current practice of making the NetBSD-current
development source available on a daily basis.
We intend to integrate free, positive changes from whatever sources sub-
mit them, providing that they are well thought-out and increase the
usability of the system.
Above all, we hope to create a stable and accessible system, and to be
responsive to the needs and desires of NetBSD users, because it is for
and because of them that NetBSD exists.
Sources of NetBSD
Refer to .:
http://www.NetBSD.org/mirrors/
NetBSD 2.1 Release Contents
The root directory of the NetBSD 2.1 release is organized as follows:
.../NetBSD-2.1/
CHANGES Changes since earlier NetBSD releases.
LAST_MINUTE Last minute changes.
MIRRORS A list of sites that mirror the NetBSD 2.1 distribution.
README.files README describing the distribution's contents.
TODO NetBSD 's todo list (also somewhat incomplete and out of
date).
patches/ Post-release source code patches.
source/ Source distribution sets; see below.
In addition to the files and directories listed above, there is one
directory per architecture, for each of the architectures for which
NetBSD 2.1 has a binary distribution.
The source distribution sets can be found in subdirectories of the source
subdirectory of the distribution tree. They contain the complete sources
to the system. The source distribution sets are as follows:
gnusrc This set contains the ``gnu'' sources, including the source for
the compiler, assembler, groff, and the other GNU utilities in
the binary distribution sets.
79 MB gzipped, 367 MB uncompressed
pkgsrc This set contains the ``pkgsrc'' sources, which contain the in-
frastructure to build third-party packages.
24 MB gzipped, 200 MB uncompressed
sharesrc This set contains the ``share'' sources, which include the
sources for the man pages not associated with any particular
program; the sources for the typesettable document set; the
dictionaries; and more.
5 MB gzipped, 20 MB uncompressed
src This set contains all of the base NetBSD 2.1 sources which are
not in gnusrc, sharesrc, or syssrc.
37 MB gzipped, 176 MB uncompressed
syssrc This set contains the sources to the NetBSD 2.1 kernel for all
architectures; config(8); and dbsym(8).
26 MB gzipped, 140 MB uncompressed
xsrc This set contains the sources to the X Window System.
84 MB gzipped, 450 MB uncompressed
All the above source sets are located in the source/sets subdirectory of
the distribution tree.
The source sets are distributed as compressed tar files. Except for the
pkgsrc set, which is traditionally unpacked into /usr/pkgsrc, all sets
may be unpacked into /usr/src with the command:
# ( cd / ; tar -zxpf - ) set_name.tgz
In each of the source distribution set directories, there are files which
contain the checksums of the files in the directory:
BSDSUM Historic BSD checksums for the various files in that
directory, in the format produced by the command:
cksum -o 1 file.
CKSUM POSIX checksums for the various files in that directory,
in the format produced by the command:
cksum file.
MD5 MD5 digests for the various files in that directory, in
the format produced by the command:
cksum -m file.
SYSVSUM Historic ATT System V UNIX checksums for the various files
in that directory, in the format produced by the command:
cksum -o 2 file.
The MD5 digest is the safest checksum, followed by the POSIX checksum.
The other two checksums are provided only to ensure that the widest pos-
sible range of system can check the integrity of the release files.
NetBSD/i386 subdirectory structure
The i386-specific portion of the NetBSD 2.1 release is found in the i386
subdirectory of the distribution: .../NetBSD-2.1/i386/. It contains the
following files and directories:
INSTALL.html
INSTALL.ps
INSTALL.txt
INSTALL.more Installation notes in various file formats, including this
file. The .more file contains underlined text using the
more(1) conventions for indicating italic and bold display.
binary/
kernel/
netbsd-GENERIC.gz
A gzipped NetBSD kernel containing code
for everything supported in this
release.
netbsd-GENERIC.MP.gz
A gzipped NetBSD kernel containing code
for everything supported in this
release. This kernel also supports SMP
on systems with more than one CPU.
netbsd-GENERIC_DIAGNOSTIC.gz
A gzipped NetBSD kernel containing code
for everything supported in this
release, with diagnostic messages
enabled.
netbsd-GENERIC_LAPTOP.gz
A version of GENERIC that has USB, PCM-
CIA and CardBus enabled to allow
installing on laptop machines.
netbsd-GENERIC_TINY.gz
A version of GENERIC intended to run on
machines with less than 8 MB.
netbsd-GENERIC_PS2TINY.gz
A version of GENERIC intended to run on
IBM PS/2 machines.
netbsd-INSTALL.gz
A somewhat smaller kernel, which you
can use to boot the system on memory-
tight systems. This is the same kernel
as present on the miniroot and on many
install floppies.
netbsd-INSTALL_TINY.gz
A version of INSTALL intended to run on
machines with less than 8 MB.
netbsd-INSTALL_SMALL.gz
A version of INSTALL intended to fit on
5.25"/1.2 MB diskettes.
netbsd-INSTALL_LAPTOP.gz
A version of INSTALL that has USB, PCM-
CIA and CardBus enabled to allow
installing on laptop machines.
netbsd-INSTALL_PS2.gz
A version of INSTALL that has MCA stuff
enabled to allow installing on IBM PS/2
machines.
sets/ i386 binary distribution sets; see below.
installation/
floppy/ i386 boot and installation floppies; see below.
misc/
Binary distribution sets
The NetBSD i386 binary distribution sets contain the binaries which com-
prise the NetBSD 2.1 release for the i386. The binary distribution sets
can be found in the i386/binary/sets subdirectory of the NetBSD 2.1 dis-
tribution tree, and are as follows:
base The NetBSD 2.1 i386 base binary distribution. You must install
this distribution set. It contains the base NetBSD utilities
that are necessary for the system to run and be minimally func-
tional. It includes shared library support, and excludes every-
thing described below.
17 MB gzipped, 47 MB uncompressed
comp Things needed for compiling programs. This set includes the
system include files (/usr/include) and the various system
libraries (except the shared libraries, which are included as
part of the base set). This set also includes the manual pages
for all of the utilities it contains, as well as the system call
and library manual pages.
20 MB gzipped, 73 MB uncompressed
etc This distribution set contains the system configuration files
that reside in /etc and in several other places. This set must
be installed if you are installing the system from scratch, but
should not be used if you are upgrading.
1 MB gzipped, 1 MB uncompressed
games This set includes the games and their manual pages.
3 MB gzipped, 7 MB uncompressed
kern-GENERIC
This set contains a NetBSD/i386 2.1 GENERIC kernel, named
/netbsd. You must install this distribution set.
4 MB gzipped, 8 MB uncompressed
man This set includes all of the manual pages for the binaries and
other software contained in the base set. Note that it does not
include any of the manual pages that are included in the other
sets.
8 MB gzipped, 30 MB uncompressed
misc This set includes the (rather large) system dictionaries, the
typesettable document set, and other files from /usr/share.
3 MB gzipped, 9 MB uncompressed
text This set includes NetBSD's text processing tools, including
groff(1), all related programs, and their manual pages.
2 MB gzipped, 7 MB uncompressed
NetBSD maintains its own set of sources for the X Window System in order
to assure tight integration and compatibility. These sources are based
on XFree86, and tightly track XFree86 releases. They are currently
equivalent to XFree86 4.4.0. Binary sets for the X Window System are
distributed with NetBSD. The sets are:
xbase The basic files needed for a complete X client environment.
This does not include the X servers.
6 MB gzipped, 17 MB uncompressed
xcomp The extra libraries and include files needed to compile X source
code.
11 MB gzipped, 37 MB uncompressed
xfont Fonts needed by X.
31 MB gzipped, 39 MB uncompressed
xetc Configuration files for X which could be locally modified.
0.03 MB gzipped, 0.17 MB uncompressed
xserver The X server. This includes all XFree86 X servers. Because all
of them are included, this set is large. However, you will only
need one of the servers provided in this set. (Typically,
XFree86).
8 MB gzipped, 22 MB uncompressed
The i386 binary distribution sets are distributed as gzipped tar files
named with the extension .tgz, e.g. base.tgz.
The instructions given for extracting the source sets work equally well
for the binary sets, but it is worth noting that if you use that method,
the filenames stored in the sets are relative and therefore the files are
extracted below the current directory. Therefore, if you want to extract
the binaries into your system, i.e. replace the system binaries with
them, you have to run the tar -xpf command from the root directory ( / )
of your system. This utility is used only in a Traditional method
installation.
Note: Each directory in the i386 binary distribution also has its own
checksum files, just as the source distribution does.
NetBSD/i386 System Requirements and Supported Devices
NetBSD 2.1 runs on ISA (AT-Bus), EISA, MCA, PCI, and VL-bus systems with
386-family processors, with or without math coprocessors. The minimal
configuration is said to require 4 MB of RAM and 50 MB of disk space,
though we do not know of anyone running with a system quite this minimal
today. To install the entire system requires much more disk space (the
unpacked binary distribution, without sources, requires at least 65 MB
without counting space needed for swap space, etc), and to run X or com-
pile the system, more RAM is recommended. (4 MB of RAM will actually
allow you to run X and/or compile, but it won't be speedy. Note that
until you have around 16 MB of RAM, getting more RAM is more important
than getting a faster CPU.)
Supported devices
Explanation of bracketted footnote tags [] follows this listing.
o Floppy controllers.
o MFM, ESDI, IDE, and RLL hard disk controllers.
There is complete support (including IDE DMA or Ultra-DMA) for
the following PCI controllers
- Acard ATA-850 and 860 based IDE Controllers
- Acer labs M5229 IDE Controller
- Advanced Micro Devices AMD-756, 766, and 768 IDE Con-
trollers
- CMD Tech PCI0643, 0646, 0648, and 0649 IDE Controllers
- Contaq Microsystems/Cypress CY82C693 IDE Controller
- HighPoint HPT366, HPT370, HPT372, and HPT374.
- IBM ESDI Fixed Disk Controllers [m]
- Intel PIIX, PIIX3, and PIIX4 IDE Controllers
- Intel 82801 (ICH/ICH0/ICH2/ICH4/ICH5/ICH6) IDE Controllers
- Promise PDC20246 (Ultra/33), PDC20262 (Ultra/66),
PDC20265/PDC20267 (Ultra/100), PDC20268 (Ultra/100TX2 and
Ultra/100TX2v2), Ultra/133, Ultra/133TX2, and
Ultra/133TX2v2.
- Promise SATA150 serial-ATA controllers: PDC20318, PDC20319,
PDC20371, PDC20375, PDC20376, PDC20377, PDC20378 and
PDC20379.
- Silicon Integrated System 5597/5598 IDE controller
- VIA Technologies VT82C586, VT82C586A, VT82C596A, VT82C686A,
and VT8233A IDE Controllers
Most of these controllers are only available in multifunction
PCI chips. Other PCI IDE controllers are supported, but per-
formance may not be optimal. ISA, ISA Plug and Play and PCMCIA
IDE controllers are supported as well.
o SCSI host adapters
- Adaptec AHA-154xA, -B, -C, and -CF
- Adaptec AHA-1640 cards (MCA variant of AHA-1540) [m]
- Adaptec AHA-174x
- Adaptec AIC-6260 and AIC-6360 based boards, including the
Adaptec AHA-152x, Adaptec APA-1460 (PCMCIA) and APA-1480
(CardBus), and the SoundBlaster SCSI host adapter.
Note: You cannot boot from these boards if they do not
have a boot ROM; consequently only the AHA-152x and
motherboards using this chip are likely to be
bootable.
- Adaptec AHA-2910, 2915, 2920, and 2930C adapters.
- Adaptec AHA-2x4x[U][2][W] cards and onboard PCI designs
using the AIC-7770, AIC-7850, AIC-7860, AIC-7870, AIC-7880
and AIC-789x chipsets.
- Adaptec AHA-394x[U][W] cards [b]
- Adaptec AHA-3950U2 cards
- Adaptec AHA-3960, 19160, and 29160 Ultra-160 adapters
- AdvanSys ABP-9x0[U][A] cards
- AdvanSys ABP-940UW[68], ABP-970UW[68], and ASB3940UW-00
cards
- AMD PCscsi-PCI (Am53c974) based SCSI adapters, including
Tekram DC-390
- BusLogic 54x (Adaptec AHA-154x clones)
- BusLogic 445, 74x, 9xx (but not the new `FlashPoint' series
of BusLogic SCSI adapters)
- Qlogic ISP [12]0x0 SCSI/FibreChannel boards
- Seagate/Future Domain ISA SCSI adapter cards
o ST01/02
o Future Domain TMC-885
o Future Domain TMC-950
- Symbios Logic (NCR) 53C8xx-based PCI SCSI host adapters
o Acculogic PCIpport
o ASUS SC-200 (requires NCR BIOS on motherboard to boot
from disks)
o ASUS SC-875
o ASUS SP3[G] motherboard onboard SCSI
o DEC Celebris XL/590 onboard SCSI
o Diamond FirePort 40
o Lomas Data SCSI adapters
o NCR/SYM 8125 (and its many clones; be careful, some of
these cards have a jumper to set the PCI interrupt;
leave it on INT A!)
o Promise DC540 (a particularly common OEM model of the
SYM 8125)
o Tekram DC-390U/F
o Tyan Yorktown
- Symbios Logic (NCR) 5380/53C400-based ISA SCSI host
adapters [*]
- Ultrastor 14f, 34f, and (possibly) 24f
- Western Digital WD7000 SCSI and TMC-7000 host adapters (ISA
cards only)
o MDA, CGA, VGA, SVGA, and HGC Display Adapters.
Note: Not all of the display adapters NetBSD/i386 can work
with are supported by X. See the XFree86 FAQ for more
information.
o Serial ports
- 8250/16450-based ports
- 16550/16650/16750-based ports
- AST-style 4-port serial cards [*]
- BOCA 8-port serial cards [*]
- BOCA 6-port (ioat) serial cards [*]
- IBM PC-RT 4-port serial cards [*]
- TCOM TC-400 (4-port), TC-800 (8-port) serial cards [*]
- Single-port Hayes ESP serial cards [*]
- Cyclades Cyclom-Y serial cards [*] [+]
- Addonics FlexPort 8S 8-port serial cards [*]
- Byte Runner Technologies TC-400 and TC-800 serial cards [*]
- PCI universal communication cards
o Parallel ports. [*] [+]
o Ethernet adapters
- AMD LANCE and PCnet-based ISA Ethernet adapters [*]
o Novell NE1500T
o Novell NE2100
o Kingston 21xx
o Digital EtherWORKS II ISA adapters (DE200/DE201/DE202)
- AMD LANCE and PCnet-based MCA Ethernet adapters [m]
o SKNET Personal
o SKNET MC+
- AMD PCnet-based PCI Ethernet adapters
o Addtron AE-350
o BOCALANcard/PCI
o SVEC FD0455
o X/Lan Add-On Adapter
o IBM #13H9237 PCI Ethernet Adapter
- ATT StarLAN 10, EN100, and StarLAN Fiber
- 3COM 3c501
- 3COM 3c503
- 3COM 3c505 [*]
- 3COM 3c507
- 3COM 3c509, 3c579, 3c589, and 3c59X
- 3COM 3c523 EtherLink/MC [m]
- 3COM 3c529 EtherLink III [m]
- 3COM 3c90X (including 3c905B), 3c450, 3c55X, 3c575, 3c980,
3cSOHO100
- Digital DC21x4x-based PCI Ethernet adapters
o Accton EN2242
o ASUS PCI-DEC100TX+
o Cogent EM1X0, EM960 (a.k.a. Adaptec ANA-69XX)
o Cogent EM964 [b]
o Cogent EM4XX [b]
o Compex Readylink PCI
o DANPEX EN-9400P3
o Digital Celebris GL, GLST on-board ethernet
o DEC (Digital) PCI Ethernet/Fast Ethernet adapters (all)
o DLINK DFE500-TX
o JCIS Condor JC1260
o Linksys PCI Fast Ethernet
o SMC EtherPower 10, 10/100 (PCI only!)
o SMC EtherPower^2 [b]
o Sundance ST-201 based ethernet adapters (including
DLINK DFE550-TX and DFE580-TX)
o SVEC PN0455
o SVEC FD1000-TP
o Znyx ZX34X
- Digital EtherWORKS III ISA adapters (DE203/DE204/DE205) [*]
- Digital DEPCM-BA (PCMCIA) and DE305 (ISA) NE2000-compatible
cards
- BICC Isolan [* and not recently tested]
- Efficient Networks EN-155 and Adaptec AIC-590x ATM inter-
faces
- Essential Communications Hippi (800 Mbit/s)
- Fujitsu MB86960A/MB86965A based cards
o Fujitsu FMV-180 series
o Allied-Telesis AT1700 series
o Allied-Telesis AT1700 series MCA [m]
o Allied-Telesis RE2000 series
- Intel EtherExpress 16
- Intel EtherExpress PRO/10
- Intel EtherExpress 100 Fast Ethernet adapters
- Intel Intel PRO/1000 Gigabit Ethernet adapters
- Novell NE1000, NE2000 (ISA, PCI, PCMCIA, ISA PnP)
- Realtek 8129/8139 based boards
- Realtek 8139C+/8169/8169S/8110S based boards
- SMC/WD 8003, 8013, and the SMC `Elite16' ISA boards
- SMC/WD 8003, 8013 and IBM PS/2 Adapter/A MCA boards [m]
- SMC/WD 8216 (the SMC `Elite16 Ultra' ISA boards)
- SMC 91C9x-based boards (ISA and PCMCIA)
- SMC EPIC/100 Fast Ethernet boards
o SMC Etherpower-II
- Texas Instruments ThunderLAN based ethernet boards
o Compaq Netelligent 10/100 TX
o Compaq ProLiant Integrated Netelligent 10/100 TX
o Compaq Netelligent 10 T (untested)
o Compaq Integrated NetFlex 3/P
o Compaq NetFlex 3/P in baseboard variant (the PCI vari-
ant doesn't use the same chip!)
o Compaq Dual Port Netelligent 10/100 TX
o Compaq Deskpro 4000 5233MMX (untested)
o Texas Instruments TravelMate 5000 series laptop docking
station Ethernet board
- VIA VT3043 (Rhine) and VT86C100A (Rhine-II) based ethernet
boards
o D-Link DFE530TX
o FDDI adapters
- Digital DEFPA PCI FDDI adapters [*] [+]
- Digital DEFEA EISA FDDI adapters [*] [+]
o Token-Ring adapters
- IBM Token-Ring Network PC Adapter [+]
- IBM Token-Ring Network PC Adapter II [+]
- IBM Token-Ring Network Adapter/A [+]
- IBM Token-Ring Network 16/4 Adapter [+]
- IBM Token-Ring Network 16/4 Adapter/A [m]
- IBM 16/4 ISA Adapter [+]
- IBM Auto 16/4 Token-Ring ISA Adapter [+]
- 3COM 3C619 TokenLink [+]
- 3COM 3C319 TokenLink Velocity [+]
o Wireless network adapters
- 3Com AirConnect Wireless LAN
- ATT/Lucent/Agere WaveLAN/ORiNOCO IEEE (802.11) PCMCIA cards
- Aironet 4500/4800 and Cisco 340 series PCMCIA cards
- BayStack 650 802.11FH PCMCIA cards [*] [+]
- Corega Wireless LAN PCC-11 cards [*] [+]
- DEC/Cabletron RoamAbout 802.11 DS High Rate cards [*] [+]
- ELSA AirLancer MC-11 card [*] [+]
- Intersil Prism II
- Melco AIR CONNECT WLI-PCM-L11 cards [*] [+]
- NetWave AirSurfer PCMCIA cards [*] [+]
o High Speed Serial
- LAN Media Corporation SSI/LMC10000 (up to 10 Mbps) [*] [+]
- LAN Media Corporation HSSI/LMC5200 [*] [+]
- LAN Media Corporation DS3/LMC5245 [*] [+]
o Tape drives
- Most SCSI tape drives
- Seagate and OnStream ATAPI tape drives, possibly others
- QIC-02 and QIC-36 format (Archive- and Wangtek- compatible)
tape drives [*] [+]
o CD-ROM drives
- Non-IDE Mitsumi CD-ROM drives [*] [+]
Note: The Mitsumi driver device probe is known to cause
trouble with several devices!
- Most SCSI CD-ROM drives
- Most ATAPI CD-ROM drives.
Note: Some low-priced IDE CD-ROM drives are known for
being not or not fully ATAPI compliant, and thus
require some hack (generally an entry to a quirk ta-
ble) to work with NetBSD.
o Mice
- ``Logitech'' -style bus mice [*] [+]
- Microsoft-style bus mice [*] [+]
- ``PS/2'' -style mice [*] [+]
- Serial mice (no kernel support necessary)
o Sound Cards
- Aria based sound cards [*]
- Cirrus Logic CS461x, CS4280 and CS4281 audio [*] [+]
- Ensoniq AudioPCI [*] [+]
- ESS Technology ESS 1688 Audiodrive,
ES1777/1868/1869/1887/1888/888, Maestro 1/2/2E and Solo-1
ES1938/1946 [*] [+]
- Gravis Ultrasound Plug and Play [*] [+]
- Gravis Ultrasound and Ultrasound Max [*] [+]
- NeoMagic MagicMedia 256AV / 256ZX AC'97 audio [*] [+]
- Personal Sound System [*] [+]
- ProAudio Spectrum [*] [+]
- S3 SonicVibes [*] [+]
- SoundBlaster, SoundBlaster Pro, SoundBlaster 16 [*] [+]
- VIA VT82C686A southbridge integrated AC97 audio [*] [+]
- Windows Sound System [*] [+]
- Yamaha YMF724/740/744/754 audio (DS-1 series) [*] [+]
- Yamaha OPL3-SA3 audio [*] [+]
o Game Ports (Joysticks) [*] [+]
o Miscellaneous
- Advanced power management (APM) [*]
o Universal Serial Bus (USB)
- UHCI host controllers [*] [+]
- OHCI host controllers [*] [+]
- Hubs [*] [+]
- Keyboards using the boot protocol [*] [+]
- Mice [*] [+]
- Printers [*] [+]
- Modems using Abstract Control Model [*] [+]
- Generic support for HID devices [*] [+]
- Ethernet adapters [*] [+]
- Audio devices [*] [+]
- driver for FTDI based serial adapters [*] [+]
- Mass storage devices such as disks, ZIP drives and digital
cameras [*] [+]
- driver for the Prolific host-to-host adapter [*] [+]
- Handspring Visor driver [*] [+]
o PCMCIA Controllers.
ISA, PCI, and ISA Plug and Play attachments
- Intel 82365 PCIC, rev 0 and rev 1
- Cirrus PD6710
- Cirrus PD672X
Note: This will work with most laptops as well as with ISA
cards which provide PCMCIA slots for desktops.
o RAID Controllers
- 3ware Escalade family of controllers
- Compaq Integrated Array (PCI) [b]
- Compaq IAES (EISA)
- Compaq IDA, IDA-2 (EISA)
- Compaq Smart Array 221, 3100ES, 3200, 4200, 4250ES (PCI)
[b]
- Compaq Smart Array 431, RAID LC2 [b]
- Compaq SMART 2, 2/E (EISA)
- Compaq SMART 2/E, 2/P, 2DH, 2SL (PCI) [b]
- DELL RAID controllers
o PERC 2/SC
o PERC 2/DC
o PERC 4/Di
o PERC 4/SC
o PERC 4e/Si
o CERC 1.5
- DPT SCSI RAID boards (ISA [*], EISA and PCI)
o SmartCache III
o SmartCache IV
o SmartRAID III
o SmartRAID IV
Specific driver footnotes:
[*] Drivers are not present in kernels on the distribution floppies.
Except as noted above, all drivers are present on all disks. Also,
at the present time, the distributed kernels support only one SCSI
host adapter per machine. NetBSD normally allows more, though, so
if you have more than one, you can use all of them by compiling a
custom kernel once NetBSD is installed.
[+] Support is included in the GENERIC kernels, although it is not in
the kernels which are on the distribution floppies.
[b] Devices require BIOS support for PCI-PCI bridging on your mother-
board. Most reasonably modern Pentium motherboards have this sup-
port, or can acquire it via a BIOS upgrade.
[m] Devices are only supported by MCA-enabled kernels.
Unsupported devices
Hardware the we do not currently support, but get many questions about:
o PCI WD-7000 SCSI host adapters.
o QIC-40 and QIC-80 tape drives. (Drives that connect to the
floppy disk controller.)
We are planning future support for many of these devices.
Required configurations
To be detected by the distributed kernels, the devices must be configured
as follows:
Device Name Port IRQ DRQ Misc
------ ---- ---- --- --- ----
Serial ports com0 0x3f8 4 [8250/16450/16550/clones]
com1 0x2f8 3 [8250/16450/16550/clones]
com2 0x3e8 5 [8250/16450/16550/clones]
Parallel ports lpt0 0x378 7 [interrupt-driven or polling]
lpt1 0x278 [polling only]
lpt2 0x3bc [polling only]
Floppy controller
fdc0 0x3f0 6 2 [supports two disks]
AHA-154x, AHA-174x (in compatibility mode), or BT-54x SCSI host adapters
aha0 0x330 any any
aha1 0x334 any any
AHA-174x SCSI host adapters (in enhanced mode)
ahb0 any any any
AHA-152x, AIC-6260- or AIC-6360-based SCSI host adapters
aic0 0x340 11 6
AHA-2X4X or AIC-7xxx-based SCSI host adapters [precise list: see NetBSD
ahc0 any any any System Requirements and
Supported Devices]
AdvanSys ABP-9x0[U][A] SCSI host adapters
adv0 any any any
AdvanSys ABP-940UW[68], ABP-970UW[68], ASB3940UW-00 SCSI host adapters
adw0 any any any
AMD PCscsi-PCI based SCSI host adapters
pcscp0 any any any
BusLogic BT445, BT74x, or BT9xx SCSI host adapters
bha0 0x330 any any
bha1 0x334 any any
Seagate/Future Domain SCSI
sea0 any 5 any iomem 0xd8000
Symbios Logic/NCR 53C8xx, 53c1010 and 53c1510D based PCI SCSI host adapters
siop0 any any any
esiop0 any any any
Ultrastor 14f, 24f (if it works), or 34f SCSI host adapters
uha0 0x330 any any
uha1 0x340 any any
Western Digital WD7000 based ISA SCSI host adapters
wds0 0x350 15 6
wds1 0x358 11 5
PCI IDE hard disk controllers
pciide0 any any any [supports four devices]
MFM/ESDI/IDE/RLL hard disk controllers
wdc0 0x1f0 14 [supports two devices]
wdc1 0x170 15 [supports two devices]
ATA disks wd0, wd1, ...
SCSI and ATAPI disks sd0, sd1, ...
SCSI tapes st0, st1, ...
SCSI and ATAPI CD-ROMs cd0, cd1, ...
For each SCSI and IDE controller found, the SCSI or ATA(PI) devices
present on the bus are probed in increasing ID order for SCSI and
master/slave order for ATA(PI). So the first SCSI drive found will
be called sd0, the second sd1, and so on ...
StarLAN cards
ai0 0x360 7 any iomem 0xd0000
FMV-180 series cards
fmv0 0x2a0 any
AT1700 cards
ate0 0x2a0 any
Intel EtherExpress/16 cards
ix0 0x300 10
Intel EtherExpress PRO 10 ISA cards
iy0 0x360 any
CS8900 Ethernet cards
cs0 0x300 any any
3Com 3c501 Ethernet cards
el0 0x300 9
3Com 3c503 Ethernet cards
ec0 0x250 9 iomem 0xd8000
3Com 3c505 Ethernet cards
eg0 0x280 9
3Com 3c507 Ethernet cards
ef0 0x360 7 iomem 0xd0000
Novell NE1000, or NE2000 Ethernet boards
ne0 0x280 9
ne1 0x300 10
Novell NE2100 Ethernet boards
ne2 0x320 9 7
BICC IsoLan cards
ne3 0x320 10 7
SMC/WD 8003, 8013, Elite16, and Elite16 Ultra Ethernet boards
we0 0x280 9 iomem 0xd0000
we1 0x300 10 iomem 0xcc000
3COM 3c509 or 3COM 3c579 Ethernet boards
ep0 any any
3COM 3x59X PCI Ethernet boards
ep0 any any [you must assign an interrupt in your
PCI BIOS, or let it do so for you]
3COM 3x90X PCI Ethernet boards
ex0 any any [you must assign an interrupt in your
PCI BIOS, or let it do so for you]
Intel EtherExpress PRO 10 ISA
iy0 0x360 any
Intel EtherExpress 100 Fast Ethernet adapters
fxp0 any any [you must assign an interrupt in your
PCI BIOS, or let it do so for you]
SMC91C9x based Ethernet cards
sm0 0x300 10
PCnet-PCI based Ethernet boards; see above for partial list
le0 any any [you must assign an interrupt in your
PCI BIOS, or let it do so for you]
DC21x4x based Ethernet boards; see above for partial list
de0 any any [you must assign an interrupt in your
PCI BIOS, or let it do so for you]
Digital EtherWORKS III (DE203/DE204/DE205) LEMAC
lc0 0x320 any
Qlogic ISP [12]0x0 SCSI/FibreChannel boards
isp0 any any
Efficient Networks EN-155 and Adaptec AIC-590x ATM interfaces
en0 any any
SMC EPIC/100 Fast Ethernet boards
epic0 any any
Texas Instruments ThunderLAN based ethernet boards
tl0 any any
VIA VT3043(Rhine) and VT86C100A(Rhine-II) based ethernet boards
vr0 any any
IBM TROPIC based Token-Ring cards
tr0 0xa20 any iomem 0xd8000
tr1 0xa24 any iomem 0xd0000
tr2 any any
Getting the NetBSD System on to Useful Media
If you are not booting off a CD-ROM, you will need to have some floppy
disks to boot off; either two 1.44 MB floppies or one 1.2 MB floppy.
For laptops that have cardbus slots, you should use the bootlap1.fs and
bootlap2.fs floppy images.
For older machines with little RAM, use boot-tiny.fs. This image is tai-
lored towards old, small-memory systems, and thus does not contain any
PCI or SCSI support. It should work on systems with 4M of RAM. Note
that this means 4M available to NetBSD; systems that are said to have 4M
may have 640k of base memory and 3072k of extended memory, which cur-
rently will not work, as this is a total of 3712k.
For old machines that may have EISA, SCSI and more RAM, but only have a
1.2M floppy drive, use boot-small1.fs and boot-small2.fs.
For old IBM PS/2 machines with MCA, use boot-ps2-1.fs and boot-ps2-2.fs
floppy images.
For all other systems, use boot1.fs and boot2.fs
For the 2-floppy sets (and the CD boot image), utilities to repair a
badly crashed systems are included. The boot-tiny.fs image has a sepa-
rate rescue-tiny.fs rescue floppy image because of lack of space.
If you are using a UNIX -like system to write the floppy images to disks,
you should use the dd command to copy the file system image(s) (.fs file)
directly to the raw floppy disk. It is suggested that you read the dd(1)
manual page or ask your system administrator to determine the correct set
of arguments to use; it will be slightly different from system to system,
and a comprehensive list of the possibilities is beyond the scope of this
document.
If you are using MS-DOS to write the floppy image(s) to floppy disk, you
should use the rawrite utility, provided in the i386/installation/misc
directory of the NetBSD distribution. It will write a file system image
(.fs file) to a floppy disk. A rawrite32 is also available that runs
under MS Windows.
Note that if you are installing or upgrading from a writable media, the
media can be write-protected if you wish. These systems mount a root
image from inside the kernel, and will not need to write to the media.
If you booted from a floppy, the floppy disk may be removed from the
drive after the system has booted.
Installation is supported from several media types, including:
o CD-ROM / DVD
o MS-DOS floppy
o FTP
o Remote NFS partition
o Existing NetBSD partitions, if performing an upgrade
The steps necessary to prepare the distribution sets for installation
depend upon which installation medium you choose. The steps for the var-
ious media are outlined below.
CD-ROM / DVD Find out where the distribution set files are on the CD-
ROM or DVD. Likely locations are binary/sets and
i386/binary/sets.
Proceed to the instruction on installation.
MS-DOS floppy NetBSD doesn't include split sets to keep the distribution
size down. They can be created on a seperate machine
using the split(1) command, running e.g. split -b 235k
base.tgz base. to split the base.tgz file from
i386/binary/sets into files named base.aa, base.ab, and so
on. Repeat this for all set_name.tgz files, splitting them
into set_name.xx files. Count the number of set_name.xx
files that make up the distribution sets you want to
install or upgrade. You will need one fifth that number
of 1.2 MB floppies, or one sixth that number of 1.44 MB
floppies. You should only use one size of floppy for the
install or upgrade procedure; you can't use some 1.2 MB
floppies and some 1.44 MB floppies.
Format all of the floppies with MS-DOS. Do not make any
of them bootable MS-DOS floppies, i.e. don't use format /s
to format them. (If the floppies are bootable, then the
MS-DOS system files that make them bootable will take up
some space, and you won't be able to fit the distribution
set parts on the disks.) If you're using floppies that
are formatted for MS-DOS by their manufacturers, they
probably aren't bootable, and you can use them out of the
box.
Place all of the set_name.xx files on the MS-DOS disks.
Once you have the files on MS-DOS disks, you can proceed
to the next step in the installation or upgrade process.
If you're installing NetBSD from scratch, go to the sec-
tion on preparing your hard disk, below. If you're
upgrading an existing installation, go directly to the
section on upgrading.
FTP The preparations for this installation/upgrade method are
easy; all you need to do is make sure that there's an FTP
site from which you can retrieve the NetBSD distribution
when you're about to install or upgrade. If you don't
have DHCP available on your network, you will need to know
the numeric IP address of that site, and, if it's not on a
network directly connected to the machine on which you're
installing or upgrading NetBSD, you need to know the
numeric IP address of the router closest to the NetBSD
machine. Finally, you need to know the numeric IP address
of the NetBSD machine itself. If you don't have access to
a functioning nameserver during installation, the IPv4
address of ftp.NetBSD.org is 204.152.184.75 and the IPv6
address is 2001:4f8:4:7:2e0:81ff:fe21:6563 (as of June,
2004).
Once you have this information, you can proceed to the
next step in the installation or upgrade process. If
you're installing NetBSD from scratch, go to the section
on preparing your hard disk, below. If you're upgrading
an existing installation, go directly to the section on
upgrading.
Note: This method of installation is recommended for
those familiar with using BSD network configuration
and management commands. If you aren't, this docu-
mentation should help, but is not intended to be
all-encompassing.
NFS Place the NetBSD distribution sets you wish to install
into a directory on an NFS server, and make that directory
mountable by the machine on which you are installing or
upgrading NetBSD. This will probably require modifying
the /etc/exports file on of the NFS server and resetting
its mount daemon (mountd). (Both of these actions will
probably require superuser privileges on the server.)
You need to know the numeric IP address of the NFS server,
and, if you don't have DHCP available on your network and
the server is not on a network directly connected to the
machine on which you're installing or upgrading NetBSD,
you need to know the numeric IP address of the router
closest to the NetBSD machine. Finally, you need to know
the numeric IP address of the NetBSD machine itself.
Once the NFS server is set up properly and you have the
information mentioned above, you can proceed to the next
step in the installation or upgrade process. If you're
installing NetBSD from scratch, go to the section on pre-
paring your hard disk, below. If you're upgrading an
existing installation, go directly to the section on
upgrading.
Note: This method of installation is recommended for
those already familiar with using BSD network con-
figuration and management commands. If you aren't,
this documentation should help, but is not intended
to be all-encompassing.
Preparing your System for NetBSD installation
First and foremost, before beginning the installation process, make sure
you have a reliable backup of any data on your hard disk that you wish to
keep. Mistakes in partitioning your hard disk may lead to data loss.
Before you begin, you should be aware of the geometry issues that may
arise in relation to your hard disk. First of all, you should know about
sector size. You can count on this to be 512 bytes; other sizes are rare
(and currently not supported). Of particular interest are the number of
sectors per track, the number of tracks per cylinder (also known as the
number of heads), and the number of cylinders. Together they describe
the disk geometry.
The BIOS has a limit of 1024 cylinders and 63 sectors per track for doing
BIOS I/O. This is because of the old programming interface to the BIOS
that restricts these values. Most of the big disks currently being used
have more than 1024 real cylinders. Some have more than 63 sectors per
track. Therefore, the BIOS can be instructed to use a fake geometry that
accesses most of the disk and the fake geometry has less than or equal to
1024 cylinders and less than or equal to 63 sectors. This is possible
because the disks can be addressed in a way that is not restricted to
these values, and the BIOS can internally perform a translation. This
can be activated in most modern BIOSes by using Large or LBA mode for the
disk.
NetBSD does not have the mentioned limitations with regard to the geome-
try. However, since the BIOS has to be used during startup, it is impor-
tant to know about the geometry the BIOS uses. The NetBSD kernel should
be on a part of the disk where it can be loaded using the BIOS, within
the limitations of the BIOS geometry. The install program will check
this for you, and will give you a chance to correct this if this is not
the case.
If you have not yet installed any other systems on the hard disk that you
plan to install NetBSD on, or if you plan to use the disk entirely for
NetBSD, you may wish to check your BIOS settings for the `Large' or `LBA'
modes, and activate them for the hard disk in question. While they are
not needed by NetBSD as such, doing so will remove the limitations men-
tioned above, and will avoid hassle should you wish to share the disk
with other systems. Do not change these settings if you already have
data on the disk that you want to preserve!
In any case, it is wise to check your the BIOS settings for the hard disk
geometry before beginning the installation, and write them down. While
this should usually not be needed, it enables you to verify that the
install program determines these values correctly.
The geometry that the BIOS uses will be referred to as the BIOS geometry,
the geometry that NetBSD uses is the real geometry.
sysinst, the NetBSD installation program, will try to discover both the
real geometry and BIOS geometry.
It is important that sysinst know the proper BIOS geometry to be able to
get NetBSD to boot, regardless of where on your disk you put it. It is
less of a concern if the disk is going to be used entirely for NetBSD.
If you intend to have several OSes on your disk, this becomes a much
larger issue.
Installing the NetBSD System
Running the sysinst installation program
1. Introduction
Using sysinst, installing NetBSD is a relatively easy process. You
still should read this document and have it in hand when doing the
installation process. This document tries to be a good guideline
for the installation and as such covers many details for the sake of
completeness. Do not let this discourage you; the install program
is not hard to use.
2. Possible PCMCIA issues
Machines with PCMCIA slots may have problems during installation.
If you do not have PCMCIA on your machine (PCMCIA is only really
used on laptop machines), you can skip this section, and ignore the
``[PCMCIA]'' notes. If you do have PCMCIA in your machine, you can
safely ignore this section and the ``[PCMCIA]'' the first time, as
you are likely to not have problems. Should troubles occur during
floppy boot, they may be PCMCIA specific. You should then re-read
this section and try again, following the instructions in the
``[PCMCIA]'' notes.
This section explains how to work around the installation problem.
The kernel keeps careful track of what interrupts and I/O ports are
in use during autoconfiguration. It then allows the PCMCIA devices
to pick unused interrupts and I/O ports. Unfortunately, the INSTALL
kernel may not detect all devices in your system. This may be
because the INSTALL kernel only supports the minimum set of devices
to install NetBSD on your system, or it may be that NetBSD does not
have support for the device causing the conflict.
For example, suppose your laptop has a soundblaster device built in;
the INSTALL kernel has no sound support. The PCMCIA code might
allocate your soundblaster's IRQ and I/O ports to PCMCIA devices,
causing them not to work, or to lock up the system. This is espe-
cially bad if one of the devices in question is your ethernet card.
The kernel attempts to probe for available interrupts that are
usable by the PCIC (PCMCIA interrupt controller), which should alle-
viate interrupt conflicts; however, I/O port conflicts are still
possible.
This problem will impact some, but not all, users of PCMCIA. If
this problem is affecting you, watch the ``[PCMCIA]'' notes that
will appear in this document.
It can be difficult to distinguish an interrupt conflict from an I/O
space conflict. There are no hard-and-fast rules, but interrupt
conflicts are more likely to lock up the machine, and I/O space con-
flicts are more likely to result in misbehavior (e.g. a network card
that cannot send or receive packets).
The kernel selects a free interrupt according to a mask of allowable
interrupts, stored in the kernel global variable
pcic_isa_intr_alloc_mask. This mask is a logical-or of power-of-2s
of allowable interrupts:
IRQ Val IRQ Val IRQ Val IRQ Val
0 0x0001 4 0x0010 8 0x0100 12 0x1000
1 0x0002 5 0x0020 9 0x0200 13 0x2000
2 0x0004 6 0x0040 10 0x0400 14 0x4000
3 0x0008 7 0x0080 11 0x0800 15 0x8000
For example, 0x0a00 allows both IRQ 9 and IRQ 11. By default, the
INSTALL kernel permits all IRQs other than IRQs 5 and 7, so the cor-
responding mask is 0xff5f. The GENERIC kernel, however, allows all
IRQs. (The presumption here is that IRQ 10 may be assigned to a
device that the GENERIC kernel supports, but that the INSTALL does
not.) Because of support for interrupt probing, it is no longer
necessary to exclude IRQs 3 and 5 explicitly; if they are in use,
they should not be assigned to PCMCIA.
The kernel selects IO space by assigning cards IO space within a
predefined range. The range is specified as a base and size, speci-
fied by the kernel global variables pcic_isa_alloc_iobase and
pcic_isa_alloc_iosize. For systems with 12-bit addressing (most
systems), the kernel defaults to a base of 0x400 and a size of 0xbff
(a range of 0x400-0xfff). For systems with 10-bit addressing, the
kernel defaults to a base of 0x300 and a size of 0xff (range of
0x300-0x3ff).
Unfortunately, these ranges may conflict with some devices. In the
event of a conflict, try a base of 0x330 with a size of 0x0bf (range
of 0x330-0x3ff).
In order to work around this at installation time, you may interrupt
the 5 second countdown when booting the INSTALL kernel, and use boot
-d, in order to enter ddb(4) (the in-kernel debugger), and then use
the write command to alter the variable values:
db write pcic_isa_intr_alloc_mask 0x0a00
pcic_isa_intr_alloc_mask 0xff5f = 0xa00
db write pcic_isa_alloc_iobase 0x330
pcic_isa_alloc_iobase 0x400 = 0x330
db write pcic_isa_alloc_iosize 0x0bf
pcic_isa_alloc_iosize 0xbff = 0xbf
db continue
Note that, since some floppy images may not have symbol information
in the kernel, you may have to consult the matching .symbols file in
the binary/kernel directory in the installation tree. Find the
pcic_ symbols used above, look at the hexadecimal value in the first
column, and write, for example (if pcic_isa_intr_alloc_mask is equal
to c0513e3c):
db write 0xc0513e3c 0x0a00
After installation, this value can be permanently written to the
kernel image directly with:
# cp /netbsd /netbsd.bak
# gdb --write /netbsd
(gdb) set pcic_isa_intr_alloc_mask=0x0a00
(gdb) set pcic_isa_alloc_iobase=0x330
(gdb) set pcic_isa_alloc_iosize=0x0bf
(gdb) quit
#
or you could specify these value when configuring your kernel, e.g.:
options PCIC_ISA_INTR_ALLOC_MASK=0x0a00
options PCIC_ISA_ALLOC_IOBASE=0x330
options PCIC_ISA_ALLOC_IOSIZE=0x0bf
If you can get your PCMCIA card to work using this hack, you may
also ignore the [PCMCIA] notes later in this document.
We hope to provide a more elegant solution to this problem in a
future NetBSD release.
3. General
The following is a walk-through of the steps you will take while
getting NetBSD installed on your hard disk. sysinst is a menu
driven installation system that allows for some freedom in doing the
installation. Sometimes, questions will be asked and in many cases
the default answer will be displayed in brackets (``[ ]'') after the
question. If you wish to stop the installation, you may press
CONTROL-C at any time, but if you do, you'll have to begin the
installation process again from scratch by running the /sysinst pro-
gram from the command prompt. It is not necessary to reboot.
4. Quick install
First, let's describe a quick install. The other sections of this
document go into the installation procedure in more detail, but you
may find that you do not need this. If you want detailed instruc-
tions, skip to the next section. This section describes a basic
installation, using a CD-ROM install as an example.
o What you need.
- The distribution sets (in this example, they are on CD).
- Two 1.44 MB 3.5" floppy disks if the CD is not bootable or
if you cannot boot from CD.
- A PC with a 386 or newer processor.
- A CD-ROM drive (SCSI or ATAPI), a hard disk and a minimum of
4 MB of memory installed.
- The hard disk should have at least 200 + n megabytes of
space free, where n is the number of megabytes of main mem-
ory in your system. If you wish to install the X Window
System as well, you will need at least 120 MB more.
o Creating the boot floppies. You can create the floppies needed
for installation under MS-DOS or Windows. Supposing your 1.44
MB floppy drive is drive A:, and your CD is drive E: do the fol-
lowing from an MS-DOS command prompt:
e:
cd \NetBSD-2.1\i386\installation\misc
rawrite
When asked for a source filename, answer
..\floppy\boot1.fs
for the first diskette and
..\floppy\boot2.fs
for the second diskette.
When asked for a destination drive answer `a'.
o To create a bootfloppy under NetBSD or other UNIX -like system,
you would type something like:
# dd if=.../boot1.fs bs=18k of=/dev/rfd0a
o The Quick Installation
- Insert the first boot floppy you just created. Restart the
computer. When prompted, insert the second boot floppy.
After language selection, the main menu will be displayed.
.***********************************************.
* NetBSD-2.0 Install System *
* *
*a: Install NetBSD to hard disk *
* b: Upgrade NetBSD on a hard disk *
* c: Re-install sets or install additional sets *
* d: Reboot the computer *
* e: Utility menu *
* x: Exit Install System *
.***********************************************.
- If you wish, you can configure some network settings immedi-
ately by choosing the Utility menu and then Configure
network. It isn't actually required at this point, but it
may be more convenient. Go back to the main menu.
- Choose install.
- You will be guided through some steps regarding the setup of
your disk, and the selection of distributed components to
install. When in doubt, refer to the rest of this document
for details.
- After your disk has been prepared, choose CD-ROM as the
medium. The default values for the path and device should
be ok.
- After all the files have been unpacked, go back to the main
menu and select reboot, after you have removed the boot-
floppy from the drive.
- NetBSD will now boot. If you haven't already done so in
sysinst, you should log in as root, and set a password for
that account. You are also advised to edit the file
/etc/rc.conf to match your system needs.
- Your installation is now complete.
- For configuring the X window system, if installed, see the
files in /usr/X11R6/lib/X11/doc. Further information can be
found on http://www.xfree86.org/.
5. Booting NetBSD
[PCMCIA] Unplug your PCMCIA devices, so that they won't be found
by NetBSD.
Boot your machine. The boot loader will start, and will print a
countdown and begin booting.
If the boot loader messages do not appear in a reasonable amount of
time, you either have a bad boot floppy or a hardware problem. Try
writing the install floppy image to a different disk, and using
that.
If that doesn't work, try booting after disabling your CPU's inter-
nal and external caches (if any). If it still doesn't work, NetBSD
probably can't be run on your hardware. This can probably be con-
sidered a bug, so you might want to report it. If you do, please
include as many details about your system configuration as you can.
It will take a while to load the kernel from the floppy, probably
around a minute or so, then, the kernel boot messages will be dis-
played. This may take a little while also, as NetBSD will be prob-
ing your system to discover which hardware devices are installed.
You may want to read the boot messages, to notice your disk's name
and geometry. Its name will be something like sd0 or wd0 and the
geometry will be printed on a line that begins with its name. As
mentioned above, you may need your disk's geometry when creating
NetBSD 's partitions. You will also need to know the name, to tell
sysinst on which disk to install. The most important thing to know
is that wd0 is NetBSD 's name for your first IDE disk, wd1 the sec-
ond, etc. sd0 is your first SCSI disk, sd1 the second, etc.
Note that once the system has finished booting, you need not leave
the floppy in the disk drive.
Once NetBSD has booted and printed all the boot messages, you will
be presented with a welcome message and a main menu. It will also
include instructions for using the menus.
6. Network configuration
[PCMCIA] You can skip this section, as you will only get data
from floppy in the first part of the install.
If you will not use network operation during the installation, but
you do want your machine to be configured for networking once it is
installed, you should first go to the Utility menu, and select the
Configure network option. If you only want to temporarily use net-
working during the installation, you can specify these parameters
later. If you are not using the Domain Name System (DNS), you can
give an empty response in reply to answers relating to this.
7. Installation drive selection and parameters
To start the installation, select Install NetBSD to hard disk from
the main menu.
The first thing is to identify the disk on which you want to install
NetBSD. sysinst will report a list of disks it finds and ask you
for your selection. Depending on how many disks are found, you may
get a different message. You should see disk names like wd0, wd1,
sd0 or sd1.
sysinst next tries to figure out the real and BIOS geometry of your
disk. It will present you with the values it found, if any, and
will give you a chance to change them.
Next, depending on whether you are using a wdX or sdX disk, you will
either be asked for the type of disk (wdX) you are using or you will
be asked if you want to specify a fake geometry for your SCSI disk
(sdX). The types of disk are IDE, ST-506 or ESDI. If you're
installing on an ST-506 or ESDI drive, you'll be asked if your disk
supports automatic sector forwarding. If you are sure that it does,
reply affirmatively. Otherwise, the install program will automati-
cally reserve space for bad144 tables.
8. Partitioning the disk
o Which portion of the disk to use.
You will be asked if you want to use the entire disk or only
part of the disk. If you decide to use the entire disk for
NetBSD, it will be checked if there are already other systems
present on the disk, and you will be asked to confirm whether
you want to overwrite these.
If you want to use the entire disk for NetBSD, you can skip the fol-
lowing section and go to Editing the NetBSD disklabel.
9. Editing the Master Boot Record
First, you will be prompted to specify the units of size that you
want to express the sizes of the partitions in. You can either pick
megabytes, cylinders or sectors.
After this, you will be presented with the current values stored in
the MBR, and will be given the opportunity to change, create or
delete partitions. For each partition you can set the type, the
start and the size. Setting the type to unused will delete a parti-
tion. You can also mark a partition as active, meaning that this is
the one that the BIOS will start from at boot time.
Be sure to mark the partition you want to boot from as active!
After you are done editing the MBR, a sanity check will be done,
checking for partitions that overlap. Depending on the BIOS capa-
bilities of your machine and the parameters of the NetBSD partition
you have specified, you may also be asked if you want to install
newer bootcode in your MBR. If you have multiple operating systems
on the disk that you are installing on, you will also be given the
option to install a bootselector, that will allow you to pick the
operating system to start up when your computer is (re-)started.
If everything is ok, you can go on to the next step, editing the
NetBSD disklabel.
10. Editing the NetBSD disklabel
The partition table of the NetBSD part of a disk is called a
disklabel. There are 4 layouts for the NetBSD part of the disk that
you can pick from: Standard, Standard with X, Custom and Use
Existing. The first two use a set of default values (that you can
change) suitable for a normal installation, possibly including X.
With the Custom option you can specify everything yourself. The
last option uses the partition info already present on the disk.
You will be presented with the current layout of the NetBSD diskla-
bel, and given a chance to change it. For each partition, you can
set the type, offset and size, block and fragment size, and the
mount point. The type that NetBSD uses for normal file storage is
called 4.2BSD. A swap partition has a special type called swap.
You can also specify a partition as type MSDOS. This is useful if
you share the disk with MS-DOS or Windows; NetBSD is able to access
the files on these partitions. You can use the values from the MBR
for the MS-DOS part of the disk to specify the partition of type
MSDOS (you don't have to do this now, you can always re-edit the
disklabel to add this once you have installed NetBSD, or use
mbrlabel(8) to help you updating your disklabel with data from the
MBR).
Some partitions in the disklabel have a fixed purpose.
a Root partition (/)
b Swap partition.
c The NetBSD portion of the disk.
d The entire disk.
e-p Available for other use. Traditionally, e is the par-
tition mounted on /usr, but this is historical prac-
tice and not a fixed value.
You will then be asked to name your disk's disklabel. The default
response will be ok for most purposes. If you choose to name it
something different, make sure the name is a single word and con-
tains no special characters. You don't need to remember this name.
11. Preparing your hard disk
You are now at the 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. If you are sure you want to pro-
ceed, enter yes at the prompt.
The install program will now label your disk and make the file sys-
tems you specified. The file systems will be initialized to contain
NetBSD bootstrapping binaries and configuration files. You will see
messages on your screen from the various NetBSD disk preparation
tools that are running. There should be no errors in this section
of the installation. If there are, restart from the beginning of
the installation process. Otherwise, you can continue the installa-
tion program after pressing the return key.
12. Getting the distribution sets
[PCMCIA] Load a kernel tar file (i.e. the kern-GENERIC.tgz set
file) on to your hard disk, for example by mounting the
hard disk first, copying the kern-GENERIC.tgz file from
floppy and unpacking it. Example:
# mount /dev/wd0a /mnt
# cd /mnt
repeat the following 3 steps until all kern.*
files are there
# mount -t msdos /dev/fd0a /mnt2
# cp /mnt2/kern.* .
# umount /mnt2
# cat kern.* | tar zxpvf -
Then halt the machine using the halt command. Power the
machine down, and re-insert all the PCMCIA devices.
Remove any floppy from the floppy drive. Start the
machine up. After booting NetBSD, you will be presented
with the main sysinst menu. Choose the option to re-
install sets. Wait for the file system checks that it
will do to finish, and then proceed as described below.
The NetBSD distribution consists of a number of sets, that come in
the form of gzipped tarfiles. A few sets must be installed for a
working system, others are optional. At this point of the installa-
tion, you will be presented with a menu which enables you to choose
from one of the following methods of installing the sets. Some of
these methods will first load the sets on your hard disk, others
will extract the sets directly.
For all these methods, the first step is making the sets available
for extraction, and then do the actual installation. The sets can
be made available in a few different ways. The following sections
describe each of those methods. After reading the one about the
method you will be using, you can continue to the section labeled
`Extracting the distribution sets'.
13. Installation using ftp
To be able to install using ftp, you first need to configure your
network setup, if you haven't already at the start of the install
procedure. sysinst will do this for you, asking you if you want to
use DHCP, and if not to provide data like IP address, hostname, etc.
If you do not have name service set up for the machine that you are
installing on, you can just press RETURN in answer to these ques-
tions, and DNS will not be used.
You will also be asked to specify the host that you want to transfer
the sets from, the directory on that host, the account name and
password used to log into that host using ftp, and optionally a
proxy server to use. If you did not set up DNS when answering the
questions to configure networking, you will need to specify an IP
address instead of a hostname for the ftp server.
sysinst will proceed to transfer all the default set files from the
remote site to your hard disk.
14. Installation using NFS
To be able to install using NFS, you first need to configure your
network setup, if you haven't already at the start of the install
procedure. sysinst will do this for you, asking you if you want to
use DHCP, and if not to provide data like IP address, hostname, etc.
If you do not have name service set up for the machine that you are
installing on, you can just press RETURN in answer to these ques-
tions, and DNS will not be used.
You will also be asked to specify the host that you want to transfer
the sets from, and the directory on that host that the files are in.
This directory should be mountable by the machine you are installing
on, i.e. correctly exported to your machine.
If you did not set up DNS when answering the questions to configure
networking, you will need to specify an IP address instead of a
hostname for the NFS server.
15. Installation from CD-ROM
When installing from a CD-ROM, you will be asked to specify the
device name for your CD-ROM player (usually cd0), and the directory
name on the CD-ROM where the distribution files are.
sysinst will then check if the files are indeed available in the
specified location, and proceed to the actual extraction of the
sets.
16. Installation from a floppy set
Because the installation sets are too big to fit on one floppy, the
floppies are expected to be filled with the split set files. The
floppies are expected to be in MS-DOS format. You will be asked for
a directory where the sets should be reassembled. Then you will be
prompted to insert the floppies containing the split sets. This
process will continue until all the sets have been loaded from
floppy.
17. Installation from an unmounted file system
In order to install from a local file system, you will need to spec-
ify the device that the file system resides on (for example sd1e)
the type of the file system, and the directory on the specified file
system where the sets are located. sysinst will then check if it
can indeed access the sets at that location.
18. Installation from a local directory
This option assumes that you have already done some preparation
yourself. The sets should be located in a directory on a file sys-
tem that is already accessible. sysinst will ask you for the name
of this directory.
19. Extracting the distribution sets
After the install sets containing the NetBSD distribution have been
made available, you can either extract all the sets (a full instal-
lation), or only extract sets that you have selected. In the latter
case, you will be shown the currently selected sets, and given the
opportunity to select the sets you want. Some sets always need to
be installed (kern, base) and etc they will not be shown in this
selection menu.
Before extraction begins, you can elect to watch the files being
extracted; the name of each file that is extracted will be shown.
This can slow down the installation process considerably, especially
on machines with slow graphics consoles or serial consoles.
After all the files have been extracted, all the necessary device
node files will be created. If you have already configured network-
ing, you will be asked if you want to use this configuration for
normal operation. If so, these values will be installed in the net-
work configuration files. The next menu will allow you to select
the time zone that you're in, to make sure your clock has the right
offset from UTC. Finally you will be asked to select a password
encryption algorithm and can than set a password for the "root"
account, to prevent the machine coming up without access restric-
tions.
20. Finalizing your installation
Congratulations, you have successfully installed NetBSD 2.1. You
can now reboot the machine, and boot NetBSD from hard disk.
Post installation steps
Once you've got the operating system running, there are a few things you
need to do in order to bring the system into a properly configured state,
with the most important ones described below.
1. Configuring /etc/rc.conf
If you or the installation software haven't done any configuration
of /etc/rc.conf (sysinst usually will), the system will drop you
into single user mode on first reboot with the message
/etc/rc.conf is not configured. Multiuser boot aborted.
and with the root file system (/) mounted read-only. When the sys-
tem asks you to choose a shell, simply press RETURN to get to a
/bin/sh prompt. If you are asked for a terminal type, respond with
vt220 (or whatever is appropriate for your terminal type) and press
RETURN. You may need to type one of the following commands to get
your delete key to work properly, depending on your keyboard:
# stty erase '^h'
# stty erase '^?'
At this point, you need to configure at least one file in the /etc
directory. You will need to mount your root file system read/write
with:
# /sbin/mount -u -w /
Change to the /etc directory and take a look at the /etc/rc.conf
file. Modify it to your tastes, making sure that you set
rc_configured=YES so that your changes will be enabled and a multi-
user boot can proceed. Default values for the various programs can
be found in /etc/defaults/rc.conf, where some in-line documentation
may be found. More complete documentation can be found in
rc.conf(5).
If your /usr directory is on a separate partition and you do not
know how to use ed, you will have to mount your /usr partition to
gain access to ex or vi. Do the following:
# mount /usr
# export TERM=vt220
If you have /var on a separate partition, you need to repeat that
step for it. After that, you can edit /etc/rc.conf with vi(1).
When you have finished, type exit at the prompt to leave the single-
user shell and continue with the multi-user boot.
Other values that need to be set in /etc/rc.conf for a networked
environment are hostname and possibly defaultroute, furthermore add
an ifconfig_int for your <int> network interface, along the lines of
ifconfig_de0="inet 123.45.67.89 netmask 255.255.255.0"
or, if you have myname.my.dom in /etc/hosts:
ifconfig_de0="inet myname.my.dom netmask 255.255.255.0"
To enable proper hostname resolution, you will also want to add an
/etc/resolv.conf file or (if you are feeling a little more adventur-
ous) run named(8). See resolv.conf(5) or named(8) for more informa-
tion. Instead of manually configuring network and naming service,
DHCP can be used by setting dhclient=YES in /etc/rc.conf.
Other files in /etc that may require modification or setting up
include /etc/mailer.conf, /etc/nsswitch.conf, and /etc/wscons.conf.
2. Logging in
After reboot, you can log in as root at the login prompt. Unless
you've set a password in sysinst, there is no initial password. If
you're using the machine in a networked environment, you should cre-
ate an account for yourself (see below) and protect it and the
``root'' account with good passwords. By default, root login from
the network is disabled (even via ssh(1)). One way to become root
over the network is to log in as a different user that belongs to
group ``wheel'' (see group(5)) and use su(1) to become root.
Unless you have connected an unusual terminal device as the console
you can just press RETURN when it prompts for Terminal type? [...].
3. Adding accounts
Use the useradd(8) command to add accounts to your system. Do not
edit /etc/passwd directly! See vipw(8) and pwd_mkdb(8) if you want
to edit the password database.
4. The X Window System
If you have installed the X Window System, look at the files in
/usr/X11R6/lib/X11/doc for information.
You will need to set up a configuration file, see
/usr/X11R6/lib/X11/XF86Config.eg for an example. The xf86cfg(1) and
xf86config(1) utilities can interactively create a first version of
such a configuration file for you. See http://www.xfree86.org/ and
the XFree86 manual page for more information.
Don't forget to add /usr/X11R6/bin to your path in your shell's dot
file so that you have access to the X binaries.
5. Installing third party packages
If you wish to install any of the software freely available for UNIX
-like systems you are strongly advised to first check the NetBSD
package system. This automatically handles any changes necessary to
make the software run on NetBSD, retrieval and installation of any
other packages on which the software may depend, and simplifies
installation (and deinstallation), both from source and precompiled
binaries.
o More information on the package system is at
http://www.NetBSD.org/Documentation/software/packages.html
o A list of available packages suitable for browsing is at
ftp://ftp.NetBSD.org/pub/NetBSD/packages/pkgsrc/README.html
o Precompiled binaries can be found at ,:
ftp://ftp.NetBSD.org/pub/NetBSD/packages/
usually in the 2.1/i386/All subdir. You can install them with
the following commands under sh(1):
# PKG_PATH=ftp://ftp.NetBSD.org/pub/NetBSD/packages/2.1/i386/All
# export PKG_PATH
# pkg_add -v tcsh
# pkg_add -v bash
# pkg_add -v perl
# pkg_add -v apache
# pkg_add -v kde
# pkg_add -v mozilla
...
If you are using csh(1) then replace the first two lines with
the following:
# setenv PKG_PATH ftp://ftp.NetBSD.org/pub/NetBSD/packages/2.1/i386/All
...
The above commands will install the Tenex-csh and Bourne Again
shell, the Perl programming language, Apache web server, KDE
desktop environment and the Mozilla web browser as well as all
the packages they depend on.
o Package sources for compiling packages on your own can be
obtained by retrieving the file
ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-current/tar_files/pkgsrc.tar.gz
They are typically extracted into /usr/pkgsrc (though other
locations work fine), with the commands:
# mkdir /usr/pkgsrc
# ( cd /usr/pkgsrc ; tar -zxpf - ) pkgsrc.tar.gz
After extracting, see the README and doc/pkgsrc.txt files in the
extraction directory (e.g. /usr/pkgsrc/README) for more infor-
mation.
6. Misc
o Edit /etc/mail/aliases to forward root mail to the right place.
Don't forget to run newaliases(1) afterwards.
o The /etc/mail/sendmail.cf file will almost definitely need to be
adjusted; files aiding in this can be found in
/usr/share/sendmail. See the README file there for more infor-
mation. If you prefer postfix as MTA, adjust /etc/mailer.conf.
o Edit /etc/rc.local to run any local daemons you use.
o Many of the /etc files are documented in section 5 of the man-
ual; so just invoking
# man 5 filename
is likely to give you more information on these files.
Upgrading a previously-installed NetBSD System
The upgrade to NetBSD 2.1 is a binary upgrade; it can be quite difficult
to update the system from an earlier version by recompiling from source,
primarily due to interdependencies in the various components.
To do the upgrade, you must have the boot floppy set available. You must
also have at least the base and kern binary distribution sets available,
so that you can upgrade with them, using one of the upgrade methods
described above. Finally, you must have sufficient disk space available
to install the new binaries. Since files already installed on the system
are overwritten in place, you only need additional free space for files
which weren't previously installed or to account for growth of the sets
between releases. If you have a few megabytes free on each of your root
(/) and /usr partitions, you should have enough space.
Since upgrading involves replacing the kernel, the boot blocks on your
NetBSD partition, and most of the system binaries, it has the potential
to cause data loss. You are strongly advised to back up any important
data on the NetBSD partition or on another operating system's partition
on your disk before beginning the upgrade process.
The upgrade procedure using the sysinst tool is similar to an installa-
tion, but without the hard disk partitioning. sysinst will attempt to
merge the settings stored in your /etc directory with the new version of
NetBSD. Getting the binary sets is done in the same manner as the
installation procedure; refer to the installation part of the document
for how to do this. Also, some sanity checks are done, i.e. file sys-
tems are checked before unpacking the sets.
After a new kernel has been copied to your hard disk, your machine is a
complete NetBSD 2.1 system. However, that doesn't mean that you're fin-
ished with the upgrade process. You will probably want to update the set
of device nodes you have in /dev. If you've changed the contents of /dev
by hand, you will need to be careful about this, but if not, you can just
cd into /dev, and run the command:
# sh MAKEDEV all
Finally, you will want to delete old binaries that were part of the ver-
sion of NetBSD that you upgraded from and have since been removed from
the NetBSD distribution.
NetBSD/i386 has switched its executable format from the old a.out format
to ELF, the now more commonly used and supported format. Your old bina-
ries will continue to work just fine. The installation procedure will
try to take the necessary steps to accomplish this. The most important
step is to move the old a.out shared libraries in /usr/lib and
/usr/X11R6/lib (if X was installed) to /emul/aout, where they will be
automatically found if an older a.out binary is executed. sysinst will
use an existing /emul and / or /emul/aout directory if available, and
will create it (as a symbolic link to /usr/aout) if necessary.
If you already had a /emul directory, or a symbolic link by that name,
sysinst should rename it and tell you about it.
Compatibility Issues With Previous NetBSD Releases
Users upgrading from previous versions of NetBSD may wish to bear the
following problems and compatibility issues in mind when upgrading to
NetBSD 2.1.
Issues affecting an upgrade from NetBSD 1.6
The following issues can generally be resolved by extracting the etc set
into a temporary directory and running postinstall:
mkdir /tmp/upgrade
cd /tmp/upgrade
pax -zrpe -f /path/to/etc.tgz
./etc/postinstall -s `pwd` check
./etc/postinstall -s `pwd` fix
Issues fixed by postinstall:
o Various files in /etc need upgrading. These include:
- /etc/defaults/*
- /etc/mtree/*
- /etc/daily
- /etc/weekly
- /etc/monthly
- /etc/security
- /etc/rc.subr
- /etc/rc
- /etc/rc.shutdown
- /etc/rc.d/*
o The following files are now obsolete: /etc/rc.d/fsck.sh
/etc/rc.d/gated /etc/rc.d/kerberos /etc/rc.d/NETWORK
/etc/rc.d/systemfs /etc/rc.d/xntpd and /etc/rc.d/ypset.
o The users and groups `smmsp', needs to be created, `news' is no
longer part of the system.
The following issues need to be resolved manually:
o postfix(8) configuration files require upgrading.
cd /usr/share/examples/postfix
cp post-install postfix-files postfix-script /etc/postfix
postfix check
Using online NetBSD documentation
Documentation is available if you first install the manual distribution
set. Traditionally, the ``man pages'' (documentation) are denoted by
`name(section)'. Some examples of this are
o intro(1),
o man(1),
o apropros(1),
o passwd(1), and
o passwd(5).
The section numbers group the topics into several categories, but three
are of primary interest: user commands are in section 1, file formats are
in section 5, and administrative information is in section 8.
The man command is used to view the documentation on a topic, and is
started by entering man [section] topic. The brackets [] around the sec-
tion should not be entered, but rather indicate that the section is
optional. If you don't ask for a particular section, the topic with the
lowest numbered section name will be displayed. For instance, after log-
ging in, enter
# man passwd
to read the documentation for passwd(1). To view the documentation for
passwd(5), enter
# man 5 passwd
instead.
If you are unsure of what man page you are looking for, enter
apropos subject-word
where subject-word is your topic of interest; a list of possibly related
man pages will be displayed.
Administrivia
If you've got something to say, do so! We'd like your input. There are
various mailing lists available via the mailing list server at
majordomo@NetBSD.org. To get help on using the mailing list server, send
mail to that address with an empty body, and it will reply with instruc-
tions.
There are various mailing lists set up to deal with comments and ques-
tions about this release. Please send comments to:
netbsd-comments@NetBSD.org.
To report bugs, use the send-pr(1) command shipped with NetBSD, and fill
in as much information about the problem as you can. Good bug reports
include lots of details. Additionally, bug reports can be sent by mail
to: netbsd-bugs@NetBSD.org.
Use of send-pr(1) is encouraged, however, because bugs reported with it
are entered into the NetBSD bugs database, and thus can't slip through
the cracks.
There are also port-specific mailing lists, to discuss aspects of each
port of NetBSD. Use majordomo to find their addresses, or visit
http://www.NetBSD.org/MailingLists/.
If you're interested in doing a serious amount of work on a specific
port, you probably should contact the `owner' of that port (listed
below).
If you'd like to help with this effort, and have an idea as to how you
could be useful, send us mail or subscribe to: netbsd-help@NetBSD.org.
As a favor, please avoid mailing huge documents or files to these mailing
lists. Instead, put the material you would have sent up for FTP or WWW
somewhere, then mail the appropriate list about it, or, if you'd rather
not do that, mail the list saying you'll send the data to those who want
it.
Thanks go to
o The former members of UCB's Computer Systems Research Group, includ-
ing (but not limited to):
Keith Bostic
Ralph Campbell
Mike Karels
Marshall Kirk McKusick
for their ongoing work on BSD systems, support, and encouragement.
o The Internet Systems Consortium, Inc. for hosting the NetBSD FTP,
CVS, AnonCVS, mail, mail archive, GNATS, SUP, Rsync and WWW servers.
o The Internet Research Institute in Japan for hosting the server which
runs the CVSweb interface to the NetBSD source tree.
o The Helsinki University of Technology in Finland for hosting the
NetBSD backup CVS and backup server.
o SSH Communications Security in Finland for operating the backup
server.
o The many organisations that provide NetBSD mirror sites.
o Without CVS, this project would be impossible to manage, so our hats
go off to Brian Berliner, Jeff Polk, and the various other people
who've had a hand in making CVS a useful tool.
o The following individuals and organizations (each in alphabetical
order) have made donations or loans of hardware and/or money, to sup-
port NetBSD development, and deserve credit for it:
AboveNet Communications, Inc.
Advanced System Products, Inc.
Alex Poylisher
Alistair Crooks
Andrew Brown
Atsushi YOKOYAMA
Avalon Computer Systems
Bay Area Internet Solutions
Ben Collver
Bill Coldwell
Bill Sommerfeld
Brad Salai
Brains Corporation, Japan
Brian Carlstrom
Brian McGroarty
Canada Connect Corporation
Castor Fu
Central Iowa (Model) Railroad
Charles Conn
Charles D. Cranor
Charles M. Hannum
Chris Legrow
Christer O. Andersson
Christopher g. Demetriou
Christos Zoulas
Chuck Silvers
Co-operative Research Centre for Enterprise Distributed
Curt Sampson
Dave Burgess
Dave Rand
David Brownlee
Demon Internet, UK
Derek Fellion
Digital Equipment Corporation
Distributed Processing Technology
Douglas J. Trainor
Easynet, UK
Ed Braaten
Edward Richley
Eric and Rosemary Spahr
Free Hardware Foundation
Greg Gingerich
Guenther Grau
Harald Koerfgen
Harry McDonald
Heiko W. Rupp
Herb Peyerl
Hubert Feyrer
Innovation Development Enterprises of America
Internet Software Consortium
James Chacon
Jan Joris Vereijken
Jason Birnschein
Jason Brazile
Jason R. Thorpe
Jim Wise
John Kohl
Jonathan P. Kay
Jordan K. Hubbard
Kenneth Alan Hornstein
Kevin Keith Woo
Kimmo Suominen
Krister Waldfridsson
Lex Wennmacher
LinuxFest Northwest
Luke Mewburn
MS Macro System GmbH, Germany
Mark Brinicombe
Mark S. Thomas
Mason Loring Bliss
Mattias Karlsson
Michael Graff
Michael L. Hitch
Michael Richardson
Michael Thompson
Michael W. James
Mike Price
Neil J. McRae
Noah M. Keiserman
Norman R. McBride
Numerical Aerospace Simulation Facility, NASA Ames Research
Oliver Cahagne
Perry E. Metzger
Petri T. Koistinen
Piermont Information Systems Inc.
Precedence Technologies Ltd
Ralph Campbell
Reinoud Zandijk
Richard Nelson
Rob Windsor
Ross Harvey
SDF Public Access Unix, Inc. 501(c)(7)
Salient Systems Inc.
Scott Ellis
Scott Kaplan
Simon Burge
Soren Jacobsen
Soren Jorvang
Steve Allen
Steve Wadlow
SunROOT# Project
Ted Lemon
Ted Spradley
Thor Lancelot Simon
Tim Law
Tom Coulter
Toru Nishimura
VMC Harald Frank, Germany
Warped Communications, Inc.
Wasabi Systems
Whitecross Database Systems Ltd.
William Gnadt
Worria Web Hosting
(If you're not on that list and should be, tell us! We probably were
not able to get in touch with you, to verify that you wanted to be
listed.)
o Finally, we thank all of the people who've put sweat and tears into
developing NetBSD since its inception in January, 1993. (Obviously,
there are a lot more people who deserve thanks here. If you're one
of them, and would like to mentioned, tell us!)
We are...
(in alphabetical order)
The NetBSD core group:
Allen Briggs briggs@NetBSD.org
Matt Thomas matt@NetBSD.org
Valeriy E. Ushakov uwe@NetBSD.org
YAMAMOTO Takashi yamt@NetBSD.org
Christos Zoulas christos@NetBSD.org
The portmasters (and their ports):
~
Allen Briggs briggs@NetBSD.org sandpoint
Anders Magnusson ragge@NetBSD.org vax
Andrey Petrov petrov@NetBSD.org sparc64
Ben Harris bjh21@NetBSD.org acorn26
Chris Gilbert chris@NetBSD.org cats
Christian Limpach cl@NetBSD.org xen
Eduardo Horvath eeh@NetBSD.org evbppc
Frank van der Linden fvdl@NetBSD.org amd64
Frank van der Linden fvdl@NetBSD.org i386
Gavan Fantom gavan@NetBSD.org iyonix
IWAMOTO Toshihiro toshii@NetBSD.org hpcarm
Ichiro Fukuhara ichiro@NetBSD.org hpcarm
Ignatios Souvatzis is@NetBSD.org amiga
Izumi Tsutsui tsutsui@NetBSD.org hp300
Izumi Tsutsui tsutsui@NetBSD.org news68k
Jason Thorpe thorpej@NetBSD.org algor
Jason Thorpe thorpej@NetBSD.org evbarm
Jason Thorpe thorpej@NetBSD.org shark
Jeremy Cooper jeremy@NetBSD.org sun3
Jonathan Stone jonathan@NetBSD.org pmax
Julian Coleman jdc@NetBSD.org atari