INSTALL(8) NetBSD System Manager's Manual INSTALL(8) NAME INSTALL - Installation procedure for NetBSD/sparc DESCRIPTION About this Document This document describes the installation procedure for NetBSD 1.4.3 on the sparc 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. What is NetBSD? The NetBSD Operating System is a fully functional Open Source UN*X-like operating system derived from the Berkeley Networking Release 2 (Net/2), 4.4BSD-Lite, and 4.4BSD-Lite2 sources. NetBSD runs on twenty different system architectures featuring eight distinct families of CPUs, and is being ported to more. The NetBSD 1.4.3 release contains complete binary releases for fifteen different machine types. (The remaining ones 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 portable, high performance kernel, NetBSD features a complete set of user utilities, compilers for several languages, The X Window System, and nu- merous 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. Upgrade path to NetBSD 1.4.3 If you are not installing your system ``from scratch'' but instead are going to upgrade an existing system already running NetBSD you need to know which versions you can upgrade with NetBSD 1.4.3. NetBSD 1.4.3 is an upgrade of NetBSD 1.4.2, 1.4.1, NetBSD 1.4 and earlier major and patch releases of NetBSD such as versions 1.3.3, 1.2 etc. 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.4 was started are designated by ver- sion identifiers such as 1.4A, 1.4B, 1.4P etc. These identifiers do not designate releases, but indicate major changes in internal kernel APIs. Note that the kernel from NetBSD 1.4.3 can not be used to upgrade a sys- tem running one of those intermediate development versions. Trying to use the NetBSD 1.4.3 kernel on such a system will in all probability re- sult in problems. Please also note that it is not possible to do a direct ``version'' com- parison between any of the intermediate development versions mentioned above and 1.4.3 to determine if a given feature is present or absent in 1.4.3. The development of 1.4 and the subsequent patch or ``point'' re- leases is done on a separate branch in the CVS repository which was cre- ated when the release cylcle for 1.4 was started, and during the release cycle of 1.4 and its patch releases, selective fixes have been imported from the main development trunk (the intent is to only import fixes with no or minor impact on the stability of the release branch). So, there are features in 1.4.3 which were not in e.g. 1.4H, but the reverse is al- so true. Major Changes Between 1.4.2 and 1.4.3 The complete list of changes between NetBSD 1.4.2 and 1.4.3 can be found in the file CHANGES-1.4.3 in the top directory of the source tree. The following are the highlights only. o A driver for the Lucent Wavelan (Orinoco) 802.11B wireless Ethernet PCMCIA card has been added, see wi(4). o The PCI Cyclom-4Y and -8Y multiport serial cards are now supported. o The Macintosh LC Ethernet Adapter is now supported. o The on-board video on Macintosh Quadra 605 is now supported. o Bugfixes to the Alteon Gigabit Ethernet driver, ti(4). o Support for several new PCI IDE controllers have been added, see pciide(4.) o The i386 port may now be installed on wd2 or wd3. o A possible CPU hog problem related to large I/Os has been fixed. Fixes SA#2000-005. o A denial-of-service problem related to handling of IP options has been fixed. Fixes SA#2000-002. o A problem with /etc/ftpchroot has been fixed. Fixes SA#2000-006. o A minor problem related to locking of semaphore resources has been fixed. Fixes SA#2000-004. o The DHCP software has been updated to ISC 2.0pl3. This also fixes SA#2000-008 -- a security problem in the dhcp client code. o A problem with use of user-supplied data as a format string in ftpd has been fixed. Fixes SA#2000-009. o The sparc c++rt0.o code is now compiled with -fPIC. This means that libraries with global constructors (which must link in c++rt0.o on sparc/a.out) must also be compiled -fPIC. o Most countries can now import the full release without restriction, including the previously restricted domestic portion. The only ``problem spots'' are US-embargoed countries. See http://www.NetBSD.ORG/Misc/crypto-export.html for the full details. o An extensive audit of the code (and corresponding fixes) has been done to eliminate possible buffer overruns caused by possible user- specified format strings. In addition, many bugs have been fixed -- more than 40 problems reported through our problem tracking system have been fixed, and some other non- reported problems have also been found and fixed. See the CHANGES-1.4.3 file for the complete list. Known caveats with 1.4.3 The following are the major known issues with NetBSD 1.4.3. o Some of the fixes in NetBSD 1.4.3 required the introduction of a new system call, issetugid(2). This means that you will have to upgrade the kernel before installing the new user-land code. o The more strict format checking required a minor fix to the C compil- er to allow NULL format strings. Thus, you will need to update your compiler before doing a ``make build'' during a source-based upgrade. o PCMCIA support may require manual adjustment to function properly. See Possible PCMCIA issues under Installing the NetBSD System for more details. o No major changes have been made to LFS in 1.4.3, so it is still of ``beta test'' quality. o The version of the IPF packet filtering software in NetBSD 1.4.3 must be enabled with ``ipf -E'' before filtering rules can be set. Fail- ure to do so may result in a panic. (Enabling NAT will however auto- enable IPF.) Major Changes Between 1.4.1 and 1.4.2 The complete list of changes between NetBSD 1.4.1 and 1.4.2 can be found in the file CHANGES-1.4.2 in the top directory of the source tree. The following are the highlights only. o A driver for the Alteon Gigabit Ethernet cards has been added, see ti(4). o A driver for the Realtek 8129/8239 Fast Ethernet PCI cards have been added, see rl(4). o A driver for the DPT SmartCache and SmartRAID III or IV SCSI adapters has been added, see dpt(4). o A driver for the BOCA IOAT66 6-port ISA serial adapter has been added, see ioat(4). o Support for the X-surf Amiga board has been added. o Support has been added for ext2fs revision 1, with read-only support for the ``sparse super'' and the ``filetype'' options. o BIND has been upgraded to version 8.2.2-P5. o The IPF packet filtering software has been updated to version 3.3.6. o Tcpdump now does hex/ascii dumps of packet contents if asked to do so. o An implementation of the System V user management utilities has been added. o The name ``errno'' is now always a macro which expands to a function call. This is done to ease the integration of thread libraries with the code in both system and third-party libraries. Please include to access the correct definition of ``errno''. o A utility for making temporary files for shell scripts has been added, see mktemp(1). o The automounter utility amd(8) has been updated to fix a security problem. o A security problem in procfs has been fixed. Procfs is not used by default in NetBSD. o The floating point emulation on the ports using the m68k CPU has been reverted to the version in NetBSD 1.4 (the version in 1.4.1 had prob- lems). o Several subsystems have received substantial work, such as RAIDframe, LFS, and the package tools. In addition, many, many bugs have been fixed -- more than 100 problems reported through our problem tracking system have been fixed, and many other non-reported problems have also been found and fixed. See the CHANGES-1.4.2 file for the complete list. Known caveats with 1.4.2 The following are the major known issues with NetBSD 1.4.2. o The upgrade of ipf(8) caused a change of the kernel API. Thus, if you are using ipf(8) you need to upgrade both the kernel and the us- er-land utilities to control that feature in order for it to work. o As part of fixing a kernel bug, ``struct vfsnode'' needed to change size. This will unfortunately, and contrary to tradition for patch releases, cause incompatibilities for users of file system LKMs com- piled for 1.4 and 1.4.1. o Although LFS has been improved between 1.4.1 and 1.4.2, it can proba- bly still be characterized as being of ``beta test'' quality, e.g. filling the file system still gives ``interesting'' effects. It should probably not be used to store critical data quite yet. o The version of the IPF packet filtering software in NetBSD 1.4.2 must be enabled with ``ipf -E'' before filtering or NAT rules can be set. Failure to do so may result in a panic. Major Changes Between 1.4 and 1.4.1 The complete list of changes between NetBSD 1.4 and 1.4.1 can be found in the file CHANGES-1.4.1 in the top directory of the source tree. o The NetBSD/alpha port's compatibility for Digital UNIX executables has been greatly improved. o Many bug fixes and improvements of the installation tools and utili- ties. o Support for more PCI serial/parallel cards has been added. o It is now possible to boot NetBSD/i386 on systems with 1GB of RAM. o The floating point emulation on the ports using the m68k CPU has been upgraded. o A fatal problem with /dev/random has been found and fixed. o Support for Alpha 21264 ev6 based systems has been added to NetB- SD/alpha. Major Changes Between 1.3 and 1.4 The NetBSD 1.4 release is a substantial improvement over its predeces- sors. We have provided numerous significant functional enhancements, in- cluding support for many new devices, integration of hundreds of bug fix- es, new and updated kernel subsystems, and many userland enhancements. The results of these improvements is a stable operating system fit for production use that rivals most commercially available systems. It is impossible to completely summarize the nearly two years of develop- ment that went into the NetBSD 1.4 release. Some highlights include: o Substantial improvements in the TCP/IP implementation, including nu- merous performance enhancements and bug fixes by Jason Thorpe and others. o A new, high efficiency kernel memory pool allocator by Paul Kranen- burg. This has been integrated into most kernel subsystems. o A new, totally rewritten virtual memory subsystem, UVM, created by Chuck Cranor, which is substantially cleaner and better performing than the old Mach derived VM subsystem. o Improved POSIX and XPG standards compliance. o Completion of the integration of all remaining 4.4BSD Lite-2 kernel improvements and bug fixes that had not been previously integrated. (Integration of all userland components was completed before NetBSD 1.3) o Several new ports, including macppc, bebox, sparc64, next68k, and others, have been integrated into the source tree. o The system compilers have been upgraded to egcs 1.1.1, and the system compiler toolchain now (mostly) uses the latest versions of GNU binu- tils instead of the obsolete versions left over from 4.4BSD Lite. o Everyone's favorite ftp(1) client has been improved even further. See the man page for details. o A new architecture independent console driver, wscons(4), has been integrated into many ports. o Numerous improvements have been made to the audio subsystem support, including support for MIDI device drivers. o Linux compatibility support has been improved. o A number of scheduler enhancements have yielded dramatic improvements in interactive performance and better control of background tasks. o Several network tunneling protocols, including GRE and IP in IP, have been implemented. o Kernel support for the CODA distributed file system has been added. o Manuel Bouyer completed major changes to the IDE support. It is now architecture independent. Major changes have been made to the IDE code for better error handling, improved ATAPI support, 32 bit data I/O support and bus-master DMA support on PCI IDE controllers. o Lennart Augustsson has added full USB support, permitting the use of a wide variety of Universal Serial Bus peripherals. The drivers should easily port to any future platforms that support the PCI bus. See usb(4) for an overview. o RAIDframe, version 1.1, from the Parallel Data Laboratory at Carnegie Mellon University, has been integrated. Supports RAID levels 0, 1, 4, 5, and more. o Luke Mewburn added nsswitch.conf(5) functionality to the system to specify the search order for system databases. o syslogd(8) now supports listening on multiple sockets, to make the chrooting of servers easier. o Most third party packages have been updated to the latest stable re- lease. As has been noted, there have also been innumerable bug fixes. 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. NetBSD 1.4.3 is the fourth release for the sparc. Many more sparc models and devices are now supported. 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 ac- tivities. 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. In addition, Anonymous CVS access to the NetBSD source tree has been added since NetBSD 1.4.1; see http://www.netbsd.org/Changes/#anoncvs-available We have also added a browsable CVS repository on the web at http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/ We intend to integrate free, positive changes from whatever sources sub- mit them, providing that they are well thought-out and increase the us- ability 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 Please refer to http://www.netbsd.org/Sites/net.html. NetBSD 1.4.3 Release Contents The root directory of the NetBSD 1.4.3 release is organized as follows: .../NetBSD-1.4.3/ BUGS Known bugs list (somewhat incomplete and out of date). CHANGES Changes since earlier NetBSD releases. LAST_MINUTE Last minute changes. MIRRORS A list of sites that mirror the NetBSD 1.4.3 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 di- rectory per architecture, for each of the architectures for which NetBSD 1.4.3 has a binary distribution. There are also 'README.export- control' files sprinkled liberally throughout the distribution tree, which spell out the current restrictions related to export of this code from the United States of America. Note that these regulations were re- cently changed so that most countries can import the entire release with- out significant restrictions. See http://www.NetBSD.ORG/Misc/crypto-export.html which contains up-to-date information on this issue. 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: secrsrc.tgz: This set contains the "domestic" sources. These sources may be subject to United States export regulations. 423K gzipped, 2M uncompressed gnusrc.tgz: This set contains the "gnu" sources, including the source for the compiler, assembler, groff, and the other GNU utilities in the binary distribution sets. 19M gzipped, 84.3M uncompressed syssrc.tgz: This set contains the sources to the NetBSD 1.4.3 ker- nel, config(8), and dbsym(8). 13.9M gzipped, 68.8M uncompressed sharesrc.tgz: This set contains the "share" sources, which include the sources for the man pages not associated with any par- ticular program, the sources for the typesettable docu- ment set, the dictionaries, and more. 3.1M gzipped, 11.8M uncompressed src.tgz: This set contains all of the NetBSD 1.4.3 sources which are not mentioned above. 14.5M gzipped, 67.5M uncompressed Most of the above source sets are located in the source/sets subdirectory of the distribution tree. The secrsrc.tgz set is contained in the source/security subdirectory. This set contains the sources normally found in /usr/src/domestic - primarily Kerberos (version 4) and other cryptographic security related software. This code can now be exported from the US to most countries. The document on http://www.NetBSD.ORG/Misc/crypto-export.html spells out the current (rather lenient) restrictions applicable for the export of this code. The source sets are distributed as compressed tar files. They may be un- packed into /usr/src with the command: cat set_name.tgz | gunzip | (cd /; tar xpf - ) The sets/Split/ and security/Split/ subdirectories contain 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 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.?? | gunzip | (cd /; tar xpf - ) In each of the source distribution set directories, there is a file named CKSUMS which contains the checksums of the files in that directory, as generated by the cksum(1) utility. You can use cksum to check the in- tegrity of the archives, if you suspect that one of the files is corrupt and have access to a cksum binary. Checksums based on other algorithms may also be present - see the release(7) man page for details. NetBSD/sparc Subdirectory Structure The sparc-specific portion of the NetBSD 1.4.3 release is found in the sparc subdirectory of the distribution: .../NetBSD-1.4.3/sparc/ INSTALL.html INSTALL.ps INSTALL.txt INSTALL.more Installation notes; this file. The .more file contains underlined text using the more(1) conventions for indicat- ing italic and bold display. binary/ sets/ sparc binary distribution sets; see below. kernel/ Base GENERIC kernels. security/ sparc security distribution; see below. installation/ miniroot/ Sparc miniroot boot-image. netboot/ Server boot-file image for diskless machines. misc/ Statically-linked versions of gzip (GNU gzip) and gtar (GNU tar). Binary Distribution Sets The NetBSD sparc binary distribution sets contain the binaries which com- prise the NetBSD 1.4.3 release for the sparc. There are eight binary dis- tribution sets and the security distribution set. The binary distribu- tion sets can be found in the sparc/binary/sets subdirectory of the NetBSD 1.4.3 distribution tree, and are as follows: base The NetBSD 1.4.3 sparc 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 functional. It includes shared library support, and excludes everything described below. 11.9M gzipped, 33.4M 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. 9.6M gzipped, 31.8M 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. (If you are upgrading, it's recommended that you get a copy of this set and carefully upgrade your configuration files by hand.) 60K gzipped, 350K uncompressed games This set includes the games and their manual pages. 2.9M gzipped, 7.3M uncompressed kern This set contains a NetBSD/sparc 1.4.3 GENERIC kernel, named /netbsd. You must install this distribution set. 2.9M gzipped, 6.7M 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. 4M gzipped, 16.0M uncompressed misc This set includes the (rather large) system dictionaries, the typesettable document set, and other files from /usr/share. 2.2M gzipped, 8.4M uncompressed text This set includes NetBSD's text processing tools, including groff(1), all related programs, and their manual pages. 1.4M gzipped, 4.8M uncompressed The sparc security distribution set is named secr and can be found in the sparc/binary/security subdirectory of the NetBSD 1.4.3 distribution tree. It contains security- related binaries which depend on cryptographic source code. You do not need this distribution set to use encrypted passwords in your password file; the base distribution includes a crypt library which can perform only the one-way encryption function. The security distribution includes a version of the Kerberos IV network security system, and a Kerberized version of telnet(1) program. The secr distribution set can be found only on those sites which carry the complete NetBSD distribution and which can legally obtain it. Because of United States law, it may not be legal to distribute this set to locations outside of the United States and Canada. See http://www.NetBSD.ORG/Misc/crypto-export.html for updated information on this issue. 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 3.3.6. 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. 2.7M gzipped, 8.6M uncompressed xcomp The extra libraries and include files needed to compile X source code. 1.7M gzipped, 7.4M uncompressed xcontrib Programs that were contributed to X. 205k gzipped, 750k uncompressed xfont Fonts needed by X. 5.7M gzipped, 7.0M uncompressed xserver The Xsun, Xsun24, XsunMono and Xprt servers with man pages. 3.3M gzipped, 8.4M uncompressed The sparc 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 files are /-relative and therefore are extracted below the current directory. That is, if you want to extract the binaries into your system, i.e. replace the system binaries with them, you have to run the tar xfp command from /. Note The distribution cannot be extracted using the SunOS tar program so statically-linked SunOS versions of gzip (GNU gzip) and gtar (GNU tar) are provided in sparc/installation/misc. Note Each directory in the sparc binary distribution also has its own checksum files, just as the source distribution does: All BSDSUM files are historic BSD checksums for the various files in that directory, in the format produced by the command: cksum -o 1 file All CKSUM files are POSIX checksums for the various files in that directory, in the format produced by the command: cksum file. All MD5 files are MD5 digests for the various files in that direc- tory, in the format produced by the command: cksum -m file. All SYSVSUM files are historic AT&T 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 possible range of system can check the integrity of the release files. NetBSD/sparc System Requirements and Supported Devices NetBSD/sparc 1.4.3 runs on the following classes of machines: o sun4c (e.g. the SS1, SS1+, SS2, IPC, ELC, IPX, and SLC) o sun4 (e.g. the 4/100, 4/200, and 4/300 - note that support for the 4/400 processor is incomplete) o sun4m (e.g. Classic, LX, SS4, SS5, SS10, and SS20) NetBSD/sparc 1.4.3 does not run on these machines (yet): o sun-4/400 (lacking support for the I/O cache, and has ethernet prob- lems) o sun4d (e.g. sparc center 2000) o sun4u (e.g. Ultrasparcs) The minimal configuration requires 4M of RAM and ~60M of disk space. To install the entire system requires much more disk space, and to run X or compile the system, more RAM is recommended. (NetBSD with 4M of RAM feels like Solaris with 4M of RAM.) Note that until you have around 16M of RAM, getting more RAM is more important than getting a faster CPU.) Supported devices include: sun4c/sun4m sbus video: cgsix, cgthree, and bwtwo frame buffers cgfourteen and tcx frame buffers (limited ``emulation'' mode) sun4 video (not thoroughly tested?): P4 on-board bwtwo, and VME cgtwo card serial ports: ttya and ttyb (can be used as console if needed) ethernet: on-board AMD Lance ethernet ("le0"), Sbus AMD Lance ethernet cards, on-board Intel 82586 ethernet (ie0 on 4/100's and 4/200's), VME Intel 82586 ethernet cards SCSI: on-board "esp" SCSI controller (sun4c, sun4m and the 4/300), sbus "esp" SCSI controller, Sun "SUN-3"/"si" VME SCSI controller (polled mode only, slow), Sun "SCSI Weird"/"sw" on-board controller (4/110 only, polled) VME disks: Xylogics 7053 VME/SMD disk controller ("xd"), Xylogics 450/451 VME disk controller ("xy") [note: VME/IPI disks are not supported] sun floppy disk drive sun keyboard and mouse sun4c audio sun4m audio on Sparcstation Classic Hardware the we do NOT currently support, but get many questions about: o multiprocessor sun4m machines o audio drivers for sun4m machines (other than the Sparcstation Clas- sic) o interrupt driven SCSI driver for sun-4/100's and sun-4/200's Getting the NetBSD System on to Useful Media Installation is supported from several media types, including: o CDROM o DOS Floppy o Tape o Remote NFS partition o FTP 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 im- age from inside the kernel, and will not need to write to the media. The distribution sets for installation or upgrade depend on which instal- lation medium you choose. The steps for the various media are outlined below. o To install or upgrade NetBSD using CDROM, you need to do the follow- ing: Find out where the distribution set files are on the CDROM. Proceed to the instruction on installation. o To install or upgrade NetBSD using DOS floppies, you need to do the following: Count the number of "set_name.xx" files that make up the distribution sets you want to install or upgrade. You will need that number of 1.44M floppies. Format all of the floppies with DOS. DO NOT make any of them bootable DOS floppies. (If the floppies are bootable, then the 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 DOS by their manufactur- ers, they probably aren't bootable, and you can use them out of the box. Place all of the "set_name.xx" files on the DOS disks. Once you have the files on 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. o To install or upgrade NetBSD using a tape, you need to do the follow- ing: To install NetBSD from a tape, you need to make a tape that contains the distribution set files, in "tar" format. If you're making the tape on a UN*X-like system, the easiest way to do so is probably something like: tar cf tape_device dist_directories where tape_device is the name of the tape device that describes the tape drive you're using (possibly /dev/rst0, or something similar, but it will vary from system to system. (If you can't figure it out, ask your system administrator.) In the above example, dist_directories are the dis- tribution sets' directories, for the distribution sets you wish to place on the tape. For instance, to put the misc, base, and etc dis- tributions on tape (in order to do the absolute minimum installation to a new disk), you would do the following: cd .../NetBSD-1.4.3 # the top of the tree cd sparc/binary And then: tar cf tape_device misc etc kern Note You still need to fill in tape_device in the example. Once you have the files on the tape, 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 sec- tion on upgrading. o To install or upgrade NetBSD using a remote partition, mounted via NFS, you must do the following: Note This method of installation is recommended only for those al- ready familiar with using BSD network configuration and man- agement commands. If you aren't, this documentation should help, but is not intended to be all-encompassing. Place the NetBSD distribution sets you wish to install into a direc- tory on an NFS server, and make that directory mountable by the ma- chine 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 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. Fi- nally, 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. o To install or upgrade NetBSD by using FTP to get the installation sets, you must do the following: Note This method of installation is recommended only for those al- ready familiar with using BSD network configuration and man- agement commands. If you aren't, this documentation should help, but is not intended to be all-encompassing. The preparations for this installation/upgrade method are easy; all you make sure that there's some FTP site from which you can retrieve the NetBSD distribution when you're about to install or upgrade. You 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 in- stalling 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 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 sec- tion on upgrading. o If you are upgrading NetBSD, you also have the option of installing NetBSD by putting the new distribution sets somewhere in your exist- ing file system, and using them from there. To do that, you must do the following: 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" binary distribution, and so must put the "base" set somewhere in your file system. If you wish, you can do the other sets, as well, but you should NOT upgrade the "etc" distribution; the "etc" distribution contains system con- figuration files that you should review and update by hand. Once you have done this, you can proceed to the next step in the up- grade process, actually upgrading your system. Preparing your System for NetBSD Installation Before you start you might need to consider your disk configuration to sort out a quirk in SCSI-ID to SD-UNIT mapping that exists on Sun Sparc- stations. Upon leaving the factory, SunOS and the OpenBOOT ROM map according to this table: SCSI-ID SunOS SD-Unit 0 sd3 1 sd1 2 sd2 3 sd0 4 sd4 5 sd5 6 sd6 Unlike SunOS and the OpenBOOT ROM, a generic NetBSD kernel numbers scsi drives sequentially as it finds them. The drive with the lowest scsi-id will be called sd0, the next one sd1, etc. To ease the installation process, the default NetBSD kernel in the dis- tribution is setup to match the Sun mapping above by hard-wiring scsi- id#3 to sd0 and scsi-id#0 to sd3. The remaining drives will be dynamical- ly mapped to other sd* numbers. A truely generic NetBSD kernel is also provided as `/netbsd.GENERIC', which will do the standard NetBSD probe ordering. If your configuration differs from the default Sun setup, you can try to use this kernel to complete the installation. Note This is also a concern when you start building your own customised kernels. Your OpenBOOT ROM may need some setup. make sure you boot from `new com- mand mode'. If your machine comes up and gives you a `>' prompt instead of `ok', type: > n ok setenv sunmon-compat? false ok This is needed because the NetBSD kernel relies on functionality provided by OpenBOOT ROMs -- the ability to pass down Forth commands and have them executed in the ROM -- that appears to go away when the OpenBOOT ROM op- erates in `old monitor compatibility' mode. Also, you cannot use the security modes of the sparc OpenBOOT ROM. ok setenv security-mode none If you're installing NetBSD/sparc for the first time it's a good idea to look at the partition sizes of disk you intend installing NetBSD on. Asumming a classic partition scheme with root (`/') and /usr filesystems, a comfortable size for the NetBSD root filesystem partition is about 20MB; a good initial size for the swap partition is twice the amount of physical memory in your machine (though, unlike SunOS 4.x, there are no restrictions on the size of the swap partition that would render part of your memory unusable). A full binary installation takes about 60MB in `/usr'. Some network devices (i.e. the built-in `le' interface on sun4m machines) allow a choice between operating on a UTP or a AUI port. The `le' driver supports automatic detection of the port which is actually connected to the wire. If automatic detection is not available or not working properly in your environment, you may have to specify the type connection using the `me- dia' parameter of ifconfig(8). During installation, you'll get the oppor- tunity to specify the appropriate medium. Use ``10base5/AUI'' to select the AUI connector, or ``10baseT/UTP'' to select the UTP connector. Installing the NetBSD System Installing NetBSD is a relatively complex process, but if you have this document in hand it shouldn't be too much trouble. There are several ways to install NetBSD onto a disk. The easiest way in terms of preliminary setup is to use the NetBSD miniroot that can be booted off your local disk's swap partition. Alternatively, if your Sparcstation is hooked up in a network you can find a server and arrange for a diskless setup which is a convenient way to install on a machine whose disk does not currently hold a usable operating system (see the section `Installing NetBSD by using a diskless setup' below). There is also a bootable 1.4MB floppy available that contains a slightly less fea- tureful miniroot environment. Installing NetBSD by using the NetBSD miniroot. The miniroot is a self-contained NetBSD filesystem holding all utilities necessary to install NetBSD on a local disk. It is distributed as a plain file designed to be transferred to a raw disk partition from which it can be booted using the appropriate PROM command. Usually, the miniroot will be loaded into the swap partition of a disk. If needed, you can use any other unused partition, but remember that the partition will then not available during the installation process. Loading the miniroot onto your raw partition is simple. On NetBSD as well as SunOS you use a command like: # dd if=miniroot-1.4.3.fs of=/dev/rsd0b bs=4k conv=sync (Here, `/dev/rsd0b' is assumed to be your swap partition.) There's a po- tential problem here if /dev/rsd0b is actually in use as a swap partition by your currently running system. If you don't have another disk or par- tition to spare, you can usually get away with running this command any- way after first booting into single-user mode to ensure a quiet system. After transferring the miniroot to disk, bring the system down by: # halt Then boot the miniroot by typing the appropriate command at the PROM: > b sd(,,1)netbsd -s # for sun4 monitors ok boot sd(,,1)netbsd -s # for version 1 OpenBOOT ROMs ok boot disk:b netbsd -s # for version 2 OpenBOOT ROMs If you've loaded the miniroot onto some other disk than `sd0' adapt the boot specifier accordingly, e.g.: ok boot disk1:b netbsd -s to boot from SCSI disk target 1 from a version 2 OpenBOOT ROM. If you have to use the old-style sd(c,u,p) syntax to boot from a SCSI disk, you can calculate the parameters as follows: c specifies the controller number u the hexadecimal number obtained from evaluating the expression `(8 * TARGET) + LUN' p the partition number from which to boot (0=`a', 1=`b', etc). The monitor boot command will cause the NetBSD kernel contained in the miniroot image to be booted. After the initial probe messages you'll be asked to start the install or upgrade procedure. Proceed to the section Running the installation scripts below. Installing NetBSD by using the bootable floppy. The NetBSD install floppy works only on the sun4c and sun4m class ma- chines. From the OpenBOOT prompt, the following should boot the floppy. ok boot fd(,,1) # for version 1 OpenBOOT ROMs ok boot /fd # either of these for version ok boot floppy # 2 OpenBOOT ROMs After the initial probe messages you'll be asked to start the install or upgrade procedure. Proceed to the section Running the installation scripts below. Installing NetBSD by using a diskless setup. First, you must setup a diskless client configuration on a server. If you are using a NetBSD system as the boot-server, have a look at the diskless(8) manual page for guidelines on how to proceed with this. If the server runs another operating system, you'll have to consult documen- tation that came with it. (On SunOS systems, add_client(8) is a good start.) Your Sparcstation expects to be able to download a second stage bootstrap program via TFTP after having acquired its IP address through RevARP when instructed to boot "over the net". It will look for a filename composed of the machine's IP address followed by the machine's architecture, sepa- rated by a period. For example, a sun4c machine which has been assigned IP address 130.115.144.11, will make an TFTP request for `8273900B.SUN4C'. Normally, this file is a symbolic link to an appropri- ate second-stage boot program, which should be located in a place where the TFTP daemon can find it (remember, many TFTP daemons run in a ch- root'ed environment). You can find the boot program in /usr/mdec/boot.net in the NetBSD/sparc distribution. Note The only difference between /usr/mdec/boot.net and /usr/mdec/boot is in the a.out header, which has been magically transformed in a way that makes it usable on all versions of Sparc PROMs. After the boot program has been loaded into memory and given control by the PROM, it starts locating the machine's remote root directory through the BOOTPARAM protocol. First a BOOTPARAM WHOAMI request is broadcast on the local net. The answer to this request (if it comes in) contains the client's name. This name is used in next step, a BOOTPARAM GETFILE re- quest -- sent to the server that responded to the WHOAMI request -- re- questing the name and address of the machine that will serve the client's root directory, as well as the path of the client's root on that server. Finally, this information (if it comes in) is used to issue a REMOTE MOUNT request to the client's root filesystem server, asking for an NFS file handle corresponding to the root filesystem. If successful, the boot program starts reading from the remote root filesystem in search of the kernel which is then read into memory. As noted above in the section Preparing your System for NetBSD Installation you have several options when choosing a location to store the installation filesets. However, the easiest way is to put the *.tar.gz files you want to install into the root directory for your client on the server. Next, unpack `base.tar.gz' and `etc.tar.gz' on the server in the root di- rectory for your machine. If you elect to use a separately NFS-mounted filesystem for `/usr' with your diskless setup, make sure the "./usr" base files in base.tar.gz end up in the correct location. One way to do this is to temporarily use a loopback mount on the server, re-routing root/usr to your server's exported NetBSD /usr directory. Also put the kernel and the install/upgrade scripts into the root directory. A few configuration files need to be edited: root/etc/hosts Add the IP addresses of both server and client. root/etc/myname This files contains the client's hostname; use the same name as in /etc/hosts. root/etc/fstab Enter the entries for the remotely mounted filesystems. For ex- ample: server:/export/root/client / nfs rw 0 0 server:/export/exec/sun4.netbsd /usr nfs rw 0 0 Now you must populate the the `/dev' directory for your client. If yoarserver runs SunOS 4.x, you can simply change your working directory to root/dev and run the MAKEDEV script: sh MAKEDEV all. On SunOS 5.x systems, MAKEDEV can also be used, but there'll be error messages about unknown user and groups. These errors are inconsequential for the purpose of installing NetBSD. However, you may want to correct them if you plan to use the diskless setup regularly. In that case, you may re-run MAKEDEV on your NetBSD machine once it has booted. Boot your workstation from the server by entering the appropriate `boot' command at the monitor prompt. Depending on the PROM version in your ma- chine, this command takes one of the following forms: > b le()netbsd -s # for sun4 monitors ok boot le()netbsd -s # for version 1 OpenBOOT ROMs ok boot net netbsd -s # for version 2 OpenBOOT ROMs This will boot the NetBSD kernel in single-user mode. Note The latter two examples assume you operate the OpenBOOT ROM in "new command mode". If your machine comes up and gives you a `>' prompt instead of `ok', type: >n # enter native OpenBOOT mode ok setenv sunmon-compat? false # make it permanent ok If you use a diskless setup with a separately NFS-mounted /usr filesys- tem, mount /usr by hand now: netbsd# mount /usr NOTE: For floppy installs, the text editor provided is ed. For miniroot installs, the text editor is vi. When using disklabel(8) to edit diskla- bels the -e switch will invoke the editor on the label. The -i switch will run an interactive session. At this point, it's worth checking the disk label and partition sizes on the disk you want to install NetBSD onto. NetBSD understands SunOS-style disklabels, so if your disk was previously used by SunOS there will be a usable label on it. Use `disklabel -e ' or `disklabel -i ' (where is the device name assigned by the NetBSD kernel, e.g. `sd0') to view and modify the partition sizes. See the section Preparing your System for NetBSD Installation above for suggestions about disk par- tition sizes. If you are installing on a SCSI disk that does not have a SunOS or NetBSD label on it, you may still be able to use disklabel(8) but you'll have to create all partitions from scratch. If your disk is listed in `/etc/disk- tab', you may use the entry (which in most cases only defines a `c' par- tition to describe the whole disk) to put an initial label on the disk. Then proceed with `disklabel -e ' or `disklabel -i ' to cre- ate a partition layout that suits your needs. Note Because of the built-in compatibility with SunOS-style labels, Always make sure all your partitions start and end on cylinder boundaries. Here follows an example of what you'll see while in the dislabel editor. Do not touch any of the parameters except for the `label: ' entry and the actual partition size information at the bottom (the lines starting with `a:', `b:', ...). The size and offset fields are given in sector units. Be sure to make these numbers multiples of the of the number of sectors per cylinder: the kernel might be picky about these things, but aside from this you'll have the least chance of wasting disk space. Partitions on which you intend to have a mountable filesystem, should be given fstype `4.2BSD'. Remem- ber, the `c' partition should describe the whole disk. The `(Cyl. x - y)' info that appears after the hash (`#') character is treated as a com- ment and need not be filled in when altering partitions. Note The line containing `8 partitions:' is best left alone, even if you define less then eight partitions. If this line displays a different number and the program complains about it (after you leave the editor), then try setting it to `8 partitions:'. Sample Disklabel Screen netbsd# disklabel sd2 # /dev/rsd2c: type: SCSI disk: SCSI disk label: Hold Your Breath flags: bytes/sector: 512 sectors/track: 64 tracks/cylinder: 7 sectors/cylinder: 448 cylinders: 1429 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # milliseconds track-to-track seek: 0 # milliseconds drivedata: 0 8 partitions: # size offset fstype [fsz bsz cpg] a: 50176 0 4.2BSD 0 0 0 # (Cyl. 0 - 111) b: 64512 50176 swap # (Cyl. 112 - 255) c: 640192 0 unknown # (Cyl. 0 - 1428) d: 525504 114688 4.2BSD 0 0 0 # (Cyl. 256 - 1428) If you are upgrading a NetBSD installation, start the upgrade script: netbsd# sh upgrade.sh else, start the installation script: netbsd# sh install.sh Running the installation scripts. The installation scripts will do most of the work of transferring the system from the distribution sets onto your disk. You will frequently be asked for confirmation before the script proceeds with each phase of the installation process. Occasionally, you will have to provide a piece of information such as the name of the disk you want to install on or IP addresses and domain names you want to assign. If your system has more than one disk, you may want to look at the output of the dmesg(8) command to see how your disks have been identified by the kernel. The installation script goes through the following phases: o determination of the disk to install NetBSD on o checking of the partition information on the disk o creating and mounting the NetBSD filesystems o setup of IP configuration o extraction of the distribution tar files o installation of boot programs Now try a reboot. Initially I'd suggest you "boot sd()netbsd -bs", then try multiuser after that. If you boot single-user the NetBSD incantation to make the root filesystem writable is netbsd# mount -u /dev/sd0a / The Sun monitor might have been setup to instruct the boot program to load a file called "vmunix". On OpenBOOT ROM systems you can change it to load "netbsd" instead using the following commands: On version 1 OpenBOOT ROMs: >n ok setenv boot-from sd(0,0,0)netbsd ok On version 2 OpenBOOT ROMs: ok setenv boot-file netbsd ok setenv boot-device /sbus/esp/sd@0,0 Congratulations, you have successfully installed NetBSD 1.4.3. 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 propperly configured state, with the most important ones described below. 1. Configuring /etc/rc.conf If you haven't done any configuration of /etc/rc.conf, 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 filesystem mounted read-write. When the system asks you to choose a shell, simply hit return to get to a prompt. If you are asked for a terminal type, respond with vt220 (or whatever is appropriate for your terminal type) and hit return. At this point, you need to configure at least one file in the /etc directory. 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. If your /usr directory is on a separate partition and you do not know how to use 'ed' or 'ex', you will have to mount your /usr partition to gain access to 'vi'. Do the follow- ing: mount /usr export TERM=vt220 If you have /var on a seperate 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 en- vironment are hostname and possibly defaultroute, furthermore add an ifconfig_int for your 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. Other files in /etc that are new to NetBSD 1.4 and may require modi- fication 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. There is no initial password, but 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. 3. Adding accounts Use the vipw(8) command to add accounts to your system, do not edit /etc/passwd directly. See adduser(8) for more information on the process of how to add a new user to the system. 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. 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 3rd party packages There is a lot of software freely available for Unix-based systems, almost all of which can run on NetBSD. Modifications are usually needed to when transferring programs between different Unix-like systems, so the NetBSD packages collection incorporates any such changes necessary to make that software run on NetBSD, and makes the installation (and deinstallation) of the software packages easy. There's also the option of building a package from source, in case there's no precompiled binary available. Precompiled binaries can be found at ftp://ftp.netbsd.org/pub/NetBSD/packages/ Package sources for compiling packages 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 loca- tions work fine), as with the command: cat pkgsrc.tar.gz | gunzip | (mkdir /usr/pkgsrc; cd /usr/pkgsrc; tar xpf - ) After extracting, then see the README file in the extraction direc- tory (e.g. /usr/pkgsrc/README) for more information. 6. Misc o To adjust the system to your local timezone, point the /etc/localtime symlink to the appropriate file under /usr/share/zoneinfo. o Edit /etc/aliases to forward root mail to the right place (run newaliases(1) afterwards.) o The /etc/sendmail.cf file will almost definitely need to be ad- justed; files aiding in this can be found in /usr/share/sendmail. See the README file there for more infor- mation. 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 manu- al; so just invoking man filename is likely to give you more information on these files. Upgrading a previously-installed NetBSD System To upgrade to NetBSD _VER from a previous version follow the instructions in the section Installing NetBSD, but run the script upgrade.sh instead of install.sh. The upgrade script will use the existing disk partitions to install the new system in, and also preserves the files in /etc. 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 1.4.3 Note Only issues effecting an upgrade from NetBSD 1.3 or NetBSD 1.3.x are decribed here. o "machine" directory/link in "/usr/include" Description Some architecture may fail to install the comp set because the /usr/include/machine directory changed to a symbolic link in NetBSD 1.4. Fix If this happens, you can use the command # rm -r /usr/include/machine to remove the old directory and it contents and reinstall the comp set. 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 op- tional. 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)m 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 in- clude 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. If you're inter- ested 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 some- where, 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 Also, our thanks go to: Mike Hibler Rick Macklem Jan-Simon Pendry Chris Torek for answering lots of questions, fixing bugs, and doing the various work they've done. o UC Berkeley's Experimental Computing Facility provided a home for sun-lamp in the past, people to look after it, and a sense of humor. Rob Robertson, too, has added his unique sense of humor to things, and for a long time provided the primary FTP site for NetBSD. o Vixie Enterprises for hosting the NetBSD FTP, WWW and SUP server. o Redback Networks, Inc. for hosting the NetBSD Mail server. 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 Dave Burgess burgess@cynjut.infonet.net has been maintaining the 386BSD/NetBSD/FreeBSD FAQ for quite some time, and deserves to be recognized for it. o The following individuals and organiztions (each in alphabetical or- der) have made donations or loans of hardware and/or money, to sup- port NetBSD development, and deserve credit for it: 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 Soren Jorvang Scott Kaplan Noah M. Keiserman John Kohl Chris Legrow Ted Lemon Neil J. McRae Perry E. Metzger Herb Peyerl Mike Price Dave Rand Michael Richardson Heiko W. Rupp Brad Salai Chuck Silvers Thor Lancelot Simon Bill Sommerfeld Paul Southworth Ted Spradley Kimmo Suominen Jason R. Thorpe Steve Wadlow Krister Walfridsson Jim Wise 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 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. VMC Harald Frank, Germany Warped Communications, Inc. (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: Alistair Crooks agc@NetBSD.ORG Jun-ichiro itojun Hagino itojun@NetBSD.ORG Frank van der Linden fvdl@NetBSD.ORG Luke Mewburn lukem@NetBSD.ORG Christos Zoulas christos@NetBSD.ORG The portmasters (and their ports): Mark Brinicombe mark@NetBSD.ORG arm32 Jeremy Cooper jeremy@NetBSD.ORG sun3x Ross Harvey ross@NetBSD.ORG alpha Ignatios Souvatzis is@NetBSD.ORG amiga Jun-ichiro itojun Hagino itojun@NetBSD.ORG sh3 Eduardo Horvath eeh@NetBSD.ORG sparc64 Paul Kranenburg pk@NetBSD.ORG sparc Anders Magnusson ragge@NetBSD.ORG vax Tsubai Masanari tsubai@NetBSD.ORG macppc Tsubai Masanari tsubai@NetBSD.ORG newsmips Minoura Makoto minoura@NetBSD.ORG x68k Phil Nelson phil@NetBSD.ORG pc532 Scott Reynolds scottr@NetBSD.ORG mac68k Darrin Jewell dbj@NetBSD.ORG next68k Kazuki Sakamoto sakamoto@NetBSD.ORG bebox Wolfgang Solfrank ws@NetBSD.ORG ofppc Jonathan Stone jonathan@NetBSD.ORG pmax Shin Takemura takemura@NetBSD.ORG hpcmips Jason Thorpe thorpej@NetBSD.ORG hp300 Frank van der Linden fvdl@NetBSD.ORG i386 Leo Weppelman leo@NetBSD.ORG atari Nathan Williams nathanw@NetBSD.ORG sun3 Steve Woodford scw@NetBSD.ORG mvme68k The NetBSD 1.4.3 Release Engineering team: Chris G. Demetriou cgd@NetBSD.ORG Havard Eidnes he@NetBSD.ORG Ted Lemon mellon@NetBSD.ORG Perry Metzger perry@NetBSD.ORG Curt Sampson cjs@NetBSD.ORG Developers and other contributors: Steve Allen wormey@NetBSD.ORG Julian Assange proff@NetBSD.ORG Lennart Augustsson augustss@NetBSD.ORG Christoph Badura bad@NetBSD.ORG Robert V. Baron rvb@NetBSD.ORG Erik Berls cyber@NetBSD.ORG John Birrell jb@NetBSD.ORG Mason Loring Bliss mason@NetBSD.ORG Manuel Bouyer bouyer@NetBSD.ORG John Brezak brezak@NetBSD.ORG Allen Briggs briggs@NetBSD.ORG Aaron Brown abrown@NetBSD.ORG David Brownlee abs@NetBSD.ORG Frederick Bruckman fredb@NetBSD.ORG Jon Buller jonb@NetBSD.ORG Simon Burge simonb@NetBSD.ORG Dave Burgess burgess@cynjut.infonet.net Robert Byrnes byrnes@NetBSD.org D'Arcy J.M. Cain darcy@NetBSD.ORG Dave Carrel carrel@NetBSD.ORG Bill Coldwell billc@NetBSD.ORG Julian Coleman jdc@NetBSD.ORG Chuck Cranor chuck@NetBSD.ORG Aidan Cully aidan@NetBSD.ORG Johan Danielsson joda@NetBSD.ORG Matt DeBergalis deberg@NetBSD.ORG Rob Deker deker@NetBSD.ORG Chris G. Demetriou cgd@NetBSD.ORG Jaromir Dolecek jdolecek@NetBSD.ORG Andy Doran ad@NetBSD.ORG Roland Dowdeswell elric@NetBSD.ORG Matthias Drochner drochner@NetBSD.ORG Jun Ebihara jun@NetBSD.ORG Havard Eidnes he@NetBSD.ORG Enami Tsugutomo enami@NetBSD.ORG Bernd Ernesti veego@NetBSD.ORG Erik Fair fair@NetBSD.ORG Hubert Feyrer hubertf@NetBSD.ORG Thorsten Frueauf frueauf@NetBSD.ORG Castor Fu castor@NetBSD.ORG Ichiro Fukuhara ichiro@NetBSD.ORG Brian R. Gaeke brg@dgate.org Thomas Gerner thomas@NetBSD.ORG Simon J. Gerraty sjg@NetBSD.ORG Justin Gibbs gibbs@NetBSD.ORG Adam Glass glass@NetBSD.ORG Michael Graff explorer@NetBSD.ORG Brian C. Grayson bgrayson@NetBSD.ORG Brad Grantham grantham@tenon.com Matthew Green mrg@NetBSD.ORG Juergen Hannken-Illjes hannken@NetBSD.ORG Charles M. Hannum mycroft@NetBSD.ORG Eric Haszlakiewicz erh@NetBSD.ORG HAYAKAWA Koichi haya@NetBSD.ORG Rene Hexel rh@NetBSD.ORG Michael L. Hitch mhitch@NetBSD.ORG Christian E. Hopps chopps@NetBSD.ORG Ken Hornstein kenh@NetBSD.ORG Marc Horowitz marc@NetBSD.ORG Dean Huxley dean@netbsd.org ITOH Yasufumi itohy@NetBSD.ORG IWAMOTO Toshihiro toshii@NetBSD.ORG Matthew Jacob mjacob@NetBSD.ORG Lonhyn T. Jasinskyj lonhyn@NetBSD.ORG Chris Jones cjones@NetBSD.ORG Soren Jorvang soren@NetBSD.ORG Takahiro Kambe taca@NetBSD.ORG Antti Kantee pooka@NetBSD.ORG Lawrence Kesteloot kesteloo@cs.unc.edu Thomas Klausner wiz@NetBSD.ORG Klaus Klein kleink@NetBSD.ORG John Kohl jtk@NetBSD.ORG Kevin Lahey kml@NetBSD.ORG Johnny C. Lam jlam@NetBSD.ORG Martin J. Laubach mjl@NetBSD.ORG Ted Lemon mellon@NetBSD.ORG Joel Lindholm joel@NetBSD.ORG Mike Long mikel@NetBSD.ORG Warner Losh imp@NetBSD.ORG Brett Lymn blymn@NetBSD.ORG Paul Mackerras paulus@NetBSD.ORG Dan McMahill dmcmahill@NetBSD.ORG Neil J. McRae neil@NetBSD.ORG Perry Metzger perry@NetBSD.ORG der Mouse mouse@NetBSD.ORG Joseph Myers jsm@NetBSD.ORG Ken Nakata kenn@NetBSD.ORG Bob Nestor rnestor@NetBSD.ORG Tohru Nishimura nisimura@NetBSD.ORG Masaru Oki oki@NetBSD.ORG Greg Oster oster@NetBSD.ORG Herb Peyerl hpeyerl@NetBSD.ORG Matthias Pfaller matthias@NetBSD.ORG Dante Profeta dante@NetBSD.ORG Chris Provenzano proven@NetBSD.ORG Waldi Ravens waldi@moacs.indiv.nl.net Darren Reed darrenr@NetBSD.ORG Michael Richardson mcr@NetBSD.ORG Tim Rightnour garbled@NetBSD.ORG Gordon Ross gwr@NetBSD.ORG Heiko W. Rupp hwr@NetBSD.ORG SAITOH Masanobu msaitoh@NetBSD.ORG Curt Sampson cjs@NetBSD.ORG Wilfredo Sanchez wsanchez@NetBSD.ORG Ty Sarna tsarna@NetBSD.ORG SATO Kazumi sato@NetBSD.ORG Matthias Scheler tron@NetBSD.ORG Karl Schilke (rAT) rat@NetBSD.ORG Konrad Schroder perseant@NetBSD.ORG Tim Shepard shep@NetBSD.ORG Takao Shinohara shin@NetBSD.ORG Takuya SHIOZAKI tshiozak@NetBSD.ORG Chuck Silvers chs@NetBSD.ORG Thor Lancelot Simon tls@NetBSD.ORG Noriyuki Soda soda@NetBSD.ORG Bill Sommerfeld sommerfeld@NetBSD.ORG Bill Studenmund wrstuden@NetBSD.ORG Kevin Sullivan sullivan@NetBSD.ORG SUNAGAWA Keiki kei@NetBSD.ORG Kimmo Suominen kim@NetBSD.ORG Matt Thomas matt@NetBSD.ORG Christoph Toshok toshok@NetBSD.ORG Izumi Tsutsui tsutsui@NetBSD.ORG UCHIYAMA Yasushi uch@NetBSD.ORG Todd Vierling tv@NetBSD.ORG Aymeric Vincent aymeric@NetBSD.ORG Paul Vixie vixie@NetBSD.ORG Krister Walfridsson kristerw@NetBSD.ORG Lex Wennmacher wennmach@NetBSD.ORG Assar Westerlund assar@NetBSD.ORG Rob Windsor windsor@NetBSD.ORG Dan Winship danw@NetBSD.ORG Jim Wise jwise@NetBSD.ORG Colin Wood ender@NetBSD.ORG Legal Mumbo-Jumbo 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. This product includes software developed by the Computer Systems Engi- neering Group at Lawrence Berkeley Laboratory. This product includes software developed by the NetBSD Foundation, Inc. and its contributors. This product includes software developed by Adam Glass and Charles Han- num. This product includes software developed by Adam Glass. This product includes software developed by Berkeley Software Design, Inc. This product includes software developed by Charles D. Cranor and Wash- ington University. This product includes software developed by Charles D. Cranor. This product includes software developed by Charles Hannum, by the Uni- versity of Vermont and State Agricultural College and Garrett A. Wollman, by William F. Jolitz, and by the University of California, Berkeley, Lawrence Berkeley Laboratory, and its contributors. This product includes software developed by Charles Hannum. This product includes software developed by Charles M. Hannum. This product includes software developed by Chris Provenzano. This product includes software developed by Christian E. Hopps. This product includes software developed by Christopher G. Demetriou for the NetBSD Project. This product includes software developed by Christopher G. Demetriou. This product includes software developed by Christos Zoulas. This product includes software developed by David Jones and Gordon Ross. This product includes software developed by Dean Huxley. This product includes software developed by Eric S. Hvozda. This product includes software developed by Ezra Story. This product includes software developed by Gordon Ross. This product includes software developed by Gordon W. Ross and Leo Wep- pelman. This product includes software developed by Gordon W. Ross. This product includes software developed by Herb Peyerl. This product includes software developed by Ian W. Dall. This product includes software developed by Ignatios Souvatzis for the NetBSD Project. This product includes software developed by Jason R. Thorpe for And Com- munications, http://www.and.com/. This product includes software developed by Joachim Koenig-Baltes. This product includes software developed by Jochen Pohl for The NetBSD Project. This product includes software developed by John Polstra. This product includes software developed by Jonathan Stone and Jason R. Thorpe for the NetBSD Project. This product includes software developed by Jonathan Stone for the NetBSD Project. This product includes software developed by Jonathan Stone. This product includes software developed by Julian Highfield. This product includes software developed by Kenneth Stailey. This product includes software developed by Leo Weppelman. This product includes software developed by Lloyd Parkes. This product includes software developed by Mark Brinicombe. This product includes software developed by Markus Wild. This product includes software developed by Martin Husemann and Wolfgang Solfrank. This product includes software developed by Mats O Jansson and Charles D. Cranor. This product includes software developed by Mats O Jansson. This product includes software developed by Matthias Pfaller. This product includes software developed by Paul Kranenburg. This product includes software developed by Paul Mackerras. This product includes software developed by Peter Galbavy. This product includes software developed by Philip A. Nelson. This product includes software developed by Rodney W. Grimes. This product includes software developed by Scott Bartram. This product includes software developed by SigmaSoft, Th. Lockert. This product includes software developed by Terrence R. Lambert. This product includes software developed by Theo de Raadt and John Brezak. This product includes software developed by Theo de Raadt. This product includes software developed by TooLs GmbH. This product includes software developed by Winning Strategies, Inc. This product includes software developed by the Center for Software Sci- ence at the University of Utah. This product includes software developed by the University of Calgary De- partment of Computer Science and its contributors. This product includes software developed by the University of Vermont and State Agricultural College and Garrett A. Wollman. This product includes software developed for the FreeBSD project. This product includes software developed for the Internet Software Con- sortium by Ted Lemon. This product includes software developed for the NetBSD Project by Frank van der Linden. This product includes software developed for the NetBSD Project by Jason R. Thorpe. This product includes software developed for the NetBSD Project by John M. Vinopal. This product includes software developed for the NetBSD Project by Matthias Drochner. This product includes software developed for the NetBSD Project by Matthieu Herrb. This product includes software developed for the NetBSD Project by Perry E. Metzger. This product includes software developed for the NetBSD Project by Pier- mont Information Systems Inc. This product includes software developed for the NetBSD Project by Ted Lemon. This product includes software developed by LAN Media Corporation and its contributors. This product includes software developed by Michael Graff for the NetBSD Project. This product includes software developed by Niklas Hallqvist, C Stone and Job de Haas. This product includes software developed by the Alice Group. This product includes software developed by Charles D. Cranor. This product includes software developed by Peter Galbavy. This product includes software developed by Rolf Grossmann. This product includes software developed by David Miller. This product includes software developed by Gordon W. Ross. This product includes software developed by Charles Hannum, by the Uni- versity of Vermont and State Agricultural College and Garrett A. Woll- man, by William F. Jolitz, and by the University of California, Berkeley, Lawrence Berkeley Laboratory, and its contributors. NetBSD 23 March 1999 30