About this Document............................................2
Quick install notes for the impatient..........................2
What is NetBSD?................................................3
Upgrade path to NetBSD 1.6.....................................3
Changes Between The NetBSD 1.5 and 1.6 Releases................3
Kernel......................................................3
Networking..................................................4
File system.................................................5
Security....................................................5
System administration and user tools........................5
Miscellaneous...............................................6
i386 specific...............................................7
The Future of NetBSD...........................................7
Sources of NetBSD..............................................8
NetBSD 1.6 Release Contents....................................8
NetBSD/i386 subdirectory structure..........................9
Binary distribution sets...................................10
NetBSD/i386 System Requirements and Supported Devices.........12
Supported devices..........................................12
Floppy controllers......................................12
MFM, ESDI, IDE, and RLL hard disk controllers...........12
SCSI host adapters......................................12
MDA, CGA, VGA, SVGA, and HGC Display Adapters...........13
Serial ports............................................13
Parallel ports..........................................13
Ethernet adapters.......................................13
FDDI adapters...........................................15
Token-Ring adapters.....................................15
Wireless network adapters...............................15
High Speed Serial.......................................15
Tape drives.............................................15
CD-ROM drives...........................................15
Mice....................................................15
Sound Cards.............................................16
Game Ports (Joysticks)..................................16
Miscellaneous...........................................16
PCMCIA Controllers......................................16
RAID Controllers........................................16
Specific driver footnotes:..............................17
Unsupported devices........................................17
Required configurations....................................17
Getting the NetBSD System on to Useful Media..................20
Preparing your System for NetBSD installation.................22
Installing the NetBSD System..................................23
Running the sysinst installation program...................23
Introduction............................................23
Possible PCMCIA issues..................................23
General.................................................25
Quick install...........................................25
Booting NetBSD..........................................27
Network configuration...................................27
Installation drive selection and parameters.............28
Partitioning the disk...................................28
Preparing your hard disk................................29
Getting the distribution sets...........................29
Installation using ftp..................................30
Installation using NFS..................................30
Installation from CD-ROM................................31
Installation from a floppy set..........................31
Installation from an unmounted file system..............31
Installation from a local directory.....................31
Extracting the distribution sets........................31
Finalizing your installation............................32
Post installation steps.......................................32
Upgrading a previously-installed NetBSD System................34
Compatibility Issues With Previous NetBSD Releases............35
Issues affecting an upgrade from NetBSD 1.5................35
Issues affecting an upgrade from NetBSD 1.4 or prior.......36
Using online NetBSD documentation.............................37
Administrivia.................................................37
Thanks go to..................................................38
We are........................................................40
Legal Mumbo-Jumbo.............................................44
The End.......................................................47
This document describes the installation procedure for
NetBSD1.6
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
.html
.more
more(1)
and
less(1)
pager utility programs.
This is the format in which the on-line
man
pages are generally presented.
.txt
You are reading the HTML version.
This section contains some brief notes describing what you need to install NetBSD1.6 on a machine of the i386 architecture.
installation/floppy/
directory.
Most people will need the
boot1.fs
and
boot2.fs
images, or possibly (but not necessarily)
bootlap1.fs
and
bootlap2.fs
if installing on a laptop.
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.
rawrite32.zip
)
in the
utilities/
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.
The NetBSD Operating System is a fully functional Open Source UNIX-like operating system derived from the University of California, Berkeley Networking Release 2 (Net/2), 4.4BSD-Lite, and 4.4BSD-Lite2 sources. NetBSD runs on fifty three different system architectures (ports), featuring seventeen machine architectures across eleven distinct CPU families, and is being ported to more. The NetBSD1.6 release contains complete binary releases for thirty eight different system architectures. (The fifteen remaining are not fully supported at this time and are thus not part of the binary distribution. 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 portable, 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.
NetBSD1.6 is an upgrade of NetBSD1.5.3 and earlier major and patch releases of NetBSD.
The intermediate development versions of code available on the main trunk in our CVS repository (also known as ``NetBSD-current'') from after the point where the release cycle for 1.6 was started are designated by version identifiers such as 1.6A, 1.6B, etc. These identifiers do not designate releases, but indicate major changes in internal kernel APIs. Note that the kernel from NetBSD 1.6 can not be used to upgrade a system running one of those intermediate development versions. Trying to use the NetBSD 1.6 kernel on such a system will probably result in problems.
Please also note that it is not possible to do a direct ``version'' comparison between any of the intermediate development versions mentioned above and 1.6 to determine if a given feature is present or absent in 1.6. The development of 1.6 and the subsequent ``point'' releases is done on a separate branch in the CVS repository. The branch was created when the release cycle for 1.6 was started, and during the release cycle of 1.6 and its patch releases selected fixes and enhancements have been imported from the main development trunk.
The NetBSD1.6 release provides numerous significant functional enhancements, including support for many new devices, integration of hundreds of bug fixes, new and updated kernel subsystems, and many user-land enhancements. 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 eighteen months of development that went into the NetBSD1.6 release. Some highlights include:
scsipi(9)
.
userconf(4)
,
activated with the
-c
boot loader flag.
ehci(4)
host controller.
irframe(4)
IrDA frame level driver.
Serial dongles and the
oboe(4)
driver are currently supported.
INCLUDE_CONFIG_FILE
in
options(4)
for more information.
sysctl(8)
.
).
vlan(4)
.
ndbootd(8)
added;
used to netboot
NetBSD/sun2
machines.
racoon(8)
added;
IKE key management daemon for IPsec key negotiation, from the KAME project.
ifconfig(8)
and
awi(4)
driver.
wi(4)
and
wiconfig(8)
now support scanning for access points,
and defaults to BSS instead of ad-hoc mode.
bridge(4)
.
pppoe(4)
.
ifwatchd(8)
added;
invokes up-script and down-script when a network interface goes up and down.
Used by
pppoe(4)
.
dump(8)
,
dumpfs(8)
,
fsck_ffs(8)
,
fsirand(8)
,
newfs(8)
,
and
tunefs(8)
support a
-F
option to manipulate file system images in regular files.
makefs(8)
added;
creates file system images from a directory tree.
(Currently ffs only.)
)
by Grigoriy Orlov, which noticeably improves performance on FFS file systems
when creating directories, and subsequently manipulating them.
newfs(8)
calculates default block size from the file system size,
and uses the largest possible cylinders/group (cpg) value if
-c
isn't given.
dpti(4)
driver added;
an implementation of the DPT/Adaptec SCSI/I2O RAID management interface.
Allows the use of the Linux versions of
dptmgr,
raidutil,
dptelog,
(etc).
chroot(8)
hierarchy for services including
named(8)
,
ntpd(8)
,
and
sshd(8)
.
passwd(5)
ciphers:
MD5, and
DES with more encryption rounds.
See
passwd.conf(5)
.
/etc/security
performs many more checks and is far more flexible in how it monitors
changes.
See
security.conf(5)
.
sushi(8)
added;
a menu based system administration tool.
pgrep(1)
and
pkill(1)
added;
find or signal processes by name or other attributes.
etcupdate(8)
script which helps updating the
/etc
config files interactively, and the
/etc/postinstall
script which is provided to check for or fix configuration changes
that have occurred in
NetBSD.
stat(1)
added;
a user interface to the information returned by the
stat(2)
system call.
sort(1)
replaces
GNU
sort(1)
.
rc.d(8)
scripts waits until the service terminates before returning.
This improves the reliability of
``restart''
operations as well.
swapoff
in
rc.conf(5)
.
rc.shutdown(8)
after the number of seconds provided in
rcshutdown_timeout
from
rc.conf(5)
.
src/build.sh
is available for doing arbitrary cross-builds; see
src/BUILDING
for more information.
At least 38 ports for the
NetBSD1.6
release were cross-built on a
NetBSD/i386
system using this mechanism.
agp(4)
for faster access to graphics boards.
init(8)
will create an mfs (memory based file system)
/dev
if
/dev/console
is missing.
vmstat(8)
displays kernel hash statistics with
-H
and
-h hash.
wscons(4)
supports blanking of VGA consoles.
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.
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:
NetBSD1.6 on i386 is, as usual, also fully backward compatible with old NetBSD/i386 binaries, so you don't need to recompile all your local programs provided you set the appropriate binary compatibility options in your kernel configuration.
The NetBSD Foundation has been incorporated as a non-profit organization. Its purpose is to encourage, foster and promote the free exchange of computer 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:
We intend to begin narrowing the time delay between releases. Our ambition 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 submit 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.
Refer to
http://www.netbsd.org/Sites/net.html.
The root directory of the NetBSD1.6 release is organized as follows:
.../NetBSD-1.6/
CHANGES
LAST_MINUTE
MIRRORS
README.files
TODO
patches/
source/
In addition to the files and directories listed above, there is one
directory per architecture, for each of the architectures for which
NetBSD1.6
has a binary distribution.
There are also
README.export-control
files sprinkled liberally throughout the
distribution tree, which point out that there are some portions of the
distribution that may be subject to
export regulations of the United States, e.g.
code under
src/crypto
and
src/sys/crypto
.
It is your responsibility
to determine whether or not it is legal for you to export these portions
and to act accordingly.
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:
config(8)
;
and
dbsym(8)
.
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
The
sets/Split/
subdirectory contains split
versions of the source sets for those users who need to load the
source sets from floppy or otherwise need a split distribution.
The split sets are named
set_name.
xx
where
set_name
is the distribution set name, and
xx
is the sequence number of the file,
starting with
``aa''
for the first file in the distribution set, then
``ab''
for the next, and so on.
All of these files except the last one of each set should be exactly
240,640 bytes long.
(The last file is just long enough to contain the remainder of the data
for that distribution set.)
The split distributions may be reassembled and extracted with cat as follows:
#
cat set_name.?? | ( cd / ; tar -zxpf - )
In each of the source distribution set directories, there are files which contain the checksums of the files in the directory:
BSDSUM
CKSUM
MD5
SYSVSUM
The MD5 digest is the safest checksum, followed by the POSIX checksum. The other two checksums are provided only to ensure that the widest possible range of system can check the integrity of the release files.
i386
subdirectory of the distribution:
.../NetBSD-1.6/i386/
INSTALL.html
INSTALL.ps
INSTALL.txt
INSTALL.more
.more
file contains underlined text using the
more(1)
conventions for indicating italic and bold display.
binary/
kernel/
netbsd-GENERIC.gz
netbsd.GENERIC_LAPTOP.gz
GENERIC
that has USB, PCMCIA and CardBus enabled to allow
installing on laptop machines.
netbsd.GENERIC_TINY.gz
GENERIC
intended to run on machines with less than 8 MB.
netbsd.GENERIC_PS2TINY.gz
GENERIC
intended to run on IBM PS/2 machines.
netbsd.INSTALL.gz
netbsd.INSTALL_TINY.gz
INSTALL
intended to run on machines with less than 8 MB.
netbsd.INSTALL_SMALL.gz
INSTALL
intended to fit on a 5.25"/1.2 MB diskette.
netbsd.INSTALL_LAPTOP.gz
INSTALL
that has USB, PCMCIA and CardBus enabled to allow
installing on laptop machines.
netbsd.INSTALL_PS2.gz
INSTALL
that has MCA stuff enabled to allow installing on IBM PS/2 machines.
sets/
installation/
floppy/
misc/
i386/binary/sets
subdirectory
of the
NetBSD1.6
distribution tree, and are as follows:
/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.
/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.
GENERIC
kernel, named
/netbsd
.
You
must
install this distribution set.
/usr/share
.
groff(1)
,
all related programs, and their manual pages.
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.2.0. Binary sets for the X Window System are distributed with NetBSD. The sets are:
The i386 binary distribution sets are distributed as gzipped tar files
named with the extension
.tgz,
e.g.
base.tgz
.
They are also
available in split form; catted together, the members of a split set
form a gzipped tar file.
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.
NetBSD1.6 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 compile 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.)
Most of these controllers are only available in multifunction PCI chips. Other PCI IDE controllers are supported, but performance may not be optimal. ISA, ISA Plug and Play and PCMCIA IDE controllers are supported as well.
GENERIC
kernels,
although it is not in the kernels which are on the distribution floppies.
We are planning future support for many of these devices.
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
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 tailored 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 currently will not work, as this is a total of 3712k.
For old machines that may have EISA, SCSI and more RAM, but only
have an 1.2M floppy drive, use
boot-small.fs
.
For old IBM PS/2 machines with MCA, use
boot-ps2.fs
.
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 -small and -tiny images have separate rescue floppy images 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/utilities
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.
Installation is supported from several media types, including:
The steps necessary to prepare the distribution sets for installation depend upon which installation medium you choose. The steps for the various media are outlined below.
Proceed to the instruction on installation.
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 section on preparing your hard disk, below. If you're upgrading an existing installation, go directly to the section on upgrading.
204.152.184.75
(as of June, 2002).
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.
/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 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 preparing your hard disk, below. If you're upgrading an existing installation, go directly to the section on upgrading.
Place the distribution sets you wish to upgrade somewhere in
your current file system tree.
Please note that the
/dev
on the floppy used for upgrades only knows about
wd0
,
wd1
,
sd0
,
sd1
,
and
sd2
.
If you have more than two IDE drives or more than three SCSI drives, you
should take care not to place the sets on the high-numbered drives.
At a bare minimum, you must upgrade the base and kern binary distributions, and so must put the base and kern sets somewhere in your file system. If you wish, you can do the other sets, as well, but you should not upgrade the etc distribution; it contains contains system configuration files that you should review and update by hand.
Once you have done this, you can proceed to the next step in the upgrade process, actually upgrading your system.
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 geometry. However, since the BIOS has to be used during startup, it is important 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 mentioned 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.
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.
Machines with PCMCIA slots may have problems during installation. With the improvements of the PCMCIA code in this release, this will not happen very frequently. 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 especially bad if one of the devices in question is your ethernet card.
As of NetBSD1.5, the kernel attempts to probe for available interrupts that are usable by the PCIC (PCMCIA interrupt controller). Assuming that this functions correctly, it should alleviate 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 conflicts 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 corresponding
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, specified 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
boot the
INSTALL
kernel with
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.
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
program from the command prompt.
It is not necessary to reboot.
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 instructions, skip to the next section. This section describes a basic installation, using a CD-ROM install as an example.
e:
cd \NetBSD-1.6\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'.
#
dd if=.../boot1.fs bs=18k of=/dev/rfd0a
.***********************************************.
* NetBSD-1.6 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 *
.***********************************************.
root
,
and set a password for that account.
You are also advised to edit the file
/etc/rc.conf
to match your system needs.
/usr/X11R6/lib/X11/doc
.
Further information can be found on
http://www.xfree86.org/.
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 internal and external caches (if any). If it still doesn't work, NetBSD probably can't be run on your hardware. This can probably be considered a bug, so you might want to report it. If you do, please include as many details about your system configuration as you can.
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 displayed.
This may take a little while also, as
NetBSD
will be probing 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 second, 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.
Earlier version of
the
NetBSD
install floppies mounted the floppy as the system's
root partition
(/
),
but the new installation floppies use a
ramdisk file system and are no longer dependent on the floppy
once it has booted.
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.
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 networking 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.
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
wd
X
or
sd
X
disk,
you will either be asked for the type of disk
(wd
X)
you are
using or you will be asked if you want to specify a fake geometry
for your SCSI disk
(sd
X).
The types of disk are be
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 automatically reserve space for
bad144 tables.
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 following section and go to Editing the NetBSD disklabel.
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 partition. 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 capabilities 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.
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 disklabel, 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).
Some partitions in the disklabel have a fixed purpose.
a
/
)
b
c
d
e-p
e
is the partition mounted on
/usr
,
but this is historical practice and not a fixed value.
You will then be asked to name your disk's disklabel. The default response is ``mydisk''. For most purposes this will be OK. If you choose to name it something different, make sure the name is a single word and contains no special characters. You don't need to remember this name.
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 proceed, enter
yes
at the prompt.
The install program will now label your disk and make the file systems 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 installation program after pressing the return key.
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 installation, 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 section labeled `Extracting the distribution sets'.
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
to provide some 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 questions, 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.
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
to provide some 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 questions, 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.
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.
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.
In order to install from a local file system, you will
need to specify 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.
This option assumes that you have already done some preparation yourself. The sets should be located in a directory on a file system that is already accessible. sysinst will ask you for the name of this directory.
After the install sets containing the NetBSD distribution have been made available, you can either extract all the sets (a full installation), 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 networking, you will be asked if you want to use this configuration for normal operation. If so, these values will be installed in the network 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 restrictions.
Congratulations, you have successfully installed NetBSD1.6. You can now reboot the machine, and boot NetBSD from harddisk.
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.
/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 system 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 adventurous) run
named(8)
.
See
resolv.conf(5)
or
named(8)
for more information.
Other files in
/etc
that may require modification or setting up include
/etc/mailer.conf
,
/etc/nsswitch.conf
,
and
/etc/wscons.conf
.
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 create an account for yourself (see below) and protect it and the
``root''
account with good passwords.
Unless you have connected an unusual terminal device as the console
you can just press
RETURN
when it prompts for
Terminal
type?
[...]
.
Use the
useradd(8)
command to add accounts to your system;
do not
edit
/etc/passwd
directly.
See
useradd(8)
for more information on how to add a new user to the 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
xf86config(1)
utility 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.
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.
1.6/i386/All
subdir.
You can install them with the following commands:
# PKG_PATH=ftp://ftp.netbsd.org/pub/NetBSD/packages/1.6/i386/All # export PKG_PATH # pkg_add -v tcsh # pkg_add -v apache # pkg_add -v perl ...
The above commands will install the tcsh shell, the Apache web server and the perl programming language as well as all the packages they depend on.
/usr/pkgsrc
(though other locations work fine), with the commands:
#
mkdir /usr/pkgsrc
#
( cd /usr/pkgsrc ; tar -zxpf - ) < pkgsrc.tar.gz
After extracting, then see the
README
file in the extraction directory (e.g.
/usr/pkgsrc/README
)
for more information.
/etc/mail/aliases
to forward root mail to the right place.
Don't forget to run
newaliases(1)
afterwards.
/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 information.
/etc/rc.local
to run any local daemons you use.
/etc
files are documented in section 5 of the manual; so just invoking
#
man 5 filename
is likely to give you more information on these files.
The upgrade to NetBSD1.6 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 boot blocks on your NetBSD partition, the kernel, 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 your disk, whether on the NetBSD partition or on another operating system's partition, before beginning the upgrade process.
The upgrade procedure using the
sysinst
tool is similar to an installation, but without the hard disk partitioning.
The original
/etc
directory is renamed to
/etc.old
,
and no attempt is made to merge any of the previous configuration into
the new system except that the previous
/etc/fstab
file is copied into the new configuration.
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 systems are checked before unpacking the sets.
After a new kernel has been copied to your hard disk, your
machine is a complete
NetBSD1.6
system.
However, that doesn't mean that you're finished 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 version 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 binaries 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.
Users upgrading from previous versions of NetBSD may wish to bear the following problems and compatibility issues in mind when upgrading to NetBSD1.6.
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:
/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/*
/etc/rc.d/NETWORK
and
/etc/rc.d/gated
.
rc.conf(5)
entries are now obsolete:
amd_master
,
ip6forwarding
,
defcorename
,
and
nfsiod_flags
.
critical_filesystems_beforenet
has been replaced by
critical_filesystems_local
.
critical_filesystems
has been replaced by
critical_filesystems_remote
.
ssh(1)
and
sshd(8)
were moved from
/etc
to
/etc/ssh
,
including
ssh_known_hosts*
files and the
host key files
ssh_host*_key*
.
/etc/ssh.conf
was renamed to
/etc/ssh/ssh_config
,
and
/etc/sshd.conf
was renamed to
/etc/ssh/sshd_config
.
wscons.conf(5)
are now obsolete.
The following issues need to be resolved manually:
postfix(8)
configuration files require upgrading.
cd /usr/share/examples/postfix
cp post-install postfix-files postfix-script /etc/postfix
postfix check
/etc/ifconfig.de*
to
/etc/ifconfig.tlp*
,
renaming of
rc.conf(5)
entries
ifconfig_de*
to
ifconfig_tlp*
,
and the reconfiguration of files such as
/etc/dhclient.conf
and
/etc/ipf.conf
.
/etc/rc
modified to use
/etc/rc.d/*
Prior to
NetBSD1.5,
/etc/rc
was a traditional
BSD
style monolithic file; each discrete program or substem from
/etc/rc
and
/etc/netstart
has been moved into separate scripts in
/etc/rc.d/
.
At system startup,
/etc/rc
uses
rcorder(8)
to build a dependency list of the files in
/etc/rc.d
and then executes each script in turn with an argument of
`start'.
Many
rc.d
scripts won't start unless the appropriate
rc.conf(5)
entry in
/etc/rc.conf
is set to
`YES.'
At system shutdown,
/etc/rc.shutdown
uses
rcorder(8)
to build a dependency list of the files in
/etc/rc.d
that have a
``KEYWORD: shutdown''
line, reverses the resulting list, and then executes each script in turn
with an argument of
`stop'.
The following scripts support a specific shutdown method:
cron
,
inetd
,
local
,
and
xdm
.
Local and third-party scripts may be installed into
/etc/rc.d
as necessary.
Refer to the other scripts in that directory and
rc(8)
for more information on implementing
rc.d
scripts.
named(8)
leaks version information.
Previous releases of
NetBSD
disabled a feature of
named(8)
where the version number of the server could be determined by remote clients.
This feature has not been disabled in
NetBSD1.5,
because there is a
named.conf(5)
option to change the version string:
option {
version "newstring";
};
sysctl(8)
was moved from
/usr/sbin/sysctl
to
/sbin/sysctl
.
If you have hardcoded references to the full pathname
(in shell scripts, for example)
please be sure to update those.
sendmail(8)
configuration file pathname changed.
Due to
sendmail(8)
upgrade from 8.9.x to 8.10.x,
/etc/sendmail.cf
is moved to
/etc/mail/sendmail.cf
.
Also, the default
sendmail.cf(5)
refers different pathnames than before.
For example,
/etc/aliases
is now located at
/etc/mail/aliases
,
/etc/sendmail.cw
is now called
/etc/mail/local-host-names
,
and so forth.
If you have customized
sendmail.cf(5)
and friends, you will need to move the files to the new locations.
See
/usr/share/sendmail/README
for more information.
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
intro(1)
,
man(1)
,
apropros(1)
,
passwd(1)
,
and
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 section 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 logging 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.
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 instructions.
There are various mailing lists set up to deal with comments and questions 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.
Keith Bostic Ralph Campbell Mike Karels Marshall Kirk McKusick
for their ongoing work on BSD systems, support, and encouragement.
Mike Hibler Rick Macklem Jan-Simon Pendry Chris Torek
for answering lots of questions, fixing bugs, and doing the various work they've done.
Steve Allen Jason Birnschein Mason Loring Bliss Jason Brazile Mark Brinicombe David Brownlee Simon Burge Dave Burgess Ralph Campbell Brian Carlstrom James Chacon Bill Coldwell Charles Conn Tom Coulter Charles D. Cranor Christopher G. Demetriou Scott Ellis Hubert Feyrer Castor Fu Greg Gingerich William Gnadt Michael Graff Guenther Grau Ross Harvey Charles M. Hannum Michael L. Hitch Kenneth Alan Hornstein Jordan K. Hubbard Søren Jørvang Scott Kaplan Noah M. Keiserman Harald Koerfgen John Kohl Chris Legrow Ted Lemon Norman R. McBride Neil J. McRae Perry E. Metzger Luke Mewburn Toru Nishimura Herb Peyerl Mike Price Dave Rand Michael Richardson Heiko W. Rupp Brad Salai Chuck Silvers Thor Lancelot Simon Bill Sommerfeld Paul Southworth Eric and Rosemary Spahr Ted Spradley Kimmo Suominen Jason R. Thorpe Steve Wadlow Krister Walfridsson Rob Windsor Jim Wise Reinoud Zandijk Christos Zoulas
AboveNet Communications, Inc. Advanced System Products, Inc. Avalon Computer Systems Bay Area Internet Solutions Brains Corporation, Japan Canada Connect Corporation Co-operative Research Centre for Enterprise Distributed Systems Technology Demon Internet, UK Digital Equipment Corporation Distributed Processing Technology Easynet, UK Free Hardware Foundation Innovation Development Enterprises of America Internet Software Consortium MS Macro System GmbH, Germany Numerical Aerospace Simulation Facility, NASA Ames Research Center Piermont Information Systems Inc. Precedence Technologies Ltd Salient Systems Inc. VMC Harald Frank, Germany Warped Communications, Inc. Whitecross Database Systems Ltd.
(in alphabetical order)
All product names mentioned herein are trademarks or registered trademarks of their respective owners.
The following notices are required to satisfy the license terms of the software that we have mentioned in this document:
This product includes software developed by the University of
California, Berkeley and its contributors.