INSTALL(8) NetBSD System Manager's Manual INSTALL(8) NNAAMMEE IINNSSTTAALLLL - Installation procedure for NetBSD/mvme68k DDEESSCCRRIIPPTTIIOONN AAbboouutt tthhiiss DDooccuummeenntt This document describes the installation procedure for NetBSD 1.4.2 on the _m_v_m_e_6_8_k platform. It is available in four different formats titled _I_N_S_T_A_L_L_._e_x_t, where _e_x_t is one of _._p_s, _._h_t_m_l, _._m_o_r_e, or _._t_x_t. _._p_s PostScript. _._h_t_m_l Standard internet HTML. _._m_o_r_e 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 _m_a_n pages are generally pre- sented. _._t_x_t Plain old ASCII. You are reading the _m_o_r_e version. WWhhaatt iiss NNeettBBSSDD?? 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.2 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 hhttttpp::////wwwwww..nneettbbssdd..oorrgg//) 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. UUppggrraaddee ppaatthh ttoo NNeettBBSSDD 11..44..22 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.2. NetBSD 1.4.2 is an upgrade of NetBSD 1.4.1, NetBSD 1.4 and earlier re- leases 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 _a_f_t_e_r 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.2 can _n_o_t be used to upgrade a sys- tem running one of those intermediate development versions. Trying to use the NetBSD 1.4.2 kernel on such a system _w_i_l_l 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.2 to determine if a given feature is present or absent in 1.4.2. The development of 1.4, 1.4.1 and 1.4.2 is done on a separate branch in the CVS repository which was created when the release cylcle for 1.4 was started, and during the release cycles for all these versions selective fixes (with minor impact on the stability of the code on the release branch) have been imported from the main development trunk. So, there are features in 1.4.2 which were not in e.g. 1.4H, but the reverse is also true. MMaajjoorr CChhaannggeess BBeettwweeeenn 11..44..11 aanndd 11..44..22 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. ++oo A driver for the Alteon Gigabit Ethernet cards has been added, see ti(4). ++oo A driver for the Realtek 8129/8239 Fast Ethernet PCI cards have been added, see rl(4). ++oo A driver for the DPT SmartCache and SmartRAID III or IV SCSI adapters has been added, see dpt(4). ++oo A driver for the BOCA IOAT66 6-port ISA serial adapter has been added, see ioat(4). ++oo Support for the X-surf Amiga board has been added. ++oo Support has been added for ext2fs revision 1, with read-only support for the ``sparse super'' and the ``filetype'' options. ++oo BIND has been upgraded to version 8.2.2-P5. ++oo The IPF packet filtering software has been updated to version 3.3.5. ++oo Tcpdump now does hex/ascii dumps of packet contents if asked to do so. ++oo An implementation of the System V user management utilities has been added. ++oo 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''. ++oo A utility for making temporary files for shell scripts has been added, see mktemp(1). ++oo The automounter utility amd(8) has been updated to fix a security problem. ++oo A security problem in procfs has been fixed. Procfs is not used by default in NetBSD. ++oo 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). ++oo 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. KKnnoowwnn ccaavveeaattss wwiitthh 11..44..22 The following are the major known issues with NetBSD 1.4.2. ++oo 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. ++oo 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. ++oo 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. ++oo 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. MMaajjoorr CChhaannggeess BBeettwweeeenn 11..44 aanndd 11..44..11 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. ++oo The NetBSD/alpha port's compatibility for Digital UNIX executables has been greatly improved. ++oo Many bug fixes and improvements of the installation tools and utili- ties. ++oo Support for more PCI serial/parallel cards has been added. ++oo It is now possible to boot NetBSD/i386 on systems with 1GB of RAM. ++oo The floating point emulation on the ports using the m68k CPU has been upgraded. ++oo A fatal problem with /dev/random has been found and fixed. ++oo Support for Alpha 21264 ev6 based systems has been added to NetB- SD/alpha. MMaajjoorr CChhaannggeess BBeettwweeeenn 11..33 aanndd 11..44 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: ++oo Substantial improvements in the TCP/IP implementation, including nu- merous performance enhancements and bug fixes by Jason Thorpe and others. ++oo A new, high efficiency kernel memory pool allocator by Paul Kranen- burg. This has been integrated into most kernel subsystems. ++oo 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. ++oo Improved POSIX and XPG standards compliance. ++oo 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) ++oo Several new ports, including macppc, bebox, sparc64, next68k, and others, have been integrated into the source tree. ++oo 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. ++oo Everyone's favorite ftp(1) client has been improved even further. See the man page for details. ++oo A new architecture independent console driver, wscons(4), has been integrated into many ports. ++oo Numerous improvements have been made to the audio subsystem support, including support for MIDI device drivers. ++oo Linux compatibility support has been improved. ++oo A number of scheduler enhancements have yielded dramatic improvements in interactive performance and better control of background tasks. ++oo Several network tunneling protocols, including GRE and IP in IP, have been implemented. ++oo Kernel support for the CODA distributed file system has been added. ++oo 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. ++oo 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. ++oo 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. ++oo Luke Mewburn added nsswitch.conf(5) functionality to the system to specify the search order for system databases. ++oo syslogd(8) now supports listening on multiple sockets, to make the chrooting of servers easier. ++oo 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. This is the fifth public release of NetBSD for the mvme68k series of boards, and the first to support MVME167. TThhee FFuuttuurree ooff NNeettBBSSDD 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: ++oo providing better organization to keep track of development efforts, including co-ordination with groups working in related fields. ++oo providing a framework to receive donations of goods and services and to own the resources necessary to run the NetBSD Project. ++oo providing a better position from which to undertake promotional ac- tivities. ++oo 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 _m_o_r_e 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 hhttttpp::////wwwwww..nneettbbssdd..oorrgg//CChhaannggeess//##aannoonnccvvss--aavvaaiillaabbllee We have also added a browsable CVS repository on the web at hhttttpp::////ccvvsswweebb..nneettbbssdd..oorrgg//ccggii--bbiinn//ccvvsswweebb..ccggii// 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. SSoouurrcceess ooff NNeettBBSSDD Please refer to hhttttpp::////wwwwww..nneettbbssdd..oorrgg//SSiitteess//nneett..hhttmmll. NNeettBBSSDD 11..44..22 RReelleeaassee CCoonntteennttss The root directory of the NetBSD 1.4.2 release is organized as follows: _._._._/_N_e_t_B_S_D_-_1_._4_._2_/ 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.2 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.2 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 (i.e. the `domestic' portion) that may be subject to export regulations of the United States. It is your responsibility to determine whether or not it is legal for you to export these portions and to act accordingly. The NetBSD project maintains a web page at hhttttpp::////wwwwww..NNeettBBSSDD..OORRGG//MMiisscc//ccrryyppttoo--eexxppoorrtt..hhttmmll which should contain 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. _4_2_1_K _g_z_i_p_p_e_d_, _2_M _u_n_c_o_m_p_r_e_s_s_e_d 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. _1_9_M _g_z_i_p_p_e_d_, _8_4_._3_M _u_n_c_o_m_p_r_e_s_s_e_d syssrc.tgz: This set contains the sources to the NetBSD 1.4.2 ker- nel, config(8), and dbsym(8). _1_3_._9_M _g_z_i_p_p_e_d_, _6_8_._3_M _u_n_c_o_m_p_r_e_s_s_e_d 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_M _g_z_i_p_p_e_d_, _1_1_._9_M _u_n_c_o_m_p_r_e_s_s_e_d src.tgz: This set contains all of the NetBSD 1.4.2 sources which are not mentioned above. _1_4_._4_M _g_z_i_p_p_e_d_, _6_7_._4_M _u_n_c_o_m_p_r_e_s_s_e_d Most of the above source sets are located in the _s_o_u_r_c_e_/_s_e_t_s subdirectory of the distribution tree. The secrsrc.tgz set is contained in the _s_o_u_r_c_e_/_s_e_c_u_r_i_t_y subdirectory. This set, which may only be available to users in the United States and Canada, contains the sources normally found in _/_u_s_r_/_s_r_c_/_d_o_m_e_s_t_i_c - primarily Kerberos and other cryptographic security related software. (Remember, because of United States law, it may not be legal to distribute this set to locations outside of the Unit- ed States and Canada. Again, see hhttttpp::////wwwwww..NNeettBBSSDD..OORRGG//MMiisscc//ccrryyppttoo--eexxppoorrtt..hhttmmll for updated information on this issue.) The source sets are distributed as compressed tar files. They may be un- packed into _/_u_s_r_/_s_r_c with the command: ccaatt sseett__nnaammee..ttggzz || gguunnzziipp || ((ccdd //;; ttaarr xxppff -- )) The _s_e_t_s_/_S_p_l_i_t_/ and _s_e_c_u_r_i_t_y_/_S_p_l_i_t_/ 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 ccaatt as follows: ccaatt sseett__nnaammee..???? || gguunnzziipp || ((ccdd //;; ttaarr xxppff -- )) In each of the source distribution set directories, there is a file named _C_K_S_U_M_S 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. _N_e_t_B_S_D_/_m_v_m_e_6_8_k _S_u_b_d_i_r_e_c_t_o_r_y _S_t_r_u_c_t_u_r_e The mvme68k-specific portion of the NetBSD 1.4.2 release is found in the _m_v_m_e_6_8_k subdirectory of the distribution: _._._._/_N_e_t_B_S_D_-_1_._4_._2_/_m_v_m_e_6_8_k_/ _I_N_S_T_A_L_L_._h_t_m_l _I_N_S_T_A_L_L_._p_s _I_N_S_T_A_L_L_._t_x_t _I_N_S_T_A_L_L_._m_o_r_e Installation notes; this file. The _._m_o_r_e file contains underlined text using the more(1) conventions for indicat- ing italic and bold display. _b_i_n_a_r_y_/ _s_e_t_s_/ mvme68k binary distribution sets; see below. _s_e_c_u_r_i_t_y_/ mvme68k security distribution; see below. _i_n_s_t_a_l_l_a_t_i_o_n_/ _m_i_n_i_r_o_o_t_/ The miniroot filesystem image. _n_e_t_b_o_o_t_/ Two programs needed to boot mvme68k kernels over the network. _t_a_p_e_i_m_a_g_e_/ Tape boot programs, and a RAMDISK kernel. The NetBSD/mvme68k install distribution contains files that can be used to install NetBSD onto completely "bare" MVME147 and MVME167 boards. The files in the "mvme68k/installation/*" directories are described below. _m_i_n_i_r_o_o_t_._g_z A gzipped copy of the miniroot filesystem. This image is to be un-gzipped and copied into the swap area of a disk. _n_e_t_b_s_d_-_r_d_._g_z A gzipped copy of the _R_A_M_D_I_S_K _k_e_r_n_e_l for installing the miniroot filesystem. _s_t_b_o_o_t A tape boot-block, in the form required to allow 1x7-Bug to boot from tape. This is the first segment of a boot tape. _b_o_o_t_s_t A copy of the tape boot program, used as the second segment of a boot tape. _s_b_o_o_t A copy of the MVME147 serial boot program. This is neces- sary if you don't have a tape drive, but you _do_ have an- other system which can act as a boot and NFS server. This is also useful if you are installing a diskless NetBSD sys- tem on an MVME147 board. _n_e_t_b_o_o_t A copy of the network boot program. Used in conjunction with sboot on the MVME147 to get your system booted over a network. The MVME167 can boot this file directly using 167Bug's builtin TFTP client. These files can be used to make a boot tape suitable for installing NetB- SD/mvme68k. These files can also be used to configure an NFS server to support installation "over the network". See the section _G_e_t_t_i_n_g _t_h_e _N_e_t_B_S_D _S_y_s_t_e_m _o_n_t_o _U_s_e_f_u_l _M_e_d_i_a for instructions on either method. _B_i_n_a_r_y _D_i_s_t_r_i_b_u_t_i_o_n _S_e_t_s The NetBSD mvme68k binary distribution sets contain the binaries which comprise the NetBSD 1.4.2 release for the mvme68k. There are eight binary distribution sets and the _s_e_c_u_r_i_t_y distribution set. The binary distri- bution sets can be found in the _m_v_m_e_6_8_k_/_b_i_n_a_r_y_/_s_e_t_s subdirectory of the NetBSD 1.4.2 distribution tree, and are as follows: bbaassee The NetBSD 1.4.2 mvme68k bbaassee binary distribution. You _m_u_s_t 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. ccoommpp Things needed for compiling programs. This set includes the system include files (_/_u_s_r_/_i_n_c_l_u_d_e) and the various system libraries (except the shared libraries, which are included as part of the bbaassee 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. eettcc This distribution set contains the system configuration files that reside in _/_e_t_c and in several other places. This set _m_u_s_t be installed if you are installing the system from scratch, but should _n_o_t be used if you are upgrading. (If you are upgrading, it's recommended that you get a copy of this set and _c_a_r_e_f_u_l_l_y upgrade your configuration files by hand.) ggaammeess This set includes the games and their manual pages. kkeerrnn This set contains a NetBSD/mvme68k 1.4.2 GENERIC kernel, named _/_n_e_t_b_s_d. You _m_u_s_t install this distribution set. mmaann This set includes all of the manual pages for the binaries and other software contained in the bbaassee set. Note that it does not include any of the manual pages that are included in the other sets. mmiisscc This set includes the (rather large) system dictionaries, the typesettable document set, and other files from _/_u_s_r_/_s_h_a_r_e. tteexxtt This set includes NetBSD's text processing tools, including groff(1), all related programs, and their manual pages. The mvme68k security distribution set is named sseeccrr and can be found in the _m_v_m_e_6_8_k_/_b_i_n_a_r_y_/_s_e_c_u_r_i_t_y subdirectory of the NetBSD 1.4.2 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 bbaassee 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 sseeccrr 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 hhttttpp::////wwwwww..NNeettBBSSDD..OORRGG//MMiisscc//ccrryyppttoo--eexxppoorrtt..hhttmmll 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: xxbbaassee The basic files needed for a complete X client environment. This does not include the X servers. xxccoommpp The extra libraries and include files needed to compile X source code. xxccoonnttrriibb Programs that were contributed to X. xxffoonntt Fonts needed by X. The mvme68k binary distribution sets are distributed as gzipped tar files named with the extension ..ttggzz, e.g. _b_a_s_e_._t_g_z. 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 _b_e_l_o_w 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 ttaarr xxffpp command from /. _N_o_t_e Each directory in the mvme68k 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: cckkssuumm --oo 11 _f_i_l_e All CKSUM files are POSIX checksums for the various files in that directory, in the format produced by the command: cckkssuumm _f_i_l_e. All MD5 files are MD5 digests for the various files in that direc- tory, in the format produced by the command: cckkssuumm --mm _f_i_l_e. 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: cckkssuumm --oo --22 _f_i_l_e. 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. NNeettBBSSDD//mmvvmmee6688kk SSyysstteemm RReeqquuiirreemmeennttss aanndd SSuuppppoorrtteedd DDeevviicceess NetBSD/mvme68k 1.4.2 runs on Motorola MVME147 and MVME167 Single Board Computers. The minimal configuration requires 4M of RAM and ~100MB of disk space. To install the entire system requires much more disk space (approx. 200MB additional space is necessary for full sources. Double that if you want to recompile it all!). To run X (clients only) or compile the sys- tem, more RAM is recommended. Good performance requires 8MB of RAM, or 16 MB when running the X Window System. Here is a table of recommended HD partition sizes for a full install: partition: advise needed root (/) 20M 12M user (/usr) 100M 80M swap (2 or 3 * RAM) 8M Anything else is up to you! Note that the mvme68k installation procedure uses a _m_i_n_i_r_o_o_t image which is placed into the swap area of the disk. The swap partition must be large enough to hold this miniroot image (> 6Mb). The following VME147 hardware is supported: _S_e_r_i_a_l _p_o_r_t_s _(_R_S_2_3_2_)_: built-in console, ttyZ1, ttyZ2 and ttyZ3 _P_a_r_a_l_l_e_l _p_o_r_t_: On-board centronics style printer port _N_e_t_w_o_r_k _i_n_t_e_r_f_a_c_e_s_: On-board Lance Ethernet (le) _S_C_S_I_: (Most SCSI disks, tapes, CD-ROMs, etc.) On-board wd33c93 SCSI bus interface chip (async only for now). _M_i_s_c_e_l_l_a_n_e_o_u_s_: Battery-backed real-time clock. VMEbus RAM cards. The following VME167 hardware is supported: _S_e_r_i_a_l _p_o_r_t_s _(_R_S_2_3_2_)_: built-in console, ttyC1, ttyC2 and ttyC3 _P_a_r_a_l_l_e_l _p_o_r_t_: On-board centronics style printer port _N_e_t_w_o_r_k _i_n_t_e_r_f_a_c_e_s_: On-board Ethernet (ie) _S_C_S_I_: (Most SCSI disks, tapes, CD-ROMs, etc.) On-board ncr53c710 SC- SI I/O Processor chip. _M_i_s_c_e_l_l_a_n_e_o_u_s_: Battery-backed real-time clock. If it's not on the above lists, there is no support for it in this re- lease. GGeettttiinngg tthhee NNeettBBSSDD SSyysstteemm oonn ttoo UUsseeffuull MMeeddiiaa Installation is supported from several media types, including: ++oo Tape ++oo NFS ++oo CD-ROM ++oo FTP Note that installing on a "bare" machine requires either a bootable tape drive or an ethernet to a compatible NFS server. MVME147 may also need to be booted over an RS232 connection. The procedure for transferring the distribution sets onto installation media depends on the type of media. Instructions for each type of media are given below. In order to create installation media, you will need all the files and subdirectories in these two directories: _._._._/_N_e_t_B_S_D_-_1_._4_._2_/_m_v_m_e_6_8_k_/_i_n_s_t_a_l_l_a_t_i_o_n _._._._/_N_e_t_B_S_D_-_1_._4_._2_/_m_v_m_e_6_8_k_/_b_i_n_a_r_y _C_r_e_a_t_i_n_g _b_o_o_t_/_i_n_s_t_a_l_l _t_a_p_e_s_: Installing from tape is the simplest method of all. This method uses two tapes, one containing a bootable ramdisk and miniroot, the other contain- ing the installation sets. The boot tape is created as follows: ccdd ......//NNeettBBSSDD--11..44..22//mmvvmmee6688kk//iinnssttaallllaattiioonn sseett TT == //ddeevv//nnrrsstt00 mmtt --ff $$TT rreewwiinndd dddd iiff==ttaappeeiimmaaggee//ssttbboooott ooff==$$TT dddd iiff==ttaappeeiimmaaggee//bboooottsstt ooff==$$TT oobbss==88kk ccoonnvv==oossyynncc ggzziipp --ddcc ttaappeeiimmaaggee//nneettbbssdd--rrdd..ggzz || dddd ooff==$$TT oobbss==88kk ccoonnvv==oossyynncc ggzziipp --ddcc mmiinniirroooott//mmiinniirroooott..ggzz || dddd ooff==$$TT oobbss==88kk ccoonnvv==oossyynncc mmtt --ff $$TT rreewwiinndd The installation set tape is created as follows: ccdd ......//NNeettBBSSDD--11..44..22//mmvvmmee6688kk//bbiinnaarryy//sseettss sseett TT == //ddeevv//nnrrsstt00 mmtt --ff $$TT rreewwiinndd ffoorreeaacchh ff ((bbaassee eettcc ccoommpp ggaammeess mmaann mmiisscc tteexxtt)) ggzziipp --dd << $$ff..ttggzz || dddd ooff==$$TT bbss==88kk eenndd mmtt --ff $$TT rreewwiinndd If the tape does not work as expected, you may need to explicitly set the EOF mark at the end of each tape segment. Consult the tape-related manual pages on the system where the tapes are created for more details. _B_o_o_t_/_I_n_s_t_a_l_l _f_r_o_m _N_F_S _s_e_r_v_e_r_: If your machine has a disk and network connection, but no tape drive, it may be convenient for you to install NetBSD over the network. This in- volves temporarily booting your machine over NFS, just long enough so you can initialize its disk. This method requires that you have access to an NFS server on your network so you can configure it to support diskless boot for your machine. Configuring the NFS server is normally a task for a system administrator, and is not trivial. 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, consult the documentation that came with it (i.e. add_client(8) on SunOS). Booting an MVME147 from ethernet is not possible without first download- ing a small bootstrap program (sboot) via RS232. See the section enti- tiled "Installing from NFS" for details on how to accomplish this. sboot expects to be able to download a second stage bootstrap program via TFTP after having acquired its IP address through RARP It will look for a filename derived from the machine's IP address expressed in hexadecimal, with an extension of ".147". For example, an MVME147 with IP address 130.115.144.11 will make an TFTP request for `8273900B.147'. Normally, this file is just a symbolic link to the NetBSD/mvme68k "netboot" pro- gram, which should be located in a place where the TFTP daemon can find it (remember, many TFTP daemons run in a chroot'ed environment). The net- boot program may be found in the install directory of this distribution. The MVME167 boot ROM has code builtin to boot over ethernet from a TFTP server. You should configure it to download the same "netboot" program as is used for MVME147. The netboot program will query a bootparamd server to find the NFS server address and path name for its root, and then load a kernel from that lo- cation. The server should have a copy of the netbsd-rd kernel in the root area for your client (no other files are needed in the client root, al- though it might be a convenient place to put the uncompressed miniroot image) and /etc/bootparams on the server should have an entry for your client and its root directory. Note that you should rename the netbsd-rd kernel to just 'netbsd' in the client's root directory before trying to netboot the client. The client will need access to the miniroot image, which can be provided using NFS or remote shell. If using NFS, miniroot.gz should be expanded on the server, because doing so from the RAMDISK shell is not so easy. The unzipped miniroot takes about 6Mb of space. If you will be installing NetBSD on several clients, it may be useful to know that you can use a single NFS root for all the clients as long as they only use the netbsd-rd kernel. There will be no conflict between clients because the RAM-disk kernel will not use the NFS root. No swap file is needed; the RAM-disk kernel does not use that either. _I_n_s_t_a_l_l_/_U_p_g_r_a_d_e _f_r_o_m _C_D_-_R_O_M_: This method requires that you boot from another device (i.e. tape or net- work, as described above). You may need to make a boot tape on another machine using the files provided on the CD-ROM. Once you have booted netbsd-rd (the RAMDISK kernel) and loaded the miniroot, you can load any of the distribution sets directly from the CD-ROM. The "install" program in the miniroot automates the work required to mount the CD-ROM and ex- tract the files. _I_n_s_t_a_l_l_/_U_p_g_r_a_d_e _v_i_a _F_T_P_: This method requires that you boot from another device (i.e. tape or net- work, as described above). You may need to make a boot tape on another machine using the files in .../install (which you get via FTP). Once you have booted netbsd-rd (the RAM-disk kernel) and loaded the miniroot, you can load any of the distribution sets over the net using FTP. The "in- stall" program in the miniroot automates the work required to configure the network interface and transfer the files. This method, of course, requires network access to an FTP server. This might be a local system, or it might even be ftp.NetBSD.ORG itself. If you wish to use ftp.NetBSD.ORG as your FTP file server, you may want to keep the following information handy: IP Address: ftp.NetBSD.ORG Login: aannoonnyymmoouuss Password: _y_o_u_r _e_-_m_a_i_l _a_d_d_r_e_s_s Server path: //ppuubb//NNeettBBSSDD//NNeettBBSSDD--11..44..22//mmvvmmee6688kk//bbiinnaarryy _N_o_t_e If you're not using a nameserver duing installation, you might find 204.152.184.75 handy; it's the IP address of ftp.NetBSD.ORG as of January, 1999. PPrreeppaarriinngg yyoouurr SSyysstteemm ffoorr NNeettBBSSDD IInnssttaallllaattiioonn mvme68k machines usually need little or no preparation before installing NetBSD, other than the usual, well advised precaution of _b_a_c_k_i_n_g _u_p _a_l_l _d_a_t_a on any attached storage devices. The following instructions should make your machine "NetBSD Ready". Power-up your MVME147 board. You should have the _b_u_g prompt: COLD Start Onboard RAM start = $00000000, stop = $007FFFFF 147-Bug> Or, if you have an MVME167 board: MVME167 Debugger/Diagnostics Release Version 2.3 - 02/25/94 COLD Start Local Memory Found =02000000 (&33554432) MPU Clock Speed =33Mhz 167-Bug> Make sure the RAM size looks ok (if you've got an 8Mb MVME147 or a 32Mb MVME167 you should have the same value as I do). Also make sure the clock is ticking: 1x7-Bug>ttiimmee Sunday 12/21/31 16:25:14 1x7-Bug>ttiimmee Sunday 12/21/31 16:25:15 1x7-Bug> Note that NetBSD bases its year at 1968, and adds the year offset in the MVME1x7's real-time clock to get the current year. So the '31' here equates to 1999. You may have to adjust your clock using the 'set' com- mand to comply with NetBSD 's requirements. Don't worry if the "Day of the week" is not correct, NetBSD doesn't use it. Motorola has acknowl- edged a year 2000 bug in some versions of the MVME147 whereby the day of the week doesn't get set correctly by the 147Bug PROM. _I_t _d_o_e_s _n_o_t _a_f_f_e_c_t NetBSD ! Also make sure that your board's ethernet address is initialised to the correct value. You'll find the address on a label on the inside of the MVME147's front panel, and on the VMEbus P2 connector of the MVME167. On the MVME147, enter the last five digits of the address using the 'lsad' command. On the MVME167, you should use the 'cnfg' command. To install successfully to a local SCSI disk, you need to ensure that 1x7Bug is aware of what targets are connected to the SCSI bus. This can be done by issueing the following command: 1x7-Bug> iioott;;tt At this point, 1x7Bug will scan for any attached SCSI devices. After a short delay, a list of SCSI devices will be displayed. 147Bug will ask if LUNs should be assigned from SCSI ids, to which you should answer Y. You should also answer Y when asked if the information is to be saved to NVRAM. 167Bug does not prompt for this information. The following installation instructions will assume that your target SCSI disk drive appears at SCSI-id 0. If you have a tape drive, the instruc- tions assume is is configured for SCSI-id 5. When the RAMDISK root boots, NetBSD will refer to these devices as 'sd0' and 'rst0' respectively. You may wish to note these down; you'll be using them a lot. :-) IInnssttaalllliinngg tthhee NNeettBBSSDD SSyysstteemm Installing NetBSD is a relatively complex process, but if you have this document in hand it should not be too difficult. There are several ways to install NetBSD onto your disk. If your machine has a tape drive the easiest way is "Installing from tape" (details be- low). If your machine is on a network with a suitable NFS server, then "Installing from NFS" is the next best method. Otherwise, if you have another mvme68k machine running NetBSD you can initialize the disk on that machine and then move the disk. _I_n_s_t_a_l_l_i_n_g _f_r_o_m _t_a_p_e_: Create the NetBSD/mvme68k _VER boot tape as described in the section en- titled "Preparing a boot tape". Then, with the tape in the drive, type the following at the 1x7Bug prompt: 147-Bug> bboo 55 167-Bug> bboo 00,,5500 As mentioned earlier, this assumes your tape is jumpered for SCSI-id 5. As the tape loads (which may take 20 to 30 seconds), you will see a se- ries of status messages. It may be useful if you can capture these mes- sages to a file, or a scrollable xterm window. In particular, you should make a note of the lines which describe the geometry of the SCSI disks detected by NetBSD. They are of the form: sd0 at scsibus0 targ 0 lun 0: SCSI1 0/direct fixed sd0: 148MB, 967 cyl, 9 head, 35 sec, 512 bytes/sect x 304605 sectors The information of most interest is the number of sectors; here it's 304605. You will need this number when you come to create a disklabel for that drive. RAM address from VMEbus = $00000000 Booting from: VME147, Controller 5, Device 0 Loading: Operating System Volume: NBSD IPL loaded at: $003F0000 >> BSD MVME147 tapeboot [$Revision: 1.5.2.1 $] 578616+422344+55540+[46032+51284]=0x11a6e4 Start @ 0x8000 ... Copyright (c) 1996, 1997 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 1.3 (RAMDISK) #1: Sun Dec 21 16:19:04 GMT 1997 steve@soapy.mctavish.demon.co.uk:/usr/src/sys/arch/mvme68k/compile/RAMDISK Motorola MVME-147S: 25MHz MC68030 CPU+MMU, MC68882 FPU real mem = 7237632 avail mem = 6381568 using 88 buffers containing 360448 bytes of memory mainbus0 (root) pcc0 at mainbus0: Peripheral Channel Controller, rev 0, vecbase 0x40 clock0 at pcc0 offset 0x0 ipl 5: Mostek MK48T02, 2048 bytes of NVRAM . . _N_o_t_e The exact text of the messages will vary depending on which MVME147 or MVME167 variant you're using. Finally, you will see the following "welcome" message: Welcome to the NetBSD/mvme68k RAMDISK root! This environment is designed to do only four things: 1: Partititon your disk (use the command: edlabel /dev/rsd0c) 2: Copy a miniroot image into the swap partition (/dev/rsd0b) 3: Make that partition bootable (using 'installboot') 4: Reboot (using the swap partition, i.e. /dev/sd0b). Copying the miniroot can be done several ways, allowing the source of the miniroot image to be on any of these: boot tape, NFS server, TFTP server, rsh server The easiest is loading from tape, which is done as follows: mt -f /dev/nrst0 rewind mt -f /dev/nrst0 fsf 3 dd bs=8k if=/dev/nrst0 of=/dev/rsd0b (For help with other methods, please see the install notes.) To reboot using the swap partition after running installboot, first use "halt", then at the Bug monitor prompt use a command like: 1x7Bug> bo 0,,b: To view this message again, type: cat /.welcome ssh: You must now create a disklabel on the disk you wish to use for the root filesystem. This will usually be sd0. The disklabel is used by NetBSD to identify the starting block and size of each partition on the disk. Partitions are named sd0a, sd0b, sd0c etc, up to sd0h. The mvme68k port of NetBSD makes some assumptions about the first three partitions on a boot disk: sd0a The root filesystem. sd0b The swap partition. sd0c The whole disk. Also known as the _r_a_w _p_a_r_t_i_t_i_o_n. The _r_a_w _p_a_r_t_i_t_i_o_n is special; NetBSD is able to use it even if the disk has no label. You should never create a filesystem on the Raw Partition, even on a non-boot disk. It is good practice to put _/_u_s_r on a different partition than / (sd0a). So, the first available partition for _/_u_s_r is sd0d. Refer to the section entitled _N_e_t_B_S_D _S_y_s_t_e_m _R_e_q_u_i_r_e_m_e_n_t_s _a_n_d _S_u_p_p_o_r_t_e_d _D_e_v_i_c_e_s for information on the recommended sizes of the /, _/_u_s_r and _s_w_a_p partitions. You are not required to define any partitions beyond sd0d, but if you have a large disk drive, you might want to create several other parti- tions for filesystems such as _/_h_o_m_e or _/_u_s_r_/_s_r_c_. Note that at this time you are only required to partition the root/boot disk; you will get the opportunity to partition any other disks in your system from the main mmiinniirroooott installation program. To create the disklabel and partitions, use the edlabel program, passing it the name of the Raw Partition of your root/boot disk. ssh: eeddllaabbeell //ddeevv//rrssdd00cc edlabel menu: print - display the current disk label modify - prompt for changes to the label write - write the new label to disk quit - terminate program edlabel> The program shows what commands it recognizes; _p_r_i_n_t, _m_o_d_i_f_y, _w_r_i_t_e and _q_u_i_t. It will accept the first letter of a command if you don't feel like typing each one in full. To start creating the basic partitions, you should enter mm (modify) at the edlabel prompt, then enter the letter corresponding to the first partition, aa. edlabel> mm modify subcommands: @: modify disk parameters a-h: modify partition s: standarize geometry q: quit this subcommand edlabel/modify> aa a (root) 0 (0/00/00) 0 (0/00/00) unused start as or : 00 length as or : 3388000000 type: 44..22BBSSDD edlabel/modify> When you enter the start and length of a partition, you can use either blocks or cylinder/track/sector notation. If this is the first time you've partitioned a disk for NetBSD, it's probably easiest to use block notation. The above example creates partition 'a', starting at block zero and with a size of 38000 blocks. Note that the usual size of a block is 512 bytes, so this creates a 19Mb partition. The 'type' of the partition should be "4.2BSD", otherwise you won't be able to create a filesystem on it. Next, create a swap partition (b). Note that the minimum size of this swap partition should be 8Mb, otherwise you won't be able to use a mini- root to complete the NetBSD installation! edlabel/modify> bb b (swap) 0 (0/00/00) 0 (0/00/00) unused start as or : 3388000000 length as or : 3322776688 type: sswwaapp edlabel/modify> Here, we specify a value for 'start' such that the swap partition follows immediately after partition 'a', i.e. 38000. The length of the swap par- tition should be a multiple of the amount of RAM you have in your system. Here, I've chosen 32768, or 16Mb. The next available block on the drive is thus 38000 + 32768. We will use this to create partition 'd' for our /usr filesystem. (Note that for a busy system, or a system with more than 8Mb of RAM, you'll be better off with a 32 or 64Mb swap partition.) edlabel/modify> dd d (user) 0 (0/00/00) 0 (0/00/00) unused start as or : 7700776688 length as or : 223333883377 type: 44..22BBSSDD edlabel/modify> qq edlabel> As you can see, I've chosen to assign the remainder of the disk to _/_u_s_r. Since there are 304605 sectors on the example disk (did you remember to note down the number of sectors on your disk during boot?), and partition dd starts at sector 70768, a simple bit of arithmetic (304605 - 70768) gives dd a size of 233837. You now need to write this new disklabel, together with the partition de- tails you've just entered, to disk. You might also try the 'p' command to view the partitions. Once written, you can quit back to ssh using 'q'. edlabel> pp type_num: 4 sub_type: 0 type_name: SCSI disk pack_name: fictitious bytes/sector: 512 sectors/track: 35 tracks/cylinder: 9 cylinders: 967 sectors/cylinder: 315 partition start (c/t/s) nblks (c/t/s) type a (root) 0 (0/00/00) 38000 (120/05/25)* 4.2BSD b (swap) 38000 (120/05/25)* 32768 (104/00/08)* swap c (disk) 0 (0/00/00) 304605 (967/00/00) unused d (user) 70768 (224/05/33)* 233837 (742/03/02)* 4.2BSD edlabel> ww edlabel> qq ssh: Now that your disk's partitioned, you need to get the proper installation miniroot image onto it. The miniroot image is designed to be copied into the swap partition of your disk. This is a safe place which won't be overwritten by the installation procedure. From the ssh prompt, use the following commands to copy the miniroot image from tape to swap (b). ssh: mmtt --ff //ddeevv//nnrrsstt00 rreewwiinndd ssh: mmtt --ff //ddeevv//nnrrsstt00 ffssff 33 ssh: dddd bbss==88kk iiff==//ddeevv//nnrrsstt00 ooff==//ddeevv//rrssdd00bb The disk and the miniroot must now be made bootable using the installboot(8) command. To do this, issue the following commands: ssh: mmoouunntt //ddeevv//ssdd00bb //mmnntt ssh: iinnssttaallllbboooott //mmnntt//uussrr//mmddeecc//bboooottssdd //bboooottxxxx //ddeevv//rrssdd00bb ssh: uummoouunntt //ddeevv//ssdd00bb You can now shutdown the system. ssh: hhaalltt signal 15 ssh: syncing disks... done unmounting /mnt (/dev/sd1b)... unmounting / (root_device)... halted 147-Bug> rreesseett Reset Local SCSI Bus [Y,N] N? yy Automatic reset of known SCSI Buses on RESET [Y,N] Automatic0 Cold/Warm Reset flag [C,W] = C? Execute Soft Reset [Y,N] N? yy Resetting the MVME167 board is very similar. You should now reboot from that just installed miniroot. See the section entitled "Booting the mini- root" for details. _I_n_s_t_a_l_l_i_n_g _f_r_o_m _N_F_S_: Before you can install from NFS, you must have already configured your NFS server to support your machine as a bootable client. Instructions for configuring the server are found in the section entitled "Getting the NetBSD System onto Useful Media" above. To get started on the MVME147, you need to download "sboot" into RAM (you will find ssbboooott in the _i_n_s_t_a_l_l directory of the mvme68k distribution). You can either do that through the console line or through a 2nd serial connection. For example, an MVME147 connected to a sun4/110 and accessed via tip(1) can be loaded as follows: lo 0 ~Ccat sboot go 4000 Which will look like this: 147-Bug> lloo 00 ~CLocal command? ccaatt ssbboooott _a_w_a_y _f_o_r _1_1 _s_e_c_o_n_d_s ! 147-Bug> gg 44000000 Effective address: 00004000 sboot: serial line bootstrap program (end = 6018) >>> Now, if you want to do it through serial line 1, then connect serial line one to a machine. At the 147-Bug> prompt type ttmm 11 You should then login to the machine it is connected to. Then hit "^A" to escape to Bug. do lloo 11;;xx==ccaatt ssbboooott _._._. then when that is done you can reconnect ttmm 11 and logout. Then do ggoo 44000000 and you've got the ">>> " prompt of sboot. Once you've got the ">>> " prompt, you can boot the RAMDISK kernel from the server: >>> b le0: ethernet address: 8:0:3e:20:cb:87 My ip address is: 192.168.1.4 Server ip address is: 192.168.1.1 4800 Download was a success! See below for the next step in booting MVME147. The MVME167 is able to download netboot directly using TFTP. To enable this, you must first configure the networking parameters on the board as described in the section entitled "Preparing your System for NetBSD In- stallation. On a properly configured MVME167, all you need to type is: 167-Bug> nnbboo For both boards, the boot messages are very similar: Start @ 0x8000 ... >> BSD MVME147 netboot (via sboot) [$Revision: 1.5.2.1 $] device: le0 attached to 08:00:3e:20:cb:87 boot: client IP address: 192.168.1.4 boot: client name: soapy root addr=192.168.1.1 path=/export/soapy 578616+422344+55540+[46032+51284]=0x11a6e4 Start @ 0x8000 ... Copyright (c) 1996, 1997 The NetBSD Foundation, Inc. All rights reserved. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. NetBSD 1.3 (RAMDISK) #1: Sun Dec 21 16:19:04 GMT 1997 steve@soapy.mctavish.demon.co.uk:/usr/src/sys/arch/mvme68k/compile/RAMDISK Motorola MVME-147S: 25MHz MC68030 CPU+MMU, MC68882 FPU real mem = 7237632 avail mem = 6381568 using 88 buffers containing 360448 bytes of memory mainbus0 (root) pcc0 at mainbus0: Peripheral Channel Controller, rev 0, vecbase 0x40 clock0 at pcc0 offset 0x0 ipl 5: Mostek MK48T02, 2048 bytes of NVRAM . . After the boot program loads the RAMDISK kernel, you should see the wel- come screen as shown in the "tape boot" section above. You now need to create a disklabel with partition information on the SCSI disk on which you intend to create your root filesystem. Follow the in- structions in the previous section entitled "Installing from tape" to do this. (But stop short of the part which describes how to copy the mini- root from tape.) You must now configure the network interface before you can access the NFS server containing the miniroot image. For example the command: ssh: iiffccoonnffiigg llee00 iinneett 119922..116688..11..44 uupp will bring up the MVME147 network interface 'le0' with that address. The command: ssh: iiffccoonnffiigg iiee00 iinneett 119922..116688..11..44 uupp will bring up the MVME167 network interface 'ie0' with that address. The next step is to copy the miniroot from your server. This can be done us- ing either NFS or remote shell. (In the examples that follow, the server has IP address 192.168.1.1) You may then need to add a default route if the server is on a different subnet: ssh: rroouuttee aadddd ddeeffaauulltt 119922..116688..11..22 11 You can look at the route table using: ssh: rroouuttee sshhooww Now mount the NFS filesystem containing the miniroot image: ssh: mmoouunntt --rr 119922..116688..11..11:://eexxppoorrtt//ssooaappyy //mmnntt The procedure is simpler if you have space for an expanded (not com- pressed) copy of the miniroot image. In that case: ssh: dddd bbss==88kk iiff==//mmnntt//mmiinniirroooott ooff==//ddeevv//rrssdd00bb Otherwise, you will need to use "zcat" to expand the miniroot image while copying. This is tricky because the "ssh" program (small shell) does not handle sh(1) pipeline syntax. Instead, you first run the reader in the background with its input set to /dev/pipe and then run the other program in the foreground with its output to /dev/pipe. The result looks like this: ssh: rruunn --bbgg dddd oobbss==88kk iiff==//ddeevv//ppiippee ooff==//ddeevv//rrssdd00bb ssh: rruunn --oo //ddeevv//ppiippee zzccaatt //mmnntt//iinnssttaallll//mmiinniirroooott..ggzz To load the miniroot using rsh to the server, you would use a pair of commands similar to the above. Here is another example: ssh: rruunn --bb dddd oobbss==88kk iiff==//ddeevv//ppiippee ooff==//ddeevv//rrssdd00bb ssh: rruunn --oo //ddeevv//ppiippee rrsshh 119922..116688..11..11 zzccaatt mmiinniirroooott..ggzz You must now make the disk bootable. Refer to the previous section on in- stalling from tape, where it describes how to run 'installboot'. This is immediately following the part which explains how to copy the miniroot from tape. _B_o_o_t_i_n_g _t_h_e _m_i_n_i_r_o_o_t_: Assuming the miniroot is installed on partition 'b' of the disk with SC- SI-id 0, then the 147Bug boot command is: 147-Bug> bboo 00,,,,bb:: The corresponding 167Bug boot command is: 167-Bug> bboo 00,,,,,,bb:: The command line parameters above are: 00 controller (usually zero) ,,,, oorr ,,,,,, bug argument separators bb:: tell the bootstrap code to boot from partition bb You should see a bunch of boot messages, followed by messages from the miniroot kernel just as you did when the RAMDISK kernel booted. You will then be prompted to enter the root device. Since the miniroot was booted from the swap partition, you should enter 'sd0b'. You will then be asked for the swap device and filesystem type. Just press return twice to accept the defaults. When asked to enter a terminal type, either accept the default, or use whatever the TERM environment variable is set to in the shell of your host system: boot device: sd0 root device (default sd0a): ssdd00bb dump device (default sd0b): _(_r_e_t_u_r_n_) file system (default generic): _(_r_e_t_u_r_n_) root on sd0b dumps on sd0b mountroot: trying ffs... root file system type: ffs init: copying out path `/sbin/init' 11 erase ^H, werase ^W, kill ^U, intr ^C Terminal type? [vt100] _r_e_t_u_r_n Congratulations! The system should now be running the miniroot installa- tion program. MMiinniirroooott iinnssttaallll pprrooggrraamm:: The miniroot's install program is very simple to use. It will guide you through the entire process, and is well automated. Additional improve- ments are planned for future releases. The miniroot's install program will: ++oo Allow you to place disklabels on additional disks. The disk we are installing on should already have been partitioned using the RAMDISK kernel. Note that partition sizes and offsets are expressed in sectors. When you fill out the disklabel, you will need to specify partition types and filesystem parameters. If you're unsure what the these values should be, use the following defaults: fstype: 4.2BSD fsize: 1024 bsize: 4096 cpg: 16 If the partition will be a swap partition, use the following: fstype: swap fsize: 0 (or blank) bsize: 0 (or blank) cpg: 0 (or blank) Note that partition 'c' is special; it covers then entire disk and should not be assigned to a filesystem. The number of partitions is currently fixed at 8. ++oo Create filesystems on target partitions. ++oo Allow you to set up your system's network configuration. Remember to specify host names without the domain name appended to the end. For example use `foo' instead of `foo.bar.org'. If, during the process of configuring the network interfaces, you make a mistake, you will be able to re-configure that interface by simply selecting it for configuration again. ++oo Mount target filesystems. You will be given the opportunity to manu- ally edit the resulting /etc/fstab. ++oo Extract binary sets from the media of your choice. ++oo Copy configuration information gathered during the installation pro- cess to your root filesystem. ++oo Make device nodes in your root filesystem. ++oo Copy a new kernel onto your root partition. ++oo Install a new boot block. ++oo Check your filesystems for integrity. First-time installation on a system through a method other than the in- stallation program is possible, but strongly discouraged. PPoosstt iinnssttaallllaattiioonn sstteeppss 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 _/_e_t_c_/_r_c_._c_o_n_f If you haven't done any configuration of _/_e_t_c_/_r_c_._c_o_n_f, 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 vvtt222200 (or whatever is appropriate for your terminal type) and hit return. At this point, you need to configure at least one file in the _/_e_t_c directory. Change to the _/_e_t_c directory and take a look at the _/_e_t_c_/_r_c_._c_o_n_f 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 _/_u_s_r directory is on a separate partition and you do not know how to use 'ed' or 'ex', you will have to mount your _/_u_s_r partition to gain access to 'vi'. Do the follow- ing: mmoouunntt //uussrr eexxppoorrtt TTEERRMM==vvtt222200 If you have _/_v_a_r on a seperate partition, you need to repeat that step for it. After that, you can edit _/_e_t_c_/_r_c_._c_o_n_f with vi(1). When you have finished, type eexxiitt at the prompt to leave the single-user shell and continue with the multi-user boot. Other values that need to be set in _/_e_t_c_/_r_c_._c_o_n_f for a networked en- vironment are _h_o_s_t_n_a_m_e and possibly _d_e_f_a_u_l_t_r_o_u_t_e, furthermore add an _i_f_c_o_n_f_i_g___i_n_t for your interface , along the lines of ifconfig_de0="inet 123.45.67.89 netmask 255.255.255.0" or, if you have _m_y_n_a_m_e_._m_y_._d_o_m in _/_e_t_c_/_h_o_s_t_s: ifconfig_de0="inet myname.my.dom netmask 255.255.255.0" To enable proper hostname resolution, you will also want to add an _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f 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 _/_e_t_c that are new to NetBSD 1.4 and may require modi- fication or setting up include _/_e_t_c_/_m_a_i_l_e_r_._c_o_n_f, _/_e_t_c_/_n_s_s_w_i_t_c_h_._c_o_n_f and _/_e_t_c_/_w_s_c_o_n_s_._c_o_n_f. 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, _d_o _n_o_t edit _/_e_t_c_/_p_a_s_s_w_d 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 _/_u_s_r_/_X_1_1_R_6_/_l_i_b_/_X_1_1_/_d_o_c for information. Don't forget to add _/_u_s_r_/_X_1_1_R_6_/_b_i_n 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 ffttpp::////ffttpp..nneettbbssdd..oorrgg//ppuubb//NNeettBBSSDD//ppaacckkaaggeess// Package sources for compiling packages can be obtained by retrieving the file ffttpp::////ffttpp..nneettbbssdd..oorrgg//ppuubb//NNeettBBSSDD//NNeettBBSSDD-- ccuurrrreenntt//ttaarr__ffiilleess//ppkkggssrrcc..ttaarr..ggzz and extracting it into _/_u_s_r_/_p_k_g_s_r_c. See _/_u_s_r_/_p_k_g_s_r_c_/_R_E_A_D_M_E then for more information. 6. Misc ++oo To adjust the system to your local timezone, point the _/_e_t_c_/_l_o_c_a_l_t_i_m_e symlink to the appropriate file under _/_u_s_r_/_s_h_a_r_e_/_z_o_n_e_i_n_f_o. ++oo Edit _/_e_t_c_/_a_l_i_a_s_e_s to forward root mail to the right place (run newaliases(1) afterwards.) ++oo The _/_e_t_c_/_s_e_n_d_m_a_i_l_._c_f file will almost definitely need to be ad- justed; files aiding in this can be found in _/_u_s_r_/_s_h_a_r_e_/_s_e_n_d_m_a_i_l. See the README file there for more infor- mation. ++oo Edit _/_e_t_c_/_r_c_._l_o_c_a_l to run any local daemons you use. ++oo Many of the _/_e_t_c files are documented in section 5 of the manu- al; so just invoking mmaann _f_i_l_e_n_a_m_e is likely to give you more information on these files. UUppggrraaddiinngg aa pprreevviioouussllyy--iinnssttaalllleedd NNeettBBSSDD SSyysstteemm It is possible to easily upgrade your existing NetBSD/mvme68k system us- ing the upgrade program in the miniroot. If you wish to upgrade your sys- tem by this method, simply select the `upgrade' option once the miniroot has booted. The upgrade program with then guide you through the proce- dure. The upgrade program will: ++oo Enable the network based on your system's current network configura- tion. ++oo Mount your existing filesystems. ++oo Extract binary sets from the media of your choice. ++oo Fixup your system's existing /etc/fstab, and if necessary, changing the occurrences of `ufs' to `ffs' and let you edit the resulting file. ++oo Make new device nodes in your root filesystem. ++oo Copy a new kernel onto your root partition. NOTE: the existing ker- nel WILL NOT be backed up; doing so would be pointless, since older kernels may not be capable of running NetBSD 1.4.2 executables. ++oo Install a new boot block. ++oo Check your filesystems for integrity. While using the miniroot's upgrade program is the preferred method of up- grading your system, it is possible to upgrade your system manually. To do this, follow the following procedure: ++oo Place _at least_ the `base' binary set in a filesystem accessible to the target machine. A local filesystem is preferred, since the NFS subsystem in the NetBSD 1.4.2 kernel may be incompatible with your old binaries. ++oo Back up your pre-existing kernel and copy the _VER kernel into your root partition. ++oo Reboot with the _VER kernel into single-user mode. ++oo Check all filesystems: //ssbbiinn//ffsscckk --ppff ++oo Mount all local filesystems: //ssbbiinn//mmoouunntt --aa --tt nnoonnffss ++oo If you keep /usr or /usr/share on an NFS server, you will want to mount those filesystems as well. To do this, you will need to enable the network: sshh //eettcc//nneettssttaarrtt ++oo Run the update(8) daemon, to ensure that new programs are actually stored on disk. uuppddaattee ++oo Make sure you are in the root filesystem and extract the `base' bina- ry set: ccdd // ppaaxx --zzrrvvppee --ff _/_p_a_t_h_/_t_o_/bbaassee..ttggzz ++oo Delete system files in /sbin which now live in /usr/sbin: ccdd //ssbbiinn rrmm --ff mmoouunnttdd rrttqquueerryy qquuoottaacchheecckk dduummppffss dduummppllffss ++oo Install a new boot block (you may need to be running in single-user mode to do this...): ccdd //uussrr//mmddeecc ccpp bboooottssdd //..bboooottssdd ..//iinnssttaallllbboooott //..bboooottssdd bboooottxxxx << _r_o_o_t_-_d_i_s_k (_r_o_o_t_-_d_i_s_k might be, e.g., //ddeevv//rrssdd00aa) ++oo Sync the filesystems: ssyynncc ++oo At this point you may extract any other binary sets you may have placed on local filesystems, or you may wish to extract additional sets at a later time. To extract these sets, use the following com- mands: ccdd // ppaaxx --zzrrvvppee --ff _p_a_t_h___t_o___s_e_t _N_o_t_e You _S_H_O_U_L_D _N_O_T extract the eettcc set if upgrading. Instead, you should extract that set into another area and carefully merge the changes by hand. CCoommppaattiibbiilliittyy IIssssuueess WWiitthh PPrreevviioouuss NNeettBBSSDD RReelleeaasseess 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.2 _N_o_t_e Only issues effecting an upgrade from NetBSD 1.3 or NetBSD 1.3.x are decribed here. ++oo "machine" directory/link in "/usr/include" Description Some architecture may fail to install the ccoommpp 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 # rrmm --rr //uussrr//iinncclluuddee//mmaacchhiinnee to remove the old directory and it contents and reinstall the ccoommpp set. UUssiinngg oonnlliinnee NNeettBBSSDD ddooccuummeennttaattiioonn 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 ++oo intro(1), ++oo man(1), ++oo apropros(1), ++oo passwd(1), and ++oo 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 _m_a_n command is used to view the documentation on a topic, and is started by entering mmaann [_s_e_c_t_i_o_n] _t_o_p_i_c. 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 mmaann ppaasssswwdd to read the documentation for passwd(1). To view the documentation for passwd(5)m enter mmaann 55 ppaasssswwdd instead. If you are unsure of what man page you are looking for, enter aapprrooppooss _s_u_b_j_e_c_t_-_w_o_r_d where _s_u_b_j_e_c_t_-_w_o_r_d is your topic of interest; a list of possibly related man pages will be displayed. AAddmmiinniissttrriivviiaa 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 _m_a_j_o_r_d_o_m_o_@_N_e_t_B_S_D_._O_R_G. 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: _n_e_t_b_s_d_- _c_o_m_m_e_n_t_s_@_N_e_t_B_S_D_._O_R_G. 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: _n_e_t_b_s_d_-_b_u_g_s_@_N_e_t_B_S_D_._O_R_G. 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: _n_e_t_b_s_d_-_h_e_l_p_@_N_e_t_B_S_D_._O_R_G. 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. TThhaannkkss ggoo ttoo ++oo 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. ++oo 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. ++oo 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. ++oo Vixie Enterprises for hosting the NetBSD FTP, WWW and SUP server. ++oo Redback Networks, Inc. for hosting the NetBSD Mail server. ++oo 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. ++oo Dave Burgess _b_u_r_g_e_s_s_@_c_y_n_j_u_t_._i_n_f_o_n_e_t_._n_e_t has been maintaining the 386BSD/NetBSD/FreeBSD FAQ for quite some time, and deserves to be recognized for it. ++oo 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.) ++oo 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!) WWee aarree...... (in alphabetical order) _T_h_e _N_e_t_B_S_D _c_o_r_e _g_r_o_u_p_: Alistair Crooks _a_g_c_@_N_e_t_B_S_D_._O_R_G Jun-ichiro itojun Hagino _i_t_o_j_u_n_@_N_e_t_B_S_D_._O_R_G Frank van der Linden _f_v_d_l_@_N_e_t_B_S_D_._O_R_G Luke Mewburn _l_u_k_e_m_@_N_e_t_B_S_D_._O_R_G Christos Zoulas _c_h_r_i_s_t_o_s_@_N_e_t_B_S_D_._O_R_G _T_h_e _p_o_r_t_m_a_s_t_e_r_s _(_a_n_d _t_h_e_i_r _p_o_r_t_s_)_: Mark Brinicombe _m_a_r_k_@_N_e_t_B_S_D_._O_R_G aarrmm3322 Jeremy Cooper _j_e_r_e_m_y_@_N_e_t_B_S_D_._O_R_G ssuunn33xx Ross Harvey _r_o_s_s_@_N_e_t_B_S_D_._O_R_G aallpphhaa Ignatios Souvatzis _i_s_@_N_e_t_B_S_D_._O_R_G aammiiggaa Jun-ichiro itojun Hagino _i_t_o_j_u_n_@_N_e_t_B_S_D_._O_R_G sshh33 Eduardo Horvath _e_e_h_@_N_e_t_B_S_D_._O_R_G ssppaarrcc6644 Paul Kranenburg _p_k_@_N_e_t_B_S_D_._O_R_G ssppaarrcc Anders Magnusson _r_a_g_g_e_@_N_e_t_B_S_D_._O_R_G vvaaxx Tsubai Masanari _t_s_u_b_a_i_@_N_e_t_B_S_D_._O_R_G mmaaccppppcc Tsubai Masanari _t_s_u_b_a_i_@_N_e_t_B_S_D_._O_R_G nneewwssmmiippss Minoura Makoto _m_i_n_o_u_r_a_@_N_e_t_B_S_D_._O_R_G xx6688kk Phil Nelson _p_h_i_l_@_N_e_t_B_S_D_._O_R_G ppcc553322 Scott Reynolds _s_c_o_t_t_r_@_N_e_t_B_S_D_._O_R_G mmaacc6688kk Darrin Jewell _d_b_j_@_N_e_t_B_S_D_._O_R_G nneexxtt6688kk Kazuki Sakamoto _s_a_k_a_m_o_t_o_@_N_e_t_B_S_D_._O_R_G bbeebbooxx Wolfgang Solfrank _w_s_@_N_e_t_B_S_D_._O_R_G ooffppppcc Jonathan Stone _j_o_n_a_t_h_a_n_@_N_e_t_B_S_D_._O_R_G ppmmaaxx Shin Takemura _t_a_k_e_m_u_r_a_@_N_e_t_B_S_D_._O_R_G hhppccmmiippss Jason Thorpe _t_h_o_r_p_e_j_@_N_e_t_B_S_D_._O_R_G hhpp330000 Frank van der Linden _f_v_d_l_@_N_e_t_B_S_D_._O_R_G ii338866 Leo Weppelman _l_e_o_@_N_e_t_B_S_D_._O_R_G aattaarrii Nathan Williams _n_a_t_h_a_n_w_@_N_e_t_B_S_D_._O_R_G ssuunn33 Steve Woodford _s_c_w_@_N_e_t_B_S_D_._O_R_G mmvvmmee6688kk _T_h_e _N_e_t_B_S_D _1_._4_._2 _R_e_l_e_a_s_e _E_n_g_i_n_e_e_r_i_n_g _t_e_a_m_: Chris G. Demetriou _c_g_d_@_N_e_t_B_S_D_._O_R_G Havard Eidnes _h_e_@_N_e_t_B_S_D_._O_R_G Ted Lemon _m_e_l_l_o_n_@_N_e_t_B_S_D_._O_R_G Perry Metzger _p_e_r_r_y_@_N_e_t_B_S_D_._O_R_G Curt Sampson _c_j_s_@_N_e_t_B_S_D_._O_R_G _D_e_v_e_l_o_p_e_r_s _a_n_d _o_t_h_e_r _c_o_n_t_r_i_b_u_t_o_r_s_: Steve Allen _w_o_r_m_e_y_@_N_e_t_B_S_D_._O_R_G Julian Assange _p_r_o_f_f_@_N_e_t_B_S_D_._O_R_G Lennart Augustsson _a_u_g_u_s_t_s_s_@_N_e_t_B_S_D_._O_R_G Christoph Badura _b_a_d_@_N_e_t_B_S_D_._O_R_G Robert V. Baron _r_v_b_@_N_e_t_B_S_D_._O_R_G Erik Berls _c_y_b_e_r_@_N_e_t_B_S_D_._O_R_G John Birrell _j_b_@_N_e_t_B_S_D_._O_R_G Mason Loring Bliss _m_a_s_o_n_@_N_e_t_B_S_D_._O_R_G Manuel Bouyer _b_o_u_y_e_r_@_N_e_t_B_S_D_._O_R_G John Brezak _b_r_e_z_a_k_@_N_e_t_B_S_D_._O_R_G Allen Briggs _b_r_i_g_g_s_@_N_e_t_B_S_D_._O_R_G Aaron Brown _a_b_r_o_w_n_@_N_e_t_B_S_D_._O_R_G David Brownlee _a_b_s_@_N_e_t_B_S_D_._O_R_G Frederick Bruckman _f_r_e_d_b_@_N_e_t_B_S_D_._O_R_G Jon Buller _j_o_n_b_@_N_e_t_B_S_D_._O_R_G Simon Burge _s_i_m_o_n_b_@_N_e_t_B_S_D_._O_R_G Dave Burgess _b_u_r_g_e_s_s_@_c_y_n_j_u_t_._i_n_f_o_n_e_t_._n_e_t Robert Byrnes _b_y_r_n_e_s_@_N_e_t_B_S_D_._o_r_g D'Arcy J.M. Cain _d_a_r_c_y_@_N_e_t_B_S_D_._O_R_G Dave Carrel _c_a_r_r_e_l_@_N_e_t_B_S_D_._O_R_G Bill Coldwell _b_i_l_l_c_@_N_e_t_B_S_D_._O_R_G Julian Coleman _j_d_c_@_N_e_t_B_S_D_._O_R_G Chuck Cranor _c_h_u_c_k_@_N_e_t_B_S_D_._O_R_G Aidan Cully _a_i_d_a_n_@_N_e_t_B_S_D_._O_R_G Johan Danielsson _j_o_d_a_@_N_e_t_B_S_D_._O_R_G Matt DeBergalis _d_e_b_e_r_g_@_N_e_t_B_S_D_._O_R_G Rob Deker _d_e_k_e_r_@_N_e_t_B_S_D_._O_R_G Chris G. Demetriou _c_g_d_@_N_e_t_B_S_D_._O_R_G Jaromir Dolecek _j_d_o_l_e_c_e_k_@_N_e_t_B_S_D_._O_R_G Andy Doran _a_d_@_N_e_t_B_S_D_._O_R_G Roland Dowdeswell _e_l_r_i_c_@_N_e_t_B_S_D_._O_R_G Matthias Drochner _d_r_o_c_h_n_e_r_@_N_e_t_B_S_D_._O_R_G Jun Ebihara _j_u_n_@_N_e_t_B_S_D_._O_R_G Havard Eidnes _h_e_@_N_e_t_B_S_D_._O_R_G Enami Tsugutomo _e_n_a_m_i_@_N_e_t_B_S_D_._O_R_G Bernd Ernesti _v_e_e_g_o_@_N_e_t_B_S_D_._O_R_G Erik Fair _f_a_i_r_@_N_e_t_B_S_D_._O_R_G Hubert Feyrer _h_u_b_e_r_t_f_@_N_e_t_B_S_D_._O_R_G Thorsten Frueauf _f_r_u_e_a_u_f_@_N_e_t_B_S_D_._O_R_G Castor Fu _c_a_s_t_o_r_@_N_e_t_B_S_D_._O_R_G Brian R. Gaeke _b_r_g_@_d_g_a_t_e_._o_r_g Thomas Gerner _t_h_o_m_a_s_@_N_e_t_B_S_D_._O_R_G Simon J. Gerraty _s_j_g_@_N_e_t_B_S_D_._O_R_G Justin Gibbs _g_i_b_b_s_@_N_e_t_B_S_D_._O_R_G Adam Glass _g_l_a_s_s_@_N_e_t_B_S_D_._O_R_G Michael Graff _e_x_p_l_o_r_e_r_@_N_e_t_B_S_D_._O_R_G Brian C. Grayson _b_g_r_a_y_s_o_n_@_N_e_t_B_S_D_._O_R_G Brad Grantham _g_r_a_n_t_h_a_m_@_t_e_n_o_n_._c_o_m Matthew Green _m_r_g_@_N_e_t_B_S_D_._O_R_G Juergen Hannken-Illjes _h_a_n_n_k_e_n_@_N_e_t_B_S_D_._O_R_G Charles M. Hannum _m_y_c_r_o_f_t_@_N_e_t_B_S_D_._O_R_G Eric Haszlakiewicz _e_r_h_@_N_e_t_B_S_D_._O_R_G HAYAKAWA Koichi _h_a_y_a_@_N_e_t_B_S_D_._O_R_G Rene Hexel _r_h_@_N_e_t_B_S_D_._O_R_G Michael L. Hitch _m_h_i_t_c_h_@_N_e_t_B_S_D_._O_R_G Christian E. Hopps _c_h_o_p_p_s_@_N_e_t_B_S_D_._O_R_G Ken Hornstein _k_e_n_h_@_N_e_t_B_S_D_._O_R_G Marc Horowitz _m_a_r_c_@_N_e_t_B_S_D_._O_R_G Dean Huxley _d_e_a_n_@_n_e_t_b_s_d_._o_r_g ITOH Yasufumi _i_t_o_h_y_@_N_e_t_B_S_D_._O_R_G Matthew Jacob _m_j_a_c_o_b_@_N_e_t_B_S_D_._O_R_G Lonhyn T. Jasinskyj _l_o_n_h_y_n_@_N_e_t_B_S_D_._O_R_G Chris Jones _c_j_o_n_e_s_@_N_e_t_B_S_D_._O_R_G Soren Jorvang _s_o_r_e_n_@_N_e_t_B_S_D_._O_R_G Antti Kantee _p_o_o_k_a_@_N_e_t_B_S_D_._O_R_G Lawrence Kesteloot _k_e_s_t_e_l_o_o_@_c_s_._u_n_c_._e_d_u Thomas Klausner _w_i_z_@_N_e_t_B_S_D_._O_R_G Klaus Klein _k_l_e_i_n_k_@_N_e_t_B_S_D_._O_R_G John Kohl _j_t_k_@_N_e_t_B_S_D_._O_R_G Kevin Lahey _k_m_l_@_N_e_t_B_S_D_._O_R_G Johnny C. Lam _j_l_a_m_@_N_e_t_B_S_D_._O_R_G Martin J. Laubach _m_j_l_@_N_e_t_B_S_D_._O_R_G Ted Lemon _m_e_l_l_o_n_@_N_e_t_B_S_D_._O_R_G Joel Lindholm _j_o_e_l_@_N_e_t_B_S_D_._O_R_G Mike Long _m_i_k_e_l_@_N_e_t_B_S_D_._O_R_G Warner Losh _i_m_p_@_N_e_t_B_S_D_._O_R_G Brett Lymn _b_l_y_m_n_@_N_e_t_B_S_D_._O_R_G Paul Mackerras _p_a_u_l_u_s_@_N_e_t_B_S_D_._O_R_G Dan McMahill _d_m_c_m_a_h_i_l_l_@_N_e_t_B_S_D_._O_R_G Neil J. McRae _n_e_i_l_@_N_e_t_B_S_D_._O_R_G Perry Metzger _p_e_r_r_y_@_N_e_t_B_S_D_._O_R_G der Mouse _m_o_u_s_e_@_N_e_t_B_S_D_._O_R_G Joseph Myers _j_s_m_@_N_e_t_B_S_D_._O_R_G Ken Nakata _k_e_n_n_@_N_e_t_B_S_D_._O_R_G Bob Nestor _r_n_e_s_t_o_r_@_N_e_t_B_S_D_._O_R_G Tohru Nishimura _n_i_s_i_m_u_r_a_@_N_e_t_B_S_D_._O_R_G Masaru Oki _o_k_i_@_N_e_t_B_S_D_._O_R_G Greg Oster _o_s_t_e_r_@_N_e_t_B_S_D_._O_R_G Herb Peyerl _h_p_e_y_e_r_l_@_N_e_t_B_S_D_._O_R_G Matthias Pfaller _m_a_t_t_h_i_a_s_@_N_e_t_B_S_D_._O_R_G Dante Profeta _d_a_n_t_e_@_N_e_t_B_S_D_._O_R_G Chris Provenzano _p_r_o_v_e_n_@_N_e_t_B_S_D_._O_R_G Waldi Ravens _w_a_l_d_i_@_m_o_a_c_s_._i_n_d_i_v_._n_l_._n_e_t Darren Reed _d_a_r_r_e_n_r_@_N_e_t_B_S_D_._O_R_G Michael Richardson _m_c_r_@_N_e_t_B_S_D_._O_R_G Tim Rightnour _g_a_r_b_l_e_d_@_N_e_t_B_S_D_._O_R_G Gordon Ross _g_w_r_@_N_e_t_B_S_D_._O_R_G Heiko W. Rupp _h_w_r_@_N_e_t_B_S_D_._O_R_G SAITOH Masanobu _m_s_a_i_t_o_h_@_N_e_t_B_S_D_._O_R_G Curt Sampson _c_j_s_@_N_e_t_B_S_D_._O_R_G Wilfredo Sanchez _w_s_a_n_c_h_e_z_@_N_e_t_B_S_D_._O_R_G Ty Sarna _t_s_a_r_n_a_@_N_e_t_B_S_D_._O_R_G SATO Kazumi _s_a_t_o_@_N_e_t_B_S_D_._O_R_G Matthias Scheler _t_r_o_n_@_N_e_t_B_S_D_._O_R_G Karl Schilke (rAT) _r_a_t_@_N_e_t_B_S_D_._O_R_G Konrad Schroder _p_e_r_s_e_a_n_t_@_N_e_t_B_S_D_._O_R_G Tim Shepard _s_h_e_p_@_N_e_t_B_S_D_._O_R_G Takao Shinohara _s_h_i_n_@_N_e_t_B_S_D_._O_R_G Chuck Silvers _c_h_s_@_N_e_t_B_S_D_._O_R_G Thor Lancelot Simon _t_l_s_@_N_e_t_B_S_D_._O_R_G Noriyuki Soda _s_o_d_a_@_N_e_t_B_S_D_._O_R_G Bill Sommerfeld _s_o_m_m_e_r_f_e_l_d_@_N_e_t_B_S_D_._O_R_G Bill Studenmund _w_r_s_t_u_d_e_n_@_N_e_t_B_S_D_._O_R_G Kevin Sullivan _s_u_l_l_i_v_a_n_@_N_e_t_B_S_D_._O_R_G Kimmo Suominen _k_i_m_@_N_e_t_B_S_D_._O_R_G Matt Thomas _m_a_t_t_@_N_e_t_B_S_D_._O_R_G Christoph Toshok _t_o_s_h_o_k_@_N_e_t_B_S_D_._O_R_G Izumi Tsutsui _t_s_u_t_s_u_i_@_N_e_t_B_S_D_._O_R_G UCHIYAMA Yasushi _u_c_h_@_N_e_t_B_S_D_._O_R_G Todd Vierling _t_v_@_N_e_t_B_S_D_._O_R_G Aymeric Vincent _a_y_m_e_r_i_c_@_N_e_t_B_S_D_._O_R_G Paul Vixie _v_i_x_i_e_@_N_e_t_B_S_D_._O_R_G Krister Walfridsson _k_r_i_s_t_e_r_w_@_N_e_t_B_S_D_._O_R_G Lex Wennmacher _w_e_n_n_m_a_c_h_@_N_e_t_B_S_D_._O_R_G Assar Westerlund _a_s_s_a_r_@_N_e_t_B_S_D_._O_R_G Rob Windsor _w_i_n_d_s_o_r_@_N_e_t_B_S_D_._O_R_G Dan Winship _d_a_n_w_@_N_e_t_B_S_D_._O_R_G Jim Wise _j_w_i_s_e_@_N_e_t_B_S_D_._O_R_G Colin Wood _e_n_d_e_r_@_N_e_t_B_S_D_._O_R_G LLeeggaall MMuummbboo--JJuummbboo 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 Computer Systems Labora- tory at the University of Utah. This product includes software developed by the University of Vermont and State Agricultural College and Garrett A. Wollman. This product includes software developed by Charles D. Cranor. This product includes software developed by Adam Glass. This product includes software developed by Charles Hannum. This product includes software developed by David Jones. This product includes software developed by Gordon W. Ross. This product includes software developed by Steve C. Woodford. NetBSD 23 March 1999 33