INSTALLATION NOTES for NetBSD/i386 1.3.3 Be sure to read _ALL_ of this document before you try to install NetBSD/i386. What is NetBSD? ---- -- ------ The NetBSD Operating System is a fully functional UN*X-like system derived from the Berkeley Networking Release 2 (Net/2), 4.4BSD-Lite, and 4.4BSD-Lite2 sources. NetBSD runs on many architectures and is being ported to more. 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 this release wouldn't have come about. The NetBSD 1.3.3 release is a security and bug fix update for the NetBSD 1.3 release. The NetBSD 1.3 release was a landmark. Building upon the successful NetBSD 1.2 release, we have provided numerous and significant functional enhancements, including support for many new devices, integration of many bug fixes, 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 summarize the 18 months of development that went into the NetBSD 1.3 release. Some of the significant changes include: Support for machine independent device drivers has been radically improved with the addition of the "bus.h" interface, providing a high quality abstraction for machine and architecture independent device access. The bus_dma interface has also been integrated, providing a machine-independent abstraction for DMA mapping. This permits many good things, including (among many) clean multi-platform bounce buffer support. Framework support for ISA "Plug and Play" has been added, as well as support for numerous "Plug and Play" devices. APM support has been added to NetBSD/i386. An initial cut of multi-platform PCMCIA support has been added. Support for ATAPI devices (initially just ATAPI CD-ROM drives) has been added. Support for Sun 3/80s (sun3x architecture) has been added. Support for R4000 DECstations has been added. Integration/merger of 4.4BSD Lite-2 sources into userland programs has nearly been completed. Most of userland now compiles with high levels of gcc warnings turned on, which has lead to the discovery and elimination of many bugs. The i386 boot blocks have been completely replaced with a new, libsa based two stage boot system. This has permitted integration of compressed boot support (see below). Many ports now support booting of compressed kernels, and feature new "Single Floppy" install systems that boot compressed install kernels and ramdisks. We intend to do substantial work on improving ease of installation in the future. "ypserv" has been added, thus completing our support for the "yp" network information system suite. Support for the Linux "ext2fs" filesystem and for FAT32 "msdosfs" filesystems has been added. TCP now has a SYN "compressed state engine" which provides increased robustness under high levels of received SYNs (as in the case of "SYN flood" attacks.) (Much of this code was derived from sources provided by BSDI.) An initial implementation of Path MTU discovery has been integrated (though it is not turned on by default). An initial kernel based random number generator pseudodevice has been added. Several major fixes have been integrated for the VM subsystem, including the fix of a notorious VM leak, improved synchronization between mmap()ed and open()ed files, and massively improved performance in low real memory conditions. A new swap subsystem has radically improved configuration and management of swap devices and adds swapping to files. Userland ntp support, including xntpd, has been integrated. The audio subsystems have been substantially debugged and improved, and now offer substantial emulation of the OSS audio interface, thus providing the ability to cleanly run emulated Linux and FreeBSD versions of sound intensive programs. A "packages" system has been adapted from FreeBSD and will provide binary package installations for third party applications. The XFree86 X source tree has been made a supported part of the NetBSD distribution, and X servers (if built for this port), libraries and utilities are now shipped with our releases. The ftp(1) program has been made astoundingly overfunctional. It supports command line editing, tab completion, status bars, automatic download of URLs specified on the command line, firewall support and many other features. All ports now use "new" config. Old config has been laid to rest. The ARP subsystem and API has been rewritten to make it less ethernet-centric. A new if_media subsystem has been added which allows network interfaces to be configured using media type names rather than device-specific mode bits. Many kernel interface manual pages have been added to manual section 9. Several ports support much more hardware. Many updates to bring NetBSD closer to standards compliance. Most third party packages have been updated to the latest stable release. 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.3 also includes some refinement to the NetBSD binary emulation system (which includes FreeBSD, HP-UX, iBCS2, Linux, OSF/1, SunOS, SVR4, Solaris and Ultrix compatibility), bringing NetBSD closer to the goal of making the emulation as accurate as possible. In the near future, we hope to integrate a fully rewritten Virtual Memory subsystem, kernel threads, and SMP support. i386-specific enhancements include a number of new device drivers, such as the Intel Etherexpress FE drivers, ATAPI support, and others. See the hardware compatibility list for supported devices. Other (but not all) i386-specific improvements are: * APM support * bounce-buffer support so that busmaster ISA controllers work for machines with > 16M * floppy formatting support * improved detection of the amount of memory present in the machine * support for FAT32 filesystems NetBSD 1.3 on i386 is, as usual, also fully backward compatible with old NetBSD i386 binaries, so you don't need to recompile all your local programs. 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 computer software, namely the NetBSD Operating System. The foundation will allow for many things to be handled more smoothly than could be done with our previous informal organization. In particular, it provides the framework to deal with other parties that wish to become involved in the NetBSD Project. The NetBSD Foundation will help improve the quality of NetBSD by: * providing better organization to keep track of development efforts, including co-ordination with groups working in related fields. * providing a framework to receive donations of goods and services and to own the resources necessary to run the NetBSD Project. * providing a better position from which to undertake promotional activities. * periodically organizing workshops for developers and other interested people to discuss ongoing work. We hope to have regular releases of the full binary and source trees, but these are difficult to coordinate, especially with all of the architectures which we now support! We hope to support even _more_ hardware in the future, and have a rather large number of other ideas about what can be done to improve NetBSD. We intend to continue our current practice of making the NetBSD-current development source available on a daily basis. We intend to integrate free, positive changes from whatever sources will provide them, providing that they are well thought-out and increase the usability of the system. Above all, we hope to create a stable and accessible system, and to be responsive to the needs and desires of NetBSD users, because it is for and because of them that NetBSD exists. Sources of NetBSD: ------- -- ------ NetBSD Mirror Site List The following sites mirror NetBSD as of December 01, 1998. If you wish to become a distribution site for NetBSD, contact mirrors@netbsd.org. FTP mirrors ----------- Australia * ftp.au.netbsd.org RMIT University, Melbourne ftp://ftp.au.netbsd.org/pub/NetBSD * ftp2.au.netbsd.org University of Queensland, Brisbane ftp://ftp2.au.netbsd.org/pub/NetBSD Austria * ftp.at.netbsd.org University of Technology, Vienna ftp://ftp.at.netbsd.org/pub/NetBSD Brazil * ftp.ravel.ufrj.br Cidade Universitaria ftp://ftp.ravel.ufrj.br/pub/NetBSD Denmark * ftp.dk.netbsd.org Aalborg University ftp://ftp.dk.netbsd.org/pub/NetBSD Finland * ftp.fi.netbsd.org The Finnish University and Research Network, Espoo ftp://ftp.fi.netbsd.org/pub/NetBSD France * ftp.fr.netbsd.org Paris University ftp://ftp.fr.netbsd.org/pub/NetBSD Germany * ftp.de.netbsd.org University of Trier ftp://ftp.de.netbsd.org/pub/NetBSD * ftp2.de.netbsd.org University of Erlangen-Nuremberg ftp://ftp2.de.netbsd.org/pub/NetBSD * ftp.uni-regensburg.de University of Regensburg ftp://ftp.uni-regensburg.de/pub/comp/os/NetBSD Japan * ftp.jp.netbsd.org Internet Research Institute Inc., Tokyo ftp://ftp.jp.netbsd.org/pub/NetBSD * ftp.dti.ad.jp ftp://ftp.dti.ad.jp/pub/NetBSD/ * mirror.nucba.ac.jp Nagoya University of Commerce and Business ftp://mirror.nucba.ac.jp/mirror/NetBSD * netbsd.tohoku.ac.jp Tohoku University ftp://netbsd.tohoku.ac.jp/NetBSD Korea * sunsite.kren.ne.kr Seoul National University ftp://sunsite.kren.ne.kr/pub/OS/NetBSD Netherlands * ftp.nl.netbsd.org University of Amsterdam ftp://ftp.nl.netbsd.org/pub/NetBSD Norway * ftp.no.netbsd.org ftp://ftp.no.netbsd.org/pub/NetBSD * ftp.ntnu.no Norwegian University of Science and Technology ftp://ftp.ntnu.no/pub/NetBSD * skarven.itea.ntnu.no Norwegian University of Science and Technology ftp://skarven.itea.ntnu.no/pub/NetBSD Russia * ftp.ru.netbsd.org Landau Institute for Theoretical Physics, Chernogolovka ftp://ftp.ru.netbsd.org/pub/NetBSD Sweden * ftp.stacken.kth.se Royal Institute of Technology, Stockholm ftp://ftp.stacken.kth.se/pub/OS/NetBSD * ftp.sunet.se Swedish University NETwork, Uppsala ftp://ftp.sunet.se/pub/os/NetBSD UK * ftp.uk.netbsd.org Domino, London ftp://ftp.uk.netbsd.org/pub/NetBSD * sunsite.org.uk ftp://sunsite.org.uk/packages/netbsd USA * ftp.netbsd.org Silicon Valley, California ftp://ftp.netbsd.org/pub/NetBSD * ftp.cs.umn.edu University of Minnesota ftp://ftp.cs.umn.edu/pub/NetBSD * ftp.eecs.umich.edu University of Michigan, Ann Arbor ftp://ftp.eecs.umich.edu/pub/NetBSD * ftp.iastate.edu Iowa State University ftp://ftp.iastate.edu/pub/netbsd * ftp.op.net ftp://ftp.op.net/pub/NetBSD AFS mirrors ----------- Sweden * ftp.stacken.kth.se Royal Institute of Technology, Stockholm AFS path: /afs/stacken.kth.se/ftp/pub/OS/NetBSD USA * ftp.iastate.edu Iowa State University AFS path: /afs/iastate.edu/public/ftp/pub/netbsd NFS mirrors ----------- UK * sunsite.org.uk Instructions: mount -o ro sunsite.org.uk:/public/packages/netbsd /mnt SUP mirrors ----------- Australia * sup.au.netbsd.org RMIT University, Melbourne Instructions: ftp://sup.au.netbsd.org/pub/NetBSD/sup/README.sup France * sup.fr.netbsd.org Paris University Instructions: Similar to sup.netbsd.org Germany * sup.de.netbsd.org University of Trier Instructions: ftp://sup.de.netbsd.org/pub/NetBSD/sup/supfile.example * sup.owl.de Instructions: ftp://sup.owl.de/pub/sup/supfile.example Japan * sup.jp.netbsd.org Internet Research Institute Inc., Tokyo Instructions: ftp://sup.jp.netbsd.org/pub/NetBSD/sup/README.sup Norway * skarven.itea.ntnu.no Norwegian University of Science and Technology Instructions: Use this line as your sup file to get /usr/README.supinfo- skarven:current release=supinfo host=skarven.itea.ntnu.no use-rel-suffix backup delete old base=/usr prefix=/usr hostbase=/supmirror UK * sup.uk.netbsd.org Domino, London Instructions: See ftp://ftp.netbsd.org/pub/NetBSD/sup/README.sup USA * sup.netbsd.org Silicon Valley, California Instructions: See ftp://ftp.netbsd.org/pub/NetBSD/sup/README.sup * ftp.cs.umn.edu University of Minnesota Instructions: hostbase=/ftp/ftp/packages/NetBSD, collections are the same as on sup.NetBSD.ORG WWW mirrors ----------- Australia * www.au.netbsd.org RMIT University, Melbourne http://www.au.netbsd.org/ Austria * www.at.netbsd.org University of Technology, Vienna http://www.at.netbsd.org/ Finland * www.fi.netbsd.org Global Wire Oy, Lappeenranta http://www.fi.netbsd.org/ France * www.fr.netbsd.org Paris University http://www.fr.netbsd.org/ Germany * www.de.netbsd.org http://www.de.netbsd.org/ Japan * www.jp.netbsd.org Internet Research Institute Inc., Tokyo http://www.jp.netbsd.org/ Norway * www.no.netbsd.org http://www.no.netbsd.org/ USA * www.netbsd.org Western Washington State University http://www.netbsd.org/ * www2.us.netbsd.org New York http://www.us.netbsd.org/ NetBSD 1.3.3 Release Contents: ------ ----- ------- -------- The NetBSD 1.3.3 release is organized in the following way: .../NetBSD-1.3.3/ BUGS Known bugs list (incomplete and out of date). CHANGES Changes since NetBSD's last release (and before). LAST_MINUTE Last minute changes. MIRRORS A list of sites that mirror the NetBSD 1.3.3 distribution. README.files README describing the distribution's contents. TODO NetBSD's todo list (incomplete and out of date). patches/ Post-release source code patches. source/ Source distribution sets; see below. In addition to the files and directories listed above, there is one directory per architecture, for each of the architectures for which NetBSD 1.3.3 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 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. [ 412K gzipped, 1.8M 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. [ 15.6M gzipped, 66.4M uncompressed ] syssrc.tgz: This set contains the sources to the NetBSD 1.3.3 kernel, config(8), and dbsym(8). [ 10.7M gzipped, 50.0M uncompressed ] sharesrc.tgz: This set contains the "share" sources, which include the sources for the man pages not associated with any particular program, the sources for the typesettable document set, the dictionaries, and more. [ 2.9M gzipped, 11.1M uncompressed ] src.tgz: This set contains all of the NetBSD 1.3.3 sources which are not mentioned above. [ 13.9M gzipped, 60.7M uncompressed ] It is worth noting that unless all of the source distribution sets are installed (except the domestic set), you can't rebuild and install the system from scratch, straight out of the box. However, all that is required to rebuild the system in that case is a trivial modification to one Makefile. 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, which is available only to users in the United States and Canada, contains the sources normally found in /usr/src/domestic -- 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 United States and Canada.) The source sets are distributed as compressed tar files. They may be unpacked 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 integrity 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. The i386-specific portion of the NetBSD 1.3.3 release is found in the "i386" subdirectory of the distribution. That subdirectory is laid out as follows: .../NetBSD-1.3.3/i386/ INSTALL Installation notes; this file. binary/ sets/ i386 binary distribution sets; see below. Split/ Split i386 binary distribution sets; see below. security/ i386 security distribution; see below; installation/ floppy/ i386 boot and installation floppies; see below. misc/ Miscellaneous i386 installation utilities; see installation section, below. There are two i386 floppy images, named "boot.fs" and "boot-small.fs", in the "i386/installation/floppy" subdirectory of the NetBSD 1.3.3 distribution. These are 1.44M and 1.2M floppy disk images (respectively). These floppies are bootable, and are used both for installations and for upgrades. They are described in more detail below. There are also gzipped version of these floppies (named with ".fs.gz") available. Bootable installation/upgrade floppies: These disks are bootable, and contains the software necessary to prepare your hard drive for NetBSD and install the NetBSD distribution, or to upgrading an already installed system from a previous version of NetBSD. Unlike previous NetBSD releases, there are no separate "kernel copy" floppies or "upgrade" floppies. Instead, the install floppy contains only a special compressed kernel with a built in ramdisk image of the installation/upgrade file system. There is also no longer any need to use a different boot floppy for Adaptec and Buslogic based systems. The only difference between the "boot.fs" and "boot-small.fs" floppies is that the 1.2M "boot-small.fs" image does not contain support for PCMCIA or PCI devices so that it can be fit on a 1.2M floppy suitable for use on older systems. Because the kernel on the installation disks is not suitable for use beyond initial installation and configuration, a "generic" kernel has been placed in a distribution set named "kern". This kernel is intended to run your system while you build a custom kernel. It is strongly encouraged that you build a custom kernel for your installation rather than use the prebuilt generic kernel on a long term basis. Please note that because of space considerations the kernels booted from the installation floppies do not contain drivers that are not needed during installation -- in particular, no drivers needed to run the X Window System are available in these kernels. The NetBSD/i386 binary distribution sets contain the binaries which comprise the NetBSD 1.3.3 release for the i386. There are eight binary distribution sets and the "security" distribution set. The binary distribution sets can be found in the "i386/binary/sets" subdirectory of the NetBSD 1.3.3 distribution tree, and are as follows: base The NetBSD/i386 1.3.3 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. [ 9.7M gzipped, 25.0M uncompressed ] comp The NetBSD/i386 Compiler tools. All of the tools relating to C, C++, Objective C, and FORTRAN (yes, there are two, although NO FORTRAN compiler!). This set includes the system include files (/usr/include), the linker, the compiler tool chain, 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. [ 7.1M gzipped, 24.1M 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.) [ 53K gzipped, 328K uncompressed ] games This set includes the games and their manual pages. [ 3.0M gzipped, 7.3M uncompressed ] kern This set contains a NetBSD/i386 1.3.3 GENERIC kernel, named "/netbsd". You MUST install this distribution set. [ 1.1M gzipped, 2.2M 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. [ 2.5M gzipped, 10.6M uncompressed ] misc This set includes the system dictionaries (which are rather large), the typesettable document set, and man pages for other architectures which happen to be installed from the source tree by default. [ 2.2M gzipped, 8.3M uncompressed ] text This set includes NetBSD's text processing tools, including groff, all related programs, and their manual pages. [ 1.0M gzipped, 3.7M uncompressed ] IMPORTANT: In previous versions of NetBSD, the kernel from the install floppy was copied onto the hard drive in a special step. In the new install system, the kernel on the floppy is unsuited to being copied onto the hard drive. Instead, a new set, "kern", has been added which contains a generic kernel to be unloaded onto the drive. It must be extracted in order to have a minimally functioning system. The i386 security distribution set is named "secr" and can be found in the "i386/binary/security" subdirectory of the NetBSD 1.3.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 decryption function. The security distribution includes a version of the Kerberos IV network security system, and a Kerberized version of the "telnet" program. The "secr" distribution set can be found only on those sites which carry the complete NetBSD distribution and which can legally obtain it. (Remember, because of United States law, it may not be legal to distribute this set to locations outside of the United States and Canada.) [ 798K gzipped, 2.4M uncompressed ] Since NetBSD 1.3, binary sets for the X Window system are also distributed with NetBSD. The binaries are based on X11R6.3, and XFree86 3.3.1 in the case of NetBSD/i386. You can not yet install them using the new automated install system. However, they are gzipped tarfiles, just like the other sets, so you can always simply extract them once you have your NetBSD system installed and running. The sets are: xbase The basic files needed for a complete X client environment. This does not include the X servers. [ 2.5M gzipped, 7.7M uncompressed ] xcomp The extra libraries and include files needed to compile X source code. [ 1.7M gzipped, 7.3M uncompressed ] xcontrib Programs that were contributed to X. [ 183k gzipped, 600k uncompressed ] xfont Fonts needed by X. [ 5.8M gzipped, 7M uncompressed ] xserver All XFree86 X servers. Because all of them are included, this set is large. However, you will only need one of the servers provided in this set (typically XF86_SVGA). [ 12M gzipped, 29M uncompressed ] The i386 binary distribution sets are distributed as gzipped tar files named with the extension ".tgz", e.g. "base.tgz". They are also available in split form -- catted together, the members of a split set form a gzipped tar file. Each i386 binary distribution set also has its own checksum files, just as the source distribution sets do. 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 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 xpf" from /. Also note that if you upgrade or install this way, those programs that you are using at the time will NOT be replaced unless you run "tar" with the "--unlink" option. If you follow the normal installation or upgrade procedures, this will be taken care of for you. NetBSD System Requirements and Supported Devices: ------ ------ ------------ --- --------- ------- NetBSD/i386 1.3.3 runs on ISA (AT-Bus), EISA, PCI, and VL-bus systems with 386-family processors, with or without math coprocessors. It does NOT support MCA systems, such as some IBM PS/2 systems. The minimal configuration is said to require 4M of RAM and 50M of disk space, though we do not know of anyone running with a system quite this minimal today. To install the entire system requires much more disk space (the unpacked binary distribution, without sources, requires at least 65M without counting space needed for swap space, etc), and to run X or compile the system, more RAM is recommended. (4M of RAM will actually allow you to run X and/or compile, but it won't be speedy. Note that until you have around 16M of RAM, getting more RAM is more important than getting a faster CPU.) Supported devices include: Floppy controllers. MFM, ESDI, IDE, and RLL hard disk controllers. SCSI host adapters: Adaptec AHA-154xA, -B, -C, and -CF Adaptec AHA-174x Adaptec AIC-6260 and AIC-6360 based boards, including the Adaptec AHA-152x, Adaptec AHA-1460 (PCMCIA), and the SoundBlaster SCSI host adapter. (Note that you cannot boot from these boards if they do not have a boot ROM; only the AHA-152x and motherboards using this chip are likely to be bootable, consequently.) Adaptec AHA-2x4x[U][W] cards and some onboard PCI designs using the AIC78X0 chip. Adaptec AHA-3940[U][W] cards [b] BusLogic 54x (Adaptec AHA-154x clones) BusLogic 445, 74x, 9xx (But not the new "FlashPoint" series of BusLogic SCSI adapters) Qlogic ISP [12]0x0 SCSI/FibreChannel boards Seagate/Future Domain ISA SCSI adapter cards, including ST01/02 Future Domain TMC-885 Future Domain TMC-950 Symbios Logic (NCR) 53C8xx-based PCI SCSI host adapters: Acculogic PCIpport ASUS SC-200 (requires NCR BIOS on motherboard to boot from disks) ASUS SC-2875 ASUS SP3[G] motherboard onboard SCSI DEC Celebris XL/590 onboard SCSI Diamond FirePort 40 Lomas Data SCSI adapters NCR/SYM 8125 (and its many clones; be careful, some of these cards have a jumper to set the PCI interrupt; leave it on INT A!) Promise DC540 (a particularly common OEM model of the SYM 8125) Tyan Yorktown Ultrastor 14f, 34f, and (possibly) 24f Western Digital WD7000 SCSI and TMC-7000 host adapters (ISA cards only) MDA, CGA, VGA, SVGA, and HGC Display Adapters. (Note that not all of the display adapters NetBSD/i386 can work with are supported by X. See the XFree86 FAQ for more information.) Serial ports: 8250/16450-based ports 16550/16650/16750-based ports AST-style 4-port serial cards [*] BOCA 8-port serial cards [*] IBM PC-RT 4-port serial cards [*] Single-port Hayes ESP serial cards [*] Cyclades Cyclom-Y serial cards [*] [+] Parallel ports. Ethernet adapters: AMD LANCE and PCnet-based ISA Ethernet adapters [*], including: Novell NE1500T Novell NE2100 Kingston 21xx AMD PCnet-based PCI Ethernet adapters, including: Addtron AE-350 BOCALANcard/PCI SVEC FD0455 X/Lan Add-On Adapter IBM #13H9237 PCI Ethernet Adapter AT&T StarLAN 10, EN100, and StarLAN Fiber 3COM 3c501 3COM 3c503 3COM 3c505 [*] 3COM 3c507 3COM 3c509, 3c579, and 3c59X 3COM 3c589 Digital DC21x4x-based PCI Ethernet adapters, including: Cogent EM1X0, EM960 (a.k.a. Adaptec ANA-69XX) Cogent EM964 [b] Cogent EM4XX [b] Compex Readylink PCI DANPEX EN-9400P3 Digital Celebris GL, GLST on-board ethernet Digital (DEC) PCI Ethernet/Fast Ethernet adapters (all) JCIS Condor JC1260 Linksys PCI Fast Ethernet SMC EtherPower 10, 10/100 (PCI only!) SMC EtherPower^2 [b] SVEC PN0455 SVEC FD1000-TP Znyx ZX34X Digital EtherWORKS III ISA adapters (DE203/DE204/DE205) Digital DEPCM-BA (PCMCIA) and DE305 (ISA) NE2000-compat. cards BICC Isolan [* and not recently tested] Fujitsu MB86960A/MB86965A based cards: Fujitsu FMV-180 series Allied-Telesis AT1700 series Allied-Telesis RE2000 series Intel EtherExpress 16 Intel EtherExpress PRO/10 Intel EtherExpress 100 Fast Ethernet adapters Novell NE1000, NE2000 (ISA, PCI, PCMCIA, ISA PnP) SMC/WD 8003, 8013, and the SMC "Elite16" ISA boards SMC/WD 8216 (the SMC "Elite16 Ultra" ISA boards) SMC91C9x-based boards (ISA and PCMCIA) Texas Instruments ThunderLAN based ethernet boards: Compaq Netelligent 10/100 TX Compaq ProLiant Integrated Netelligent 10/100 TX Compaq Netelligent 10 T (untested) Compaq Integrated NetFlex 3/P Compaq NetFlex 3/P w/ BNC (untested) Compaq NetFlex 3/P (untested) Compaq Dual Port Netelligent 10/100 TX (untested) Compaq Deskpro 4000 5233MMX (untested) Texas Instruments TravelMate 5000 series laptop docking station Ethernet board FDDI adapters: Digital DEFPA PCI FDDI adapters [*] [+] Digital DEFEA EISA FDDI adapters [*] [+] Tape drives: Most SCSI tape drives QIC-02 and QIC-36 format (Archive- and Wangtek- compatible) tape drives [*] [+] CD-ROM drives: Non-IDE Mitsumi CD-ROM drives [*] [+] [Note: The Mitsumi driver device probe is known to cause trouble with several devices!] Most SCSI CD-ROM drives Most ATAPI CD-ROM drives. [ Note: Some low-priced IDE CDROM drives are known for being not or not fully ATAPI compliant, and thus requires some hack (generally an entry to a quirk table) to work with NetBSD.] Mice: "Logitech"-style bus mice [*] [+] "Microsoft"-style bus mice [*] [+] "PS/2"-style mice [*] [+] Serial mice (no kernel support necessary) Sound Cards: SoundBlaster, SoundBlaster Pro, SoundBlaster 16 [*] [+] Gravis Ultrasound and Ultrasound Max [*] [+] [The following drivers are not extensively tested] Personal Sound System [*] [+] Windows Sound System [*] [+] ProAudio Spectrum [*] [+] Gravis Ultrasound Plug&Play [*] [+] Game Ports (Joysticks). [*] [+] Miscellaneous: Advanced power management (APM) [*] Drivers for hardware marked with "[*]" are NOT present in kernels on the distribution floppies. Except as noted above, all drivers are present on all disks. Also, at the present time, the distributed kernels support only one SCSI host adapter per machine. NetBSD normally allows more, though, so if you have more than one, you can use all of them by compiling a custom kernel once NetBSD is installed. Support for devices marked with "[+]" IS included in the "generic" kernels, although it is not in the kernels which are on the distribution floppies. Support for devices marked with "[b]" requires BIOS support for PCI-PCI bridging on your motherboard. Most reasonably modern Pentium motherboards have this support, or can acquire it via a BIOS upgrade. Hardware the we do NOT currently support, but get many questions about: AMD PCscsi SCSI host adapters (though the PCnet portion of the PCnet-SCSI works fine) Multiprocessor Pentium and Pentium Pro systems. (Though they should run fine using one processor only.) NCR 5380-based SCSI host adapters. PCI WD-7000 SCSI host adapters. QIC-40 and QIC-80 tape drives. (Those are the tape drives that connect to the floppy disk controller.) We are planning future support for many of these devices. To be detected by the distributed kernels, the devices must be configured as follows: Device Name Port IRQ DRQ Misc ------ ---- ---- --- --- ---- Serial ports com0 0x3f8 4 [8250/16450/16550/clones] com1 0x2f8 3 [8250/16450/16550/clones] com2 0x3e8 5 [8250/16450/16550/clones] Parallel ports lpt0 0x378 7 [interrupt-driven or polling] lpt1 0x278 [polling only] lpt2 0x3bc [polling only] Floppy controller fdc0 0x3f0 6 2 [supports two disks] AHA-154x, AHA-174x (in compatibility mode), or BT-54x SCSI host adapters aha0 0x330 any any aha1 0x334 any any AHA-174x SCSI host adapters (in enhanced mode) ahb0 any any any AHA-152x, AIC-6260- or AIC-6360-based SCSI host adapters aic0 0x340 11 6 AHA-2X4X or AIC-7XXX-based SCSI host adapters ahc0 any any any BusLogic BT445, BT74x, or BT9xx SCSI host adapters bha0 0x330 any any bha1 0x334 any any Symbios Logic/NCR 53C8xx based PCI SCSI host adapters ncr0 any any any Ultrastor 14f, 24f (if it works), or 34f SCSI host adapters uha0 0x330 any any uha1 0x334 any any Western Digital WD7000 based ISA SCSI host adapters wds0 0x350 15 6 wds1 0x358 11 5 MFM/ESDI/IDE/RLL hard disk controllers wdc0 0x1f0 14 [supports two devices] wdc1 0x170 15 [supports two devices] ATA disks wd0, wd1, ... SCSI disks sd0, sd1, ... SCSI tapes st0, st1, ... SCSI and ATAPI CD-ROMs cd0, cd1, ... For each SCSI and IDE controller found, the SCSI or ATA(PI) devices present on the bus are probed in increasing id order for SCSI and master/slave order for ATA(PI). So the first SCSI drive found will be called sd0, the second sd1, and so on ... 3Com 3c503 Ethernet cards ec0 0x250 9 iomem 0xd8000 Novell NE1000, or NE2000 Ethernet boards ne0 0x280 9 ne1 0x300 10 SMC/WD 8003, 8013, Elite16, and Elite16 Ultra Ethernet boards we0 0x280 9 iomem 0xd0000 we1 0x300 10 iomem 0xcc000 3COM 3c509 or 3COM 3c579 Ethernet boards ep0 any any 3COM 3x59X or 3COM 3x90X PCI Ethernet boards ep0 any any [you must assign an interrupt in your PCI BIOS, or let it do so for you] AT&T StarLAN 10, EN100, or StarLAN Fiber, 3COM 3c507 or Intel EtherExpress 16 Ethernet boards ie0 0x360 7 iomem 0xd0000 ie1 0x300 10 iomem 0xd0000 Intel EtherExpress PRO 10 ISA iy0 0x360 any Intel EtherExpress 100 Fast Ethernet adapters fxp0 any any [you must assign an interrupt in your PCI BIOS, or let it do so for you] SMC91C9x based Ethernet cards sm0 0x300 10 PCnet-PCI based Ethernet boards; see above for partial list le0 any any [you must assign an interrupt in your PCI BIOS, or let it do so for you] DC21x4x based Ethernet boards; see above for partial list de0 any any [you must assign an interrupt in your PCI BIOS, or let it do so for you] Digital EtherWORKS III (DE203/DE204/DE205) lc0 any any Getting the NetBSD System on to Useful Media: ------- --- ------ ------ -- -- ------ ----- Installation is supported from several media types, including: FTP Remote NFS partition DOS floppies No matter which installation medium you choose, you'll need to have a floppy disk (either 1.2M or 1.44M will work). You'll put the boot floppy image ("boot.fs" for 1.44M floppies, "boot-small.fs" for 1.2M floppies) onto this disk, which contains software to install or upgrade your NetBSD system. [Note: previous versions of NetBSD used several floppy images, including several kernel/boot floppies depending on hardware configuration, an install floppy, and an upgrade floppy. NetBSD 1.3.3 only requires a single floppy for all tasks.] If you are using a UN*X-like system to write the floppy images to disks, you should use the "dd" command to copy the file system image (.fs file) directly to the raw floppy disk. It is suggested that you read the dd(1) manual page or ask your system administrator to determine the correct set of arguments to use; it will be slightly different from system to system, and a comprehensive list of the possibilities is beyond the scope of this document. If you are using DOS to write the floppy image to disk, you should use the "rawrite" utility, provided in the "i386/utilities" directory of the NetBSD distribution. It will write the file system image (.fs file) to disks. Note that, when installing or upgrading, the floppy can be write-protected if you wish. These systems mount ramdisks as their root file systems once booted, and will not need to write to the floppy itself at any time -- indeed, once booted, the floppy may be removed from the disk drive. Obviously, the steps necessary to prepare the distribution sets for installation or upgrade depend on which installation medium you choose. The steps for the various media are outlined below. 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 one fifth that number of 1.2M floppies, or one sixth that number of 1.44M floppies. You should only use one size of floppy for the install or upgrade procedure; you can't use some 1.2M floppies and some 1.44M floppies. Format all of the floppies with DOS. DO NOT make any of them bootable DOS floppies, i.e. don't use "format/s" to format them. (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 as many distribution set parts per disk.) If you're using floppies that are formatted for DOS by their manufacturers, they probably aren't bootable, and you can use them out of the box. Place all of the "set_name.xx" files on the DOS disks, five per disk if you're using 1.2M disks, six per disk if you're using 1.44M disks. How you do this is up to you; there are many possibilities. You could, for instance, use a DOS terminal program to download them on to the floppies, or use a UN*X-like system capable of reading and writing DOS file systems (either with "mtools" or a real DOS file system) to place them on the disk. Once you have the files on DOS disks, you can start the actual installation or upgrade process. To install or upgrade NetBSD using NFS, you must do the following: Place the NetBSD distribution sets you wish to install into a directory on an NFS server, and make that directory mountable by the machine on which you are installing or upgrading NetBSD. This will probably require modifying the /etc/exports file on of the NFS server and resetting its mount daemon (mountd). (Both of these actions will probably require superuser privileges on the server.) You need to know the the numeric IP address of the NFS server, and, if the server is not on a network directly connected to the machine on which you're installing or upgrading NetBSD, you need to know the numeric IP address of the router closest to the NetBSD machine. Finally, you need to know the numeric IP address of the NetBSD machine itself. The install program will ask you to provide this information to be able to access the sets. Once the NFS server is set up properly and you have the information mentioned above, you can start the actual installation or upgrade process. To install or upgrade NetBSD by using FTP to get the installation sets, you must do the following: 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 installing or upgrading NetBSD, you need to know the numeric IP address of the router closest to the NetBSD machine. Finally, you need to know the numeric IP address of the NetBSD machine itself. The install program will ask you to provide this information to be able to access the sets via ftp. Once you have this information, you can proceed to the actual installation or upgrade. If you are upgrading NetBSD, you also have the option of installing NetBSD by putting the new distribution sets somewhere in your existing 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" and "kern" binary distribution, and so must put the "base" and "kern" sets somewhere in your file system. If you wish, you can do the other sets, as well, but you should NOT upgrade the "etc" distribution; the "etc" distribution contains system configuration files that you should review and update by hand. Once you have done this, you can proceed to the next step in the upgrade process, actually upgrading your system. Preparing your System for NetBSD Installation: --------- ---- ------ --- ------ ------------ First and foremost, before beginning the installation process, MAKE SURE YOU HAVE A RELIABLE BACKUP of any data on your hard disk that you wish to keep. Mistakes in partitioning your hard disk may lead to data loss. Before you begin, you should be aware of the geometry issues that may arise in relation to your hard disk. First of all, you should know about sector size. You can count on this to be 512 bytes; other sizes are rare (and currently not supported). Of particular interest are the number of sectors per track, the number of tracks per cylinder (also known as the number of heads), and the number of cylinders. Together they describe the disk geometry. The BIOS has a limit of 1024 cylinders and 63 sectors per track for doing BIOS I/O. This is because of the old programming interface to the BIOS that restricts these values. Most of the big disks currently being used have more than 1024 real cylinders. Some have more than 63 sectors per track. Therefore, the BIOS can be instructed to use a fake geometry that accesses most of the disk and the fake geometry has less than or equal to 1024 cylinders and less than or equal to 63 sectors. This is possible because the disks can be addressed in a way that is not restricted to these values, and the BIOS can internally perform a translation. This can be activated in most modern BIOSes by using 'Large' or 'LBA' mode for the disk. NetBSD does not have the mentioned limitations with regard to the geometry. However, since the BIOS has to be used during startup, it is important to know about the geometry the BIOS uses. The NetBSD kernel should be on a part of the disk where it can be loaded using the BIOS, within the limitations of the BIOS geometry. The install program will check this for you, and will give you a chance to correct this if this is not the case. If you have not yet installed any other systems on the hard disk that you plan to install NetBSD on, or if you plan to use the disk entirely for NetBSD, you may wish to check your BIOS settings for the 'Large' or 'LBA' modes, and activate them for the hard disk in question. While they are not needed by NetBSD as such, doing so will remove the limitations mentioned above, and will avoid hassle should you wish to share the disk with other systems. Do NOT change these settings if you already have data on the disk that you want to preserve! In any case, it is wise to check your the BIOS settings for the hard disk geometry before beginning the installation, and write them down. While this should usually not be needed, it enables you to verify that the install program determines these values correctly. The geometry that the BIOS uses will be referred to as the "BIOS geometry", the geometry that NetBSD uses is the "real geometry". Sysinst will try to discover both the real geometry and BIOS geometry. If a Master Boot Record (MBR) has been written to your disk by DOS, Windows 95, NT, or another system, sysinst should have no trouble find the BIOS geometry. If the disk has not had a MBR written to it, it may be much more difficult to get the BIOS geometry. It is *important* that sysinst know the proper BIOS geometry to be able to get NetBSD to boot, regardless of where on your disk you put it. It is less of a concern if the disk is going to be used entirely for NetBSD. If you intend to have several OSes on your disk, this becomes a much larger issue. Another issue with geometry is with SCSI disks. The geometry reported by the disk often does not address all addressable sectors on the disk. sysinst will assist you if you want to choose a fake geometry for NetBSD to use so it can get access to more sectors. This is not the same as the BIOS fake geometry. Installing the NetBSD System: ---------- --- ------ ------ 0. Introduction Using "sysinst", installing NetBSD is a relatively easy process. You still should read this document and have it in hand when doing the installation process. This document tries to be a good guideline for the installation and as such covers many details to be complete. Do not let this discourage you, the install program is not hard to use. 0.1 Possible PCMCIA issues There is a serious bug that may make installation of NetBSD on PCMCIA machines difficult. This bug does not make USE of PCMCIA difficult once a machine is installed. If you do not have PCMCIA on your machine (PCMCIA is only really used on laptop machines), you can skip this section, and ignore the "[PCMCIA]" notes. This will explains how to work around the installation problem. It is anticipated that this bug will be fixed by NetBSD 1.4 What is the bug: The kernel keeps careful track of what interrupts and i/o ports are in use during autoconfiguration. It then allows the PCMCIA devices to pick unused interrupts and ports. Unfortunately, not all devices are included in the INSTALL kernels in order to save space. Let's say your laptop has a soundblaster device built in. The INSTALL kernel has no sound support. The PCMCIA code might allocate your soundblaster's IRQ and i/o ports to PCMCIA devices, causing them not to work. This is especially bad if one of the devices in question is your ethernet card. This problem will impact some, but not all, users of PCMCIA. If this bug is hurting you, watch the "[PCMCIA]" notes that will appear in this document. 1. General The following is a walk-through of the steps you will take while getting NetBSD installed on your hard disk. sysinst is a menu driven installation system that allows for some freedom in doing the installation. Sometimes, questions will be asked and in many cases the default answer will be displayed in brackets ("[]") after the question. If you wish to stop the installation, you may hit Control-C at any time, but if you do, you'll have to begin the installation process again from scratch. 2. Quick install First, let's describe a quick install. The other sections of this document go into the installation procedure in more detail, but you may find that you do not need this. If you want detailed instructions, skip to section 3. This section describes a basic installation, using a CD-ROM install as an example. 2.1 What you need. * The distribution sets (in this example, they are on CD). * One 1.44M 3.5" floppy. * A PC with a 386 or newer processor, a CD-ROM drive (SCSI or ATAPI), a harddisk and a minimum of 4Mb of memory installed. * The harddisk should have at least 70 + N megabytes of space free, where N is the number of megabytes of main memory in your system. If you wish to install the X window system as well, you will need at least 60Mb more. 2.2 Creating a bootfloppy. * You can create the floppy needed for installation under DOS or Windows. Supposing your 1.44M floppy drive is drive A:, and your CD is drive E: do the following from an MS-DOS command prompt: e: cd \NetBSD-1.3.3\installation\misc rawrite When asked for a source filename, answer ..\floppy\boot.fs When asked for a destination drive answer a 2.3 The installation * Insert the bootfloppy you just created. Restart the PC. You will be presented with a menu. * If you wish, you can configure some network settings immediately by choosing the "utilities" menu and then "configure network". This isn't needed, but more convenient to do now. Go back to the main menu. * Choose "install" * You will be guided through some steps regarding the setup of your harddisk, and parts to install. When in doubt, refer to the rest of this document for details. * After your disk has been prepared, choose CD-ROM as the medium. The default values for the path and device should be ok. * After all the files have been unpacked, go back to the main menu and select "reboot", after you have removed the bootfloppy from the drive. * NetBSD will now boot. You should log in as root, and set a password for that account. You are also advised to edit the file "/etc/rc.conf" to match your system needs. * Your installation is now complete. * For configuring the X window system, if installed, see the files in /usr/X11R6/lib/X11/doc. Further information can be found on http://www.xfree86.org/ 3. Booting NetBSD [PCMCIA]: unplug your PCMCIA devices, so that they won't be found by NetBSD. Boot your machine using the boot floppy. The boot loader will start, and will print a countdown and begin booting. You will likely see one "file not found" warning from the boot loader -- ignore this as it is normal, and indicates the boot loader failed to find a normal kernel to boot before trying to boot a compressed kernel. If the boot loader messages do not appear in a reasonable amount of time, you either have a bad boot floppy or a hardware problem. Try writing the install floppy image to a different disk, and using that. If that doesn't work, try booting after disabling your CPU's internal and external caches (if any). If it still doesn't work, NetBSD probably can't be run on your hardware. This can probably be considered a bug, so you might want to report it. If you do, please include as many details about your system configuration as you can. It will take a while to load the kernel from the floppy, probably around a minute or so. You will then be presented with the NetBSD kernel boot messages. This may take a little while, as NetBSD will be probing for a lot of types of hardware, You may want to read the boot messages, to notice your disk's name and geometry. Its name will be something like "sd0" or "wd0" and the geometry will be printed on a line that begins with its name. As mentioned above, you may need your disk's geometry when creating NetBSD's partitions. You will also need to know the name, to tell sysinst on which disk to install. The most important thing to know is that 'wd0 is NetBSD's name for your first IDE disk, wd1 the second, etc. 'sd0' is your first SCSI disk, sd1 the second, etc. Note that, once the system has finished booting, you need no longer leave the floppy in the disk drive. Earlier version of the NetBSD install floppies mounted the floppy as the system's root partition, but the new installation floppies use a ramdisk file system and are no longer dependent on the floppy once it has booted. Once NetBSD has booted and printed all the boot messages, you will be presented with a welcome message and a main menu. It will also include instructions for using the menus. 4. Network configuration [PCMCIA] You can skip this section, as you will only get data from floppy in the first part of the install. If you will not use network operation during the installation, but you do want your machine to be configured for networking once it is installed, you should first go to the utilities menu, and select the "Configure network option". If you only want to temporarily use networking during the installation, you can specify these parameters later. If you are not using Domain Name Service (DNS), you can give an empty response in reply to answers relating to this. 5. The hard disk to install on and its parameters. To start the installation, select the menu option to install NetBSD from the main menu. The first thing is to identify the disk on which you want to install NetBSD. sysinst will report a list of disks it finds and ask you for your selection. Depending on how many disks are found, you may get a different message. You should see disk names like "wd0", "wd1", "sd0", or "sd1". sysinst next tries to figure out the real and BIOS geometry of your disk. It will present you with the values it found, if any, and will give you a chance to change them. Please note that if you change the values, sysinst WILL ALSO REINITIALIZE YOUR MBR. You will also be asked if you want to use the last cylinder of the disk. Originally, the last cylinder of the disk was used for diagnostic purposes, but this is usually not a concern anymore these days. You will be able to specify whether you want to skip the last cylinder anyway. Next, depending on whether you are using a "wdX" or a "sdX" disk, you will either be asked for the type of disk (wdX) you are using or you will be asked if you want to specify a fake geometry for your SCSI disk (sdX). The types of disk are be IDE, ST-506 or ESDI. If you're installing on an ST-506 or ESDI drive, you'll be asked if your disk supports automatic sector forwarding. If you are SURE that it does, reply affirmatively. Otherwise, the install program will automatically reserve space for bad144 tables. 6. Partitioning the disk. 6.1 Which portion of the disk to use. You will be asked if you want to use the entire disk or only part of the disk. If you decide to use the entire disk for NetBSD, it will be checked if there are already other systems present on the disk, and you will be asked to confirm whether you want to overwrite these. If you want to use the entire disk for NetBSD, you can skip the following section and go to section 6.3, "Editing the NetBSD disklabel". 6.2 Editing the Master Boot Record. First, you will be prompted to specify the units of size that you want to express the sizes of the partitions in. You can either pick megabytes, cylinders or sectors. After this, you will be presented with the current values stored in the MBR, and will be given the opportunity to change, create or delete partitions. For each partition you can set the type, the start and the size. Setting the type to 'unused' will delete a partition. You can also mark a partition as active, meaning that this is the one that the BIOS will start from at boot time. Be sure to mark the partition you want to boot from as active! After you are done editing the MBR, a sanity check will be done, checking for partitions that overlap. If everything is ok, you can go on to the next step, editing the NetBSD disklabel. 6.3 Editing the NetBSD disklabel. The partition table of a NetBSD part of a disk is called a 'disklabel'. There are 3 layouts for the NetBSD part of the disk that you can pick from: Standard, Standard with X and Custom. The first two use a set of default values (that you can change) suitable for a normal installation, possibly including X. The last option lets you specify everything yourself. You will be presented with the current layout of the NetBSD disklabel, and given a chance to change it. For each partition, you can set the type, offset and size, block and fragment size, and the mount point. The type that NetBSD uses for normal file storage is called "4.2BSD". A swap partition has a special type called "swap". You can also specify a partition as type "msdos". This is useful if you share the disk with MS-DOS or Windows95, NetBSD is able to access the files on these partitions. You can use the values from the MBR for the MS-DOS part of the disk to specify the partition of type "msdos" (you don't have to do this now, you can always re-edit the disklabel to add this once you have installed NetBSD). Some partitions in the disklabel have a fixed purpose. Partition 'a' is always the root partition, 'b' is the swap partition, 'c' is the entire NetBSD part of the disk, and 'd' is the whole disk. Partitions 'e'-'h' are available for other use. Traditionally, 'e' is the partition mounted on the /usr directory, but this is historical practice, not a fixed value. You will then be asked to name your disk's disklabel. The default response is "mydisk". For most purposes this will be OK. If you choose to name it something different, make sure the name is a single word and contains no special characters. You don't need to remember this name. 7. Preparing your hard disk YOU ARE NOW AT THE POINT OF NO RETURN. Nothing has been written to your disk yet, but if you confirm that you want to install NetBSD, your hard drive will be modified. If you are sure you want to proceed, enter "yes" at the prompt. The install program will now label your disk and make the file systems you specified. The filesystems will be initialized to contain NetBSD bootstrapping binaries and configuration files. You will see messages on your screen from the various NetBSD disk preparation tools that are running. There should be no errors in this section of the installation. If there are, restart from the beginning of the installation process. Otherwise, you can continue the installation program after pressing 'return'. NOTE: In previous versions of NetBSD, the kernel from the install floppy was copied onto the hard drive in a special step. In the new install system, the kernel on the floppy is unsuited to being copied onto the hard drive. Instead, a new set, "kern", has been added which contains a generic kernel to be unloaded onto the drive. So, you can not boot from your hard drive yet at this point. 8. Getting the distribution sets. [PCMCIA] Load a kernel tar file (i.e. the kern.tgz set file) on to your hard disk, for example by mounting the hard disk first, copying the kern.tgz file from floppy and unpacking it. Example: mount /dev/wd0a /mnt cd /mnt mount -t msdos /dev/fd0a /mnt2 cp /mnt2/kern.* . umount /mnt2 cat kern.* | tar vxzf - Then halt the machine using the 'halt' command. Power the machine down, and re-insert all the PCMCIA devices. Remove any floppy from the floppy drive. Start the machine up. After booting NetBSD, you will be presented with the main sysinst menu. Choose the option to re-install sets. Wait for the filesystem checks that it will do to finish, and then proceed as described below. The NetBSD distribution consists of a number of 'sets', that come in the form of gzipped tarfiles. A few sets must be installed for a working system, others are optional. At this point of the installation, you will be presented with a menu which enables you to choose from one of the following methods of installing the sets. Some of these methods will first load the sets on your hard disk, others will extract the sets directly. For all these methods, the first step is making the sets available for extraction, and then do the actual installation. The sets can be made available in a few different ways. The following sections describe each of those methods. After reading the one about the method you will be using, you can continue to section 9 8.1 Installation using ftp To be able to install using ftp, you first need to configure your network setup, if you haven't already at the start of the install procedure. sysinst will do this for you, asking you to provide some data, like IP number, hostname, etc. If you do not have name service set up for the machine that you are installing on, you can just press 'return' in answer to these questions, and DNS will not be used. You will also be asked to specify the host that you want to transfer the sets from, the directory on that host, and the account name and password used to log into that host using ftp. If you did not set up DNS when answering the questions to configure networking, you will need to specify an IP number instead of a hostname for the ftp server. sysinst will proceed to transfer all the default set files from the remote site to your hard disk. 8.2 Installation using NFS To be able to install using NFS, you first need to configure your network setup, if you haven't already at the start of the install procedure. sysinst will do this for you, asking you to provide some data, like IP number, hostname, etc. If you do not have name service set up for the machine that you are installing on, you can just press 'return' in answer to these questions, and DNS will not be used. You will also be asked to specify the host that you want to transfer the sets from, and the directory on that host that the files are in. This directory should be mountable by the machine you are installing on, i.e. correctly exported to your machine. If you did not set up DNS when answering the questions to configure networking, you will need to specify an IP number instead of a hostname for the NFS server. 8.3 Installation from CD-ROM When installing from a CD-ROM, you will be asked to specify the device name for your CD-ROM player (usually 'cd0'), and directory name on the CD-ROM where the distribution files are. sysinst will then check if the files are indeed available in the specified location, and proceed to the actual extraction of the sets. 8.4 Installation from floppy Because the installation sets are too big to fit on one floppy, the floppies are expected to be filled with the split set files. The floppies are expected to be in MS-DOS format. You will be asked for a directory where the sets should be reassembled. Then you will be prompted to insert the floppies containing the split sets. This process will continue until all the sets have been loaded from floppy. 8.5 Installation from an unmounted filesystem In order to install from a local filesystem, you will need to specify the device that the filesystem resides on (for example 'wd1e'), the type of the filesystem, and the directory on the specified filesystem where the sets are located. sysinst will then check if it can indeed access the sets at that location. 8.6 Installation from a local directory This option assumes that you have already done some preparation yourself. The sets should be located in a directory on a filesystem that is already accessible. sysinst will ask you for the name of this directory. 9. Extracting the distribution sets After you the install sets containing the NetBSD distribution have been made available, you can either extract all the sets (a full installation), or only extract sets that you have selected. In the latter case you will be shown the currently selected sets, and given the opportunity to select the sets you want. Some sets always need to be installed ("kern", "base" and "etc"), they will not be shown in this selection menu. Before extraction begins, you can elect to watch the files being extracted; the name of each file that is extracted will be shown. After all the files have been extracted, all the necessary device node files will be created. If you have already configured networking, you will be asked if you want to use this configuration for normal operation. If so, these values will be installed in the network configuration files. 10. Finalizing your installation. Congratulations, you have successfully installed NetBSD 1.3.3. You can now reboot the machine, and boot from harddisk. After reboot, you can log in "root" at the login prompt. There is no initial password, but if you're using the machine in a networked environment, you should create yourself an account and protect it and the "root" account with good passwords. You should now edit the /etc/rc.conf file to configure the system to suit your needs, and then reboot the system again. Some other files in the NetBSD 1.3.3 distribution might need to be tailored for your site. In particular, the /etc/sendmail.cf file will almost definitely need to be adjusted, and other files in /etc will probably need to be modified, as well. If you are unfamiliar with UN*X-like system administration, it's recommended that you buy a book that discusses it. If you have installed the X window system, look at the files in /usr/X11R6/lib/X11/doc for information. You will need to set up a configuration file. An example of such a file is /usr/X11R6/lib/X11/XF86Config.eg. See http://www.xfree86.org/ and the XFree86 manual page for more information. Upgrading a previously-installed NetBSD System: --------- - ---------- --------- ------ ------ The upgrade to NetBSD 1.3.3 is a binary upgrade; it can be quite difficult to advance to a later version by recompiling from source due primarily to interdependencies in the various components. To do the upgrade, you must have the boot floppy image (boot.fs) available. You must also have at least the "base" and "kern" binary distribution sets available, so that you can upgrade with it, using one of the upgrade methods described above. Finally, you must have sufficient disk space available to install the new binaries. Since the old binaries are being overwritten in place, you only need space for the new binaries, which weren't previously on the system. If you have a few megabytes free on each of your root and /usr partitions, you should have enough space. Since upgrading involves replacing the boot blocks on your NetBSD partition, the kernel, and most of the system binaries, it has the potential to cause data loss. You are strongly advised to BACK UP ANY IMPORTANT DATA ON YOUR DISK, whether on the NetBSD partition or on another operating system's partition, before beginning the upgrade process. The upgrade procedure using the sysinst tool is basically the same as an installation, but without the hard disk partitioning. Another difference is that existing configuration files in /etc are backed up, and merged with the new files. Getting the binary sets is done in the same manner as the installation procedure; refer to the installation part of the document, section 7 and 8, on how to do this. Also, some sanity checks are done, i.e. filesystems are checked before unpacking the sets. After a new kernel has been copied to your hard disk, your machine is a complete NetBSD 1.3.3 system. However, that doesn't mean that you're finished with the upgrade process. You will probably want to update the set of device nodes you have in /dev. If you've changed the contents of /dev by hand, you will need to be careful about this, but if not, you can just cd into /dev, and run the command "sh MAKEDEV all". You must also deal with certain changes in the formats of some of the configuration files. The most notable change is that the "options" given to many of the file systems in /etc/fstab or by hand have changed, and some of the file systems have changed names. To find out what the new options are, it's suggested that you read the manual page for the file systems' mount commands, for example mount_nfs(8) for NFS. Finally, you will want to delete old binaries that were part of the version of NetBSD that you upgraded from and have since been removed from the NetBSD distribution. 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.3.3: * Swap configuration Description: All swap partitions are now configured by the swapctl(8) program. The kernel no longer configures a "default" swap partition. Because of this, all swap partitions (even the old "default") must be listed in /etc/fstab. Many users of previous releases relied on the kernel configuring a "default" swap partition and did not list any swap space in /etc/fstab at all -- such users will now have no swap space configured unless they list swap partitions in /etc/fstab! Common symptoms of of this problem include machine crashes during builds, and similar memory intensive activities. Fix: The most common position for a swap partition is the `b' partition of the drive the root file system is on. For diskless systems, check the new swapctl(8) manual for more detail on how this is done. Example fstab entries: /dev/sd0b none swap sw,priority=0 /dev/sd1b none swap sw,priority=5 * NFS daemons and other programs in /sbin moved Description: The NFS daemons (nfsd, nfsiod, mountd) have been moved from the /sbin to the /usr/sbin directory. When new binaries are loaded over old ones during upgrade, most programs get overlaid and replaced, but unless these binaries are explicitly removed they will not disappear. The installation subsystems on some NetBSD architectures will not properly remove these binaries. Due to changes in the NFS subsystem, the old NFS daemon binaries will not work correctly, and will cause serious problems. Unfortunately, the default startup script (/etc/rc) will run the old binaries in /sbin if they are present instead of the new ones in /usr/sbin. Some other programs (dumpfs, dumplfs and quotacheck) have also been moved from /sbin to /usr/sbin, and old versions may be left behind by accident. They, too, may cause difficulties. Fix: Remove the old daemon binaries (/sbin/nfsiod, /sbin/nfsd, /sbin/mountd, etc.) after your upgrade has finished. You may wish to do an "ls -lt /sbin | more" to help determine which binaries were not replaced/removed during your upgrade. * AMANDA, The Advanced Maryland Automatic Network Disk Archiver, from http://www.amanda.org Description: Due to a change in the output of dump(8) to ensure consistency in the messages, AMANDA's dump output parser breaks. Error messages such as the following may be an indication that this problem is present: FAILURE AND STRANGE DUMP SUMMARY: hostname wd0e lev 1 FAILED [no backup size line] Versions affected: 2.3.0.4, and most likely earlier versions Workaround/Fix: One of: * Apply the patch found at: ftp://ftp.netbsd.org/pub/NetBSD/misc/patches/amanda-pre-2.4.patch * Upgrade to AMANDA 2.4.0 or newer. The side effect of this is that the network protocol is incompatible with earlier versions. 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 intro(1), man(1), apropros(1), passwd(1), and passwd(5). The section numbers group the topics into several categories, but three are of primary interest: user commands are in section 1, file formats are in section 5, and administrative information is in section 8. The 'man' command is used to view the documentation on a topic, and is started by entering 'man [section] topic'. The brackets [] around the section should not be entered, but rather indicate that the section is optional. If you don't ask for a particular section, the topic with the least-numbered section name will be displayed. For instance, after logging in, enter man passwd to read the documentation for passwd(1). To view the documentation for passwd(5), enter man 5 passwd instead. If you are unsure of what man page you are looking for, enter apropos subject-word where "subject-word" is your topic of interest; a list of possibly related man pages will be displayed. 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 . To get help on using the mailing list server, send mail to that address with an empty body, and it will reply with instructions. There are various mailing lists set up to deal with comments and questions about this release. Please send comments to: netbsd-comments@NetBSD.ORG To report bugs, use the 'send-pr' command shipped with NetBSD, and fill in as much information about the problem as you can. Good bug reports include lots of details. Additionally, bug reports can be sent by mail to: netbsd-bugs@NetBSD.ORG Use of 'send-pr' 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 interested in doing a serious amount of work on a specific port, you probably should contact the "owner" of that port (listed below). If you'd like to help with this effort, and have an idea as to how you could be useful, send mail and/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 somewhere, then mail the appropriate list about it, or, if you'd rather not do that, mail the list saying you'll send the data to those who want it. Thanks go to: ------ -- -- Members and former members of UCB's Computer Systems Research Group, including (but not limited to): Keith Bostic Ralph Campbell Mike Karels Marshall Kirk McKusick for their ongoing work on BSD systems, support, and encouragement. 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. 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. Best Internet Communications for hosting the NetBSD FTP and SUP server. Cygnus Support for hosting the NetBSD Mail server. 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. Dave Burgess has been maintaining the 386BSD/NetBSD/FreeBSD FAQ for quite some time, and deserves to be recognized for it. The following people (in alphabetical order) have made donations or loans of hardware and/or money, to support NetBSD development, and deserve credit for it: Bay Area Internet Solutions Jason Brazile David Brownlee Simon Burge Dave Burgess Ralph Campbell Canada Connect Corporation Brian Carlstrom James Chacon Bill Coldwell Charles Conn Tom Coulter Charles D. Cranor Christopher G. Demetriou Demon Internet, UK Easynet, UK Scott Ellis Free Hardware Foundation Greg Gingerich Michael L. Hitch Innovation Development Enterprises of America Scott Kaplan Chris Legrow Neil J. McRae Perry E. Metzger MS Macro System GmbH, Germany Numerical Aerospace Simulation Facility, NASA Ames Research Center Herb Peyerl Mike Price Thor Lancelot Simon Bill Sommerfeld Paul Southworth Jason R. Thorpe Steve Wadlow (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.) 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: Paul Kranenburg Herb Peyerl Scott Reynolds Christos Zoulas The port-masters (and their ports): Mark Brinicombe (arm32) Jeremy Cooper (sun3x) Chuck Cranor (mvme68k) Charles Hannum (i386) Ross Harvey (alpha) Chris Hopps (amiga) Eduardo Horvath (sparc64) Paul Kranenburg (sparc) Ted Lemon (pmax) Anders Magnusson (vax) Tsubai Masanari (macppc, newsmips) Phil Nelson (pc532) Masaru Oki (x68k) Scott Reynolds (mac68k) Gordon Ross (sun3, sun3x) Kazuki Sakamoto (bebox) Wolfgang Solfrank (powerpc) Jonathan Stone (pmax) Jason Thorpe (hp300) Frank van der Linden (i386) Leo Weppelman (atari) The NetBSD 1.3.3 Release Engineering team: Chris G. Demetriou Ted Lemon Perry Metzger Jason Thorpe Supporting cast: Steve Allen Lennart Augustsson Christoph Badura Manuel Bouyer Robert V. Baron John Birrell Manuel Bouyer John Brezak Allen Briggs Aaron Brown David Brownlee Simon Burge Dave Burgess Dave Carrel Bill Coldwell Alistair Crooks Aidan Cully Rob Deker Chris G. Demetriou Matthias Drochner Enami Tsugutomo Bernd Ernesti Erik Fair Hubert Feyrer Thorsten Frueauf Brian R. Gaeke Thomas Gerner Justin Gibbs Adam Glass Michael Graff Brad Grantham Matthew Green Juergen Hannken-Illjes Charles M. Hannum Eric Haszlakiewicz Michael L. Hitch Ken Hornstein Marc Horowitz ITOH Yasufumi Matthew Jacob Lonhyn T. Jasinskyj Darrin Jewell Lawrence Kesteloot Klaus Klein John Kohl Kevin Lahey Ted Lemon Mike Long Paul Mackerras Neil J. McRae Perry Metzger Luke Mewburn Minoura Makoto der Mouse Tohru Nishimura Greg Oster Herb Peyerl Matthias Pfaller Dante Profeta Chris Provenzano Waldi Ravens Darren Reed Tim Rightnour Heiko W. Rupp SAITOH Masanobu Kazuki Sakamoto Curt Sampson Wilfredo Sanchez Ty Sarna Matthias Scheler Karl Schilke (rAT) Tim Shepard Chuck Silvers Thor Lancelot Simon Noriyuki Soda Wolfgang Solfrank Bill Sommerfeld Ignatios Souvatzis Bill Studenmund Kevin Sullivan Kimmo Suominen Matt Thomas Christoph Toshok Todd Vierling Paul Vixie Krister Walfridsson Nathan Williams Colin Wood Steve Woodford Dedication: ---------- The Release Engineering team would like to dedicate the NetBSD 1.3 release to the memory of the late Koji Imada, who was killed in a motorcycle accident in August, 1997 at the age of 28. A doctoral student in Mathematical Science at Nagoya University, he was a user of NetBSD and a contributor to the project since 1993. Well remembered by his friends, he was also known as a connoisseur of gins, teas, and the motorcycles he loved to ride. His death came as a shock, and he will be greatly missed by all of us. May he rest in peace. 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 Engineering 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 Hannum. 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 Washington University. This product includes software developed by Charles D. Cranor. This product includes software developed by Charles Hannum, by the University 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 Weppelman. 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 Communications, 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. 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 Science at the University of Utah. This product includes software developed by the University of Calgary Department 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 Consortium 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 Piermont Information Systems Inc. This product includes software developed for the NetBSD Project by Ted Lemon. This product includes software developed by Charles Hannum. This product includes software developed by Charles Hannum, by the University 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 the University of Vermont and State Agricultural College and Garrett A. Wollman. This product includes software developed by Dean Huxley. This product includes software developed by Herb Peyerl. In the following statement, "This software" refers to the Mitsumi CD-ROM driver: This software was developed by Holger Veit and Brian Moore for use with "386BSD" and similar operating systems. "Similar operating systems" includes mainly non-profit oriented systems for research and education, including but not restricted to "NetBSD", "FreeBSD", "Mach" (by CMU). In the following statement, "This software" refers to the parallel port driver: This software is a component of "386BSD" developed by William F. Jolitz, TeleMuse.