INSTALLATION NOTES for NetBSD/amiga 1.3_BETA Be sure to read _ALL_ of this document before you try to install NetBSD/amiga. What is NetBSD? ---- -- ------ The NetBSD Operating System is a fully functional UN*X-like system derrived 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_BETA release is 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_BETA release. Some of the significant changes include: Support for machine independant 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 multiplatform 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 detach it from being very ethernet-centric. Many kernel interface manuals have been written and 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_BETA 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. This is the fourth public release of NetBSD for the Amiga and DraCo line of computers. Several additional SCSI boards are now supported, as well as Amiga audio and FPU-less 68020/68030 systems; the DraCo port supports the on-board serial and parallel interface and the battery backed clock now. Compatibility Issues: ------------- ------ As with any system which has functionality added and products modified to fit within the goals of portability, standards adherance, and uniformity, there have been some changes which affects compatibility with existing NetBSD products. The following products may need the suggested work-around to work in NetBSD 1.3_BETA: * Swap configuration Description: Swap partittion configuration is now entirely in the domain of the user and as such all swap partitions need to be added to /etv/fstab. Common symptoms of upgrades missing this vital step include machine death during builds, and such. 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 entrys: /dev/sd0b none swap sw,priority=0 /dev/sd1b none swap sw,priority=5 * 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. 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 Sep 22, 1997 If you wish to become a distribution site for NetBSD, contact mirrors@netbsd.org. FTP mirrors ----------- Australia * ftp://ftp.au.netbsd.org/pub/NetBSD Brazil * ftp://ftp.ravel.ufrj.br/pub/NetBSD Germany * ftp://ftp.de.netbsd.org/pub/NetBSD * ftp://ftp.uni-regensburg.de/pub/comp/os/NetBSD Japan * ftp://netbsd.tohoku.ac.jp/NetBSD Netherlands * ftp://ftp.nl.netbsd.org/pub/comp/NetBSD Norway * ftp://ftp.ntnu.no/pub/NetBSD * ftp://skarven.itea.ntnu.no/pub/NetBSD Sweden * ftp://ftp.stacken.kth.se/pub/OS/NetBSD * ftp://ftp.sunet.se/pub/os/NetBSD UK * ftp://ftp.DOMINO.ORG/pub/NetBSD USA * ftp://ftp.netbsd.org/pub/NetBSD * ftp://ftp.cs.umn.edu/pub/NetBSD * ftp://ftp.cslab.vt.edu/pub/NetBSD * ftp://ftp.eecs.umich.edu/pub/NetBSD * ftp://ftp.iastate.edu/pub/netbsd * ftp://ftp.op.net/pub/NetBSD SUP mirrors ----------- Australia * ftp.au.netbsd.org Instructions: ftp://sup.au.netbsd.org/pub/NetBSD/sup/README.sup Germany * ftp.de.netbsd.org Instructions: ftp://sup.de.netbsd.org/pub/NetBSD/sup/supfile.example Norway * skarven.itea.ntnu.no 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 * ftp.domino.org Instructions: See ftp://ftp.netbsd.org/pub/NetBSD/sup/README.sup USA * sup.netbsd.org Instructions: See ftp://ftp.netbsd.org/pub/NetBSD/sup/README.sup * ftp.cs.umn.edu Instructions: hostbase=/ftp/ftp/packages/NetBSD, collections are the same as on sup.NetBSD.ORG AFS mirrors ----------- USA * ftp.iastate.edu AFS path: /afs/iastate.edu/public/ftp/pub/netbsd NetBSD 1.3_BETA Release Contents: ------ --- ------- -------- The NetBSD 1.3_BETA release is organized in the following way: .../NetBSD-1.3_BETA/ 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_BETA 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_BETA 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, and that it is your responsibility should you choose to export these portions. 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: dsrc13 This set contains the "domestic" sources. These sources may be subject to United States export regulations. [ 140K gzipped, 655K uncompressed ] /* XXX */ gsrc13 This set contains the "gnu" sources, including the source for the compiler, assembler, groff, and the other GNU utilities in the binary distribution sets. [ 7.1M gzipped, 30.4M uncompressed ] /* XXX */ ksrc13 This set contains the sources to the NetBSD 1.3_BETA kernel, config(8), and dbsym(8). [ 6.0M gzipped, 27.0M uncompressed ] /* XXX */ ssrc13 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.4M gzipped, 8.9M uncompressed ] /* XXX */ src13 This set contains all of the NetBSD 1.3_BETA sources which are not mentioned above. [ 9.3M gzipped, 41.6M uncompressed ] /* XXX */ 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. The source distribution sets are distributed as groups of files 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.) Catted together, the files belonging to a source distribution set comprise a gzipped tar file. If you want to look at list of the files contained in the set, you could use the command: cat set_name.?? | gunzip | tar tvf - or to actually extract the files contained in the set: cat set_name.?? | gunzip | tar xfp - 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. The Amiga-specific portion of the NetBSD 1.3_BETA release is found in the "amiga" subdirectory of the distribution. That subdirectory is laid out as follows: .../NetBSD-1.3_BETA/amiga/ INSTALL Installation notes; this file. binary/ sets/ Amiga binary distribution sets; see below. security/ Amiga security distribution; see below; installation/ miniroot/ Amiga miniroot file system image; see below. misc/ Miscellaneous Amiga installation utilities; see installation section, below. The Amiga now uses a single miniroot filesystem for both an initial installation and for an upgrade. A gzipped version is available, for easier downloading. (The gzipped version have the ".gz" extension added to their names.) Miniroot file system: This file contains a BSD root file system setup to help you install the rest of NetBSD or to upgrade a previous version of NetBSD. This includes formatting and mounting your root and /usr partitions and getting ready to extract (and possibly first fetching) the distribution sets. There is enough on this file system to allow you to make a SLIP or PPP connection, configure an Ethernet, mount an NFS file system or ftp. You can also load distribution sets from a SCSI tape or from one of your existing AmigaDOS partitions. This file is named "miniroot.fs". The NetBSD/Amiga binary distribution sets contain the binaries which comprise the NetBSD 1.3_BETA release for the Amiga. There are seven binary distribution sets, and the "security" distribution set. The binary distribution sets can be found in subdirectories of the "amiga/binary" subdirectory of the NetBSD 1.3_BETA distribution tree, and are as follows: base The NetBSD/Amiga 1.3_BETA 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. [ 8.7M gzipped, 25.2M uncompressed ] comp The NetBSD/Amiga Compiler tools. All of the tools relating to C, C++, and FORTRAN (yes, there are two!). 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. [ 6.5M gzipped, 22.9M 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.) [ 52K gzipped, 320K uncompressed ] games This set includes the games and their manual pages. [ 2.8M gzipped, 7.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.4M gzipped, 10.0M 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.1M gzipped, 8.1M uncompressed ] text This set includes NetBSD's text processing tools, including groff, all related programs, and their manual pages. [ 960K gzipped, 3.7M uncompressed ] The Amiga security distribution set is named "secr" and can be found in the "amiga/security" subdirectory of the NetBSD 1.3_BETA distribution tree. It contains crypt.c (the source file for the DES encryption algorithm) and the binaries which depend on it. It can only be found on those sites which carry the complete NetBSD distribution and that 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.) [ 740K gzipped, 2.5M uncompressed ] The Amiga binary distribution sets are distributed in the same form as the source distribution sets; catted together, the members of a set form a gzipped tar file. Each Amiga binary distribution set also has its own "CKSUMS" file, 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 xvfp" from /. Also note that if you upgrade or install this way, those programs that you are using at the time will NOT be replaced. If you follow the normal installation or upgrade procedures, this will be taken care of for you. NetBSD System Requirements and Supported Devices: ------ ------ ------------ --- --------- ------- NetBSD/amiga 1.3_BETA runs on any Amiga that has a 68020 or better CPU with some form of MMU, and on 68060 DraCos. For 68020 and 68030 systems, a FPU is recommended but not required. 68LC040, 68040V and 68LC060 systems don't work correctly at the moment. The minimal configuration requires 4M of RAM and about 75M of disk space. To install the entire system requires much more disk space, and to run X or compile the system, more RAM is recommended. (4M of RAM will actually allow you to compile, however it won't be speedy. X really isn't usable on a 4M system.) Here is a table of recommended HD partition sizes for a full install: partition: advise, with X, needed, with X root (/) 20M 20M 15M 15M user (/usr) 95M 125M 75M 105M swap ----- 2M for every M ram ----- local (/usr/local) up to you As you may note the recommended size of /usr is 20M greater than needed. This is to leave room for a kernel source and compile tree as you will probably want to compile your own kernel. (GENERIC is large and bulky to accommodate all people). If you only have 4M of fast memory, you should make your swap partition larger, as your system will be doing much more swapping. Supported devices include: A4000/A1200 IDE controller. SCSI host adapters: 33c93 based boards: A2091, A3000 builtin and GVP series II. 53c80 based boards: 12 Gauge, IVS, Wordsync/Bytesync and Emplant.*) 53c710 based boards: A4091, Magnum, Warp Engine, Zeus and DraCo builtin. FAS216 based SCSI boards: FastLane Z3, Blizzard I and II, Blizzard IV, Blizzard 2060, CyberSCSI Mk I and II. Video controllers: ECS, AGA and A2024 built in on various Amigas. Retina Z2, Retina Z3 and Altais. Cirrus CL GD 54xx based boards: GVP Spectrum, Picasso II, II+ and IV, Piccolo and Piccolo SD64. Tseng ET4000 based boards: Domino and Domino16M proto, oMniBus, Merlin. A2410. Cybervision 64. Cybervision 64/3D. Audio I/O: Amiga builtin (currently 8bit-mode only) Melody Mpeg-audio layer 2 board Ethernet controllers: A2065 Ethernet Hydra Ethernet ASDG Ethernet A4066 Ethernet Ariadne Ethernet Quicknet Ethernet ARCnet controllers: A2060 ARCnet Tape drives: Most SCSI tape drives, including Archive Viper, Cipher SCSI-2 ST150. Scanners: SCSI-2 scanners behaving as SCSI-2 scanner devices, HP Scanjet II, Mustek SCSI scanner.***) CD-ROM drives: Most SCSI CD-ROM drives Serial cards: HyperCom Z3 and HyperCom 4 MultiFaceCard II and III A2232 Amiga floppy drives with Amiga (880/1760kB) and IBM (720/1440kB) encoding. ****) Amiga parallel port. Amiga serial port. Amiga mouse. DraCo serial port, including serial mouse. DraCo parallel printer port. Real-time clocks: A2000, A3000, A4000 builtin (r/w), DraCo builtin (r/o). If its not on the above lists, there is no support for it in this release. Especially (but this is an incomplete list), there is no driver for: Blizzard III SCSI option, Cyberstorm Mk III SCSI option, Ferret SCSI, Oktagon SCSI. Known problems with some hardware: *) the Emplant SCSI adapter has been reported by a party to hang after doing part of the installation without problems. ***) SCSI scanner support is machine independent, so it should work, but hasn't been tested yet on most Amiga configurations. There are reports that the Mustek and HP Scanjet hang if accessed from the A3000. This might apply to other 33C93-Adapters, too. ****) Our floppy driver doesn't notice when mounted floppies are write-protected at the moment. Your floppy will stay unchanged, but you might not notice that you didn't write anything due to the buffer cache. Also note that HD floppy drives only get detected as such if a HD floppy is inserted at boot time. Getting the NetBSD System on to Useful Media: ------- --- ------ ------ -- -- ------ ----- Installation is supported from several media types, including: AmigaDOS HD partitions Tape NFS partitions FTP NetBSD partitions, if doing an upgrade. The miniroot file system needs to be transferred to the NetBSD swap partition. This can be done from AmigaDOS in the case of a new install or upgrade, or from NetBSD when doing an upgrade. See the "Preparing your System for NetBSD Installation" section for details. The steps necessary to prepare the distribution sets for installation depend on which method of installation you choose. The various methods are explained below. To prepare for installing via an AmigaDOS partition: To install NetBSD from an AmigaDOS partition, you need to get the NetBSD distribution sets you wish to install on your system on to an AmigaDOS partition. All of the set_name.xx pieces can be placed in a single directory instead of separate ones for each distribution set. This will also simplify the installation work later on. Note where you place the files you will need this later. Once you have done this, you can proceed to the next step in the installation process, preparing your hard disk. To prepare for installing via a tape: To install NetBSD from a tape, you need to somehow get the NetBSD file sets you wish to install on your system on to the appropriate kind of tape, in tar format. If you're making the tape on a UN*X system, the easiest way to do so is: tar cvf where "" is the name of the tape device that describes the tape drive you're using (possibly something like /dev/nrst0, but we make no guarantees 8-). If you can't figure it out, ask your system administrator. "" are the names of the "set_name.xx" files which you want to be placed on the tape. Once you have done this, you can proceed to the next step in the installation process, preparing your hard disk. To prepare for installing via an NFS partition: NOTE: this method of installation is recommended only for those already familiar with using the BSD network-manipulation commands and interfaces. If you aren't, this documentation should help, but is not intended to be all-encompassing. Place the NetBSD software you wish to install into a directory on an NFS server, and make that directory mountable by the machine which you will be installing NetBSD on. This will probably require modifying the /etc/exports file of the NFS server and resetting mountd, acts which will require superuser privileges. Note the numeric IP address of the NFS server and of the router closest to the the new NetBSD machine, if the NFS server is not on a network which is directly attached to the NetBSD machine. Once you have done this, you can proceed to the next step in the installation process, preparing your hard disk. To prepare for installing via FTP: NOTE: this method of installation is recommended only for those already familiar with using the BSD network-manipulation commands and interfaces. If you aren't, this documentation should help, but is not intended to be all-encompassing. The preparations for this method of installation are easy: all you have to do is make sure that there's some FTP site from which you can retrieve the NetBSD installation when it's time to do the install. You should know the numeric IP address of that site, the numeric IP address of your nearest router if one is necessary Once you have done this, you can proceed to the next step in the installation process, preparing your hard disk. 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. At a bare minimum, you must upgrade the "base" binary distribution, and so must put the "base" set somewhere in your file system. If you wish, you can do the other sets, as well, but you should NOT upgrade the "etc" distribution; the "etc" distribution contains system 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: --------- ---- ------ --- ------ ------------ You will need an AmigaDOS hard drive prep tool to prepare you hard drives for use with NetBSD/Amiga. HDToolBox is provided with the system software and on floppy installation disks since Release 2.0 of AmigaDOS so we will provide instructions for its use. Preparing you hard disk with HDToolBox: A full explanation of HDToolBox can be found with your AmigaDOS manuals and is beyond the scope of this document. Note you will be modifying your HD's if you mess something up here you could lose everything on all the drives that you configure. It is therefore advised that you: Write down your current configurations. Do this by examining each partition on the drive and the drives parameters (from Change drive type.) Back up the partitions you are keeping. What you need to do is partition your drives; creating at least root, swap and /usr partitions and possibly at least one more for /local if you have the space. This should be done as the HDToolBox manual describes. One thing to note is that if you are not using a Commodore controller you will need to specify the device your SCSI controller uses e.g. if you have a Warp Engine you would: from cli, hdtoolbox warpdrive.device from wb set the tooltype, SCSI_DEVICE_NAME=warpdrive.device The important things you need to do above and beyond normal partitioning includes (from Partition Drive section): Marking all NetBSD partitions as non-bootable, with one exception: the root partition, if you want to boot NetBSD directly. Changing the file system parameters of the partitions to NetBSD ones. This must be done from the partitioning section and `Advanced options' must be enabled. To Make the needed changes: - Click the `Adv. Options' button - Click the `Change file system' button - Choose `Custom File System' - Turn off `Automount' if on. - Set the dostype to one of these three choices: root partition : 0x4e425207 swap partition : 0x4e425301 other partitions: 0x4e425507 Here `other' refers to other partitions you will format for reading and writing under NetBSD (e.g. /usr) Make sure you hit the return key to enter this value as some versions of HDToolBox will forget your entry if you don't. - Turn custom boot code off - Set Reserved Blocks start and end to 0. - Click Ok. On the root (and, for installation, swap) partition, set instead this: - Turn custom boot code on - Set Reserved Blocks start and end to 0. - Set Number of Custom Boot Blocks to 16 - Set Automount This Partition on - Click Ok. Mask and maxtransfer are not used with NetBSD. Once this is done NetBSD/Amiga will be able to recognize your disks and which partitions it should use. Transferring the miniroot file system: The NetBSD/Amiga installation or upgrade now uses a "miniroot" file system which is installed on the partition used by NetBSD for swapping. This removes the requirement of using a floppy disk for the file system used by the installation or upgrade process. It also allows more utilities to be present on the file system than would be available when using an 880K floppy disk. Once the hard disk has been prepared for NetBSD, the miniroot file system (miniroot.fs) is transferred to the swap partition configured during the hard disk prep (or the existing swap partition in the case of an upgrade). The xstreamtodev utility provided in the "amiga/utilities" directory can be used on AmigaDOS to transfer the file system for either a new installation or an upgrade. The file system can also be transferred on an existing NetBSD system for an update by using dd. This should only be done after booting NetBSD into single-user state. It may also be possible to shutdown to single-user, providing that the single-user state processes are not using the swap partition. On AmigaDOS, the command: xstreamtodev --input=miniroot.fs --rdb-name= where is the name you gave to the NetBSD partition to be used for swapping. If xstreamtodev is unable to determine the SCSI driver device name or the unit number of the specified partition, you may also need to include the option "--device=" and/or "--unit=". To transfer the miniroot using NetBSD, you should be booted up in single user state on the current NetBSD system, or use the "shutdown now" command to shutdown to single-user state. Then copy the miniroot using dd: dd if=miniroot.fs of=/dev/rsd0b where /dev/rsd0b should be the device path of the swap partition your system is configured to use. Once the file is copied, reboot back to AmigaDOS to boot the upgrade kernel. Installing the NetBSD System: ---------- --- ------ ------ Installing NetBSD is a relatively complex process, but, if you have this document in hand and are careful to read and remember the information which is presented to you by the install program, it shouldn't be too much trouble. Before you begin, you must have already prepared your hard disk as detailed in the section on preparing your system for install. The following is a walk-through of the steps necessary to get NetBSD installed on your hard disk. If you wish to stop the installation, you may hit Control-C at any prompt, but if you do, you'll have to begin again from scratch. Transfer the miniroot file system onto the hard disk partition used by NetBSD for swapping, as described in the "Preparing your System for NetBSD Installation" section above. * Booting from AmigaOS, using loadbsd: You then need to have "ixemul.library" in your LIBS: directory on AmigaDOS. You also need to have the "loadbsd" program in your command path. If AmigaDOS complains about loadbsd not being an executable file, be sure that the "Execute" protection bit is set. If not, set it with the command: Protect loadbsd add e Next you need to get yourself into NetBSD by loading the kernel from AmigaDOS with loadbsd like so: loadbsd -b netbsd If you have an AGA machine, and your monitor will handle the dblNTSC mode, you may also include the "-A" option to enable the dblNTSC display mode. If your machine has a fragmented physical memory space, as, e.g., DraCo machines, you should add the "-n2" option to enable the use of all memory segments. * Directly booting NetBSD, with boot blocks installed: [This description is for V40 (OS 3.1) ROMs. For older ROMs, there might be small differences. Check your AmigaOS documentation to learn about the exact procedure.] [XXX should note someplace that using bootblocks may not work on some systems, and may require a mountable filesystem on others?] Reboot your machine, holding down both mouse buttons if you have a 2-button mouse, the outer mouse buttons if you have a 3-button mouse. On the DraCo, press the left mouse button instead, when the boot screen prompts you for it. From the boot menu, select "Boot Options". Select the swap partition with the miniroot, and then "ok". Select "Boot" now. The machine will boot the bootblock, which will prompt your for a command line. You have a few seconds time to change the default. Entering an empty line will accept the default. The bootblock uses command lines of the form: file options where file is the kernel file name on the partition where the boot block is on, and options are the same as with loadbsd. E.g., instead of "loadbsd -bsSn2 netbsd" use "netbsd -bsSn2". * Once your kernel boots: You should see the screen clear and some information about your system as the kernel configures the hardware. Note which hard disk device(s) are configured (sd0, sd1, etc). Then you will be prompted for a root device. At this time type 'sd0b', where '0' is the device which contains the swap partition you created during the hard disk preparation. If the system should hang after entering the root device, try again with loadbsd -I ff -b netbsd This disables synchronous transfer on all SCSI devices. The system should continue to boot. For now ignore WARNING: messages about bad dates in clocks, and a warning about /etc/rc not existing. Eventually you will be be asked to enter the pathname of the shell, just hit return. After a short while, you will be asked to select the type of your keyboard. After you have entered a valid response here, the system asks you if you want to install or upgrade your system. Since you are reading the 'install' section, 'i' would be the proper response here... The installer starts with a nice welcome messages. Read this message carefully, it also informs you of the risks involved in continuing! If you still want to go on, type 'y'. The installer now continues by trying to figure out your disk configuration. When it is done, you will be prompted to select a root device from the list of disks it has found. You should know at this point that the disks are NOT numbered according to their scsi-id! The NetBSD kernel numbers the scsi drives (and other devices on the scsi bus) sequentially as it finds them. The drive with the lowest scsi id will be called sd0, the next one sd1, etc. Also, any Amiga internal IDE disk drives will be configured as "SCSI" drives, and will be configured before any 'real' SCSI drives (if any are present). YOU ARE NOW AT THE POINT OF NO RETURN. If you confirm that you want to install NetBSD, your hard drive will be modified, and perhaps its contents scrambled at the whim of the install program. Type Control-C NOW if you don't want this. At this time, you will need to tell the installer which partition will be associated with the different filesystems. The install program will now make the the file systems you specified. There should be only one error per file system in this section of the installation. It will look like so: newfs: ioctl (WDINFO): Invalid argument newfs: /dev/rsd0a: can't rewrite disk label If there are any others, restart from the the beginning of the installation process. This error is ok as the Amiga does not write disklabels currently. You should expect this error whenever using newfs. The install will now ask you want to configure any network information. It ill ask for the machine's host name, domain name, and other network configuration information. Since the network configuration might have lead to additional (nfs) filesystem entries, you get another chance to modify your fstab. Your are finally at the point where some real data will be put on your freshly made filesystems. Select the device type you wish to install from and off you go.... Some notes: - If you want to install from tape, please read the section about how to create such a tape. - Install at least the base and etc sets. - If you have to specify a path relative to the mount-point and you need the mount-point itself, enter '.'. Next you will be asked to specify the timezone. Just select the timezone you are in. The installer will make the correct setup on your root filesystem. After the timezone-link is installed, the installer will proceed by creating the device nodes on your root filesystem. Be patient, this will take a while... Finally, the installer ask you if you want to install the bootblock code on your root disk. This is a matter of personal choice and can also be done from a running NetBSD system. See the 'installboot(8)' manual page about how to do this. Once the installer is done, halt the system with the "halt" command (wait for "halted" to be displayed) and reboot. Then again boot NetBSD this time with the command: loadbsd netbsd or select the root partition from the boot menu, and tell it to boot netbsd -s You need to do your final tweaks now. First mount your file systems like so: mount -av Your system is now complete but not completely configured; you should adjust the /etc/sendmail.cf file as necessary to suit your site and/or disable sendmail and other network related programs. These things can be found in /etc/netstart. Use vi, if you installed the man pages you can type `man vi' or `man ed' for instructions on how to use these somewhat non-intuitive editors. Once you are done with the rest of configuration unmount your file systems and halt your system, then reboot: cd / umount -av halt Finally you can now boot your system and it will be completely functional: loadbsd -a netbsd When it boots off of the hard drive, you will have a complete NetBSD system! CONGRATULATIONS! (You really deserve them!!!) Upgrading a previously-installed NetBSD System: --------- - ---------- --------- ------ ------ The upgrade to NetBSD 1.3_BETA is a binary upgrade; it would be prohibitive to make users upgrade by compiling and installing the 1.3_BETA sources, and it would be very difficult to even compile a set of instructions that allowed them to do so. Because of the various changes to the system, it is impractical to upgrade by recompiling from the sources and installing. To do the upgrade, you must have the NetBSD kernel on AmigaDOS and you must transfer the miniroot file system miniroot.fs onto the swap partition of the NetBSD hard disk. You must also have at least the "base" binary distribution set 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 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. To upgrade your system, follow the following instructions: Transfer the miniroot file system onto the hard disk partition used by NetBSD for swapping, as described in the "Preparing your System for NetBSD Installation" section above. Now boot up NetBSD using the 1.3_BETA kernel using the loadbsd command: loadbsd -b netbsd If you machine has a split memory space, like, e.g., DraCo machines, use this instead: loadbsd -bn2 netbsd * Directly booting NetBSD, with boot blocks installed: [This description is for V40 (OS 3.1) ROMs. For older ROMs, there might be small differences. Check your AmigaOS documentation to learn about the exact procedure.] [XXX another note about bootblock support?] Reboot your machine, holding down both mouse buttons if you have a 2-button mouse, the outer mouse buttons if you have a 3-button mouse. On the DraCo, press the left mouse button instead, when the boot screen prompts you for it. From the boot menu, select "Boot Options". Select the swap partition with the miniroot, and then "ok". Select "Boot" now. The machine will boot the bootblock, which will prompt your for a command line. You have a few seconds time to change the default. Entering an empty line will accept the default. The bootblock uses command lines of the form: file options where file is the kernel file name on the partition where the boot block is on, and options are the same as with loadbsd. E.g., instead of "loadbsd -bsSn2 netbsd" use "netbsd -bsSn2". * Once your kernel boots: You should see the screen clear and some information about your system as the kernel configures the hardware. Note which hard disk device is configured that contains your root and swap partition. When prompted for the root device, type 'sd0b' (replacing 0 with the disk number that NetBSD used for your root/swap device). When you reach the prompt asking you for a shell name, just hit return. You will be presented with some information about the upgrade process and a warning message, and will be asked if you wish to proceed with the upgrade process. If you answer negatively, the upgrade process will stop, and your disk will not be modified. If you answer affirmatively, the upgrade process will begin, and your disk will be modified. You may hit Control-C to stop the upgrade process at any time. However, if you hit it at an inopportune moment, your system may be left in an inconsistent (and possibly unusable) state. You will now be greeted and reminded of the fact that this is a potential dangerous procedure and that you should not upgrade the etc-set. When you decide to proceed, you will be prompted to enter your root disk. After you've done this, it will be checked automatically to make sure that the filesystem is in a sane state before making any modifications. After this is done, you will be asked if you want to configure your network. You are now allowed to edit your fstab. Normally you don't have to. Note that the upgrade-kit uses it's own copy of the fstab. Whatever you do here *won't* affect your actual fstab. After you are satisfied with your fstab, the upgrade-kit will check all filesystems mentioned in it. When they're ok, they will be mounted. You will now be asked if your sets are stored on a normally mounted filesystem. You should answer 'y' to this question if you have the sets stored on a filesystem that was present in the fstab. The actions you should take for the set extraction are pretty logical (I think). After you have extracted the sets, the upgrade kit will proceed with setting the timezone and installing the kernel and bootcode. This is all exactly the same as described in the installation section. Your system has now been upgraded to NetBSD 1.3_BETA. After a new kernel has been copied to your hard disk, your machine is a complete NetBSD 1.3_BETA system. However, that doesn't mean that you're finished with the upgrade process. There are several things that you should do, or might have to do, to insure that the system works properly. You will probably want to get the etc distribution, extract it, and compare its contents with those in your /etc/ directory. You will probably want to replace some of your system configuration files, or incorporate some of the changes in the new versions into yours. 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. If upgrading from a NetBSD version older than 1.0, you might also want to recompile any locally-built binaries, to take advantage of the shared libraries. (Note that any new binaries that you build will be dynamically linked, and therefore take advantage of the shared libraries, by default. For information on how to make statically linked binaries, see the cc(1) and ld(1) manual pages.) 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: ------------- Registration? What's that? 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: J.T. Conklin Charles Hannum Paul Kranenburg Jason Thorpe Christos Zoulas The port-masters (and their ports): Mark Brinicombe (arm32) Jeremy Cooper (sun3x) Chuck Cranor (mvme68k) Charles Hannum (i386) Chris Hopps (amiga) Paul Kranenburg (sparc) Anders Magnusson (vax) Phil Nelson (pc532) Masaru Oki (x68k) Scott Reynolds (mac68k) Gordon Ross (sun3, sun3x) Jonathan Stone (pmax) Jason Thorpe (hp300) Frank van der Linden (i386) Leo Weppelman (atari) Supporting cast: Steve Allen Lennart Augustsson Christoph Badura John Birrell Manuel Bouyer John Brezak Allen Briggs Aaron Brown David Brownlee Simon Burge Dave Burgess Dave Carrel Bill Coldwell Alistair Crooks Rob Deker Chris G. Demetriou Matthias Drochner Bernd Ernesti Erik Fair Hubert Feyrer Brian R. Gaeke Justin Gibbs Adam Glass Michael Graff Brad Grantham Matthew Green Juergen Hannken-Illjes Michael L. Hitch Marc Horowitz Matthew Jacob Lonhyn T. Jasinskyj Lawrence Kesteloot Klaus Klein John Kohl Kevin Lahey Ted Lemon Mike Long Paul Mackerras SAITOH Masanobu Neil J. McRae Perry Metzger Luke Mewburn der Mouse Herb Peyerl Matthias Pfaller Chris Provenzano Waldi Ravens Darren Reed Kazuki Sakamoto Curt Sampson Wilfredo Sanchez Karl Schilke (rAT) Thor Lancelot Simon Noriyuki Soda Wolfgang Solfrank Bill Sommerfeld Ignatios Souvatzis Bill Studenmund Kevin Sullivan Matt Thomas Enami Tsugutomo Todd Vierling Paul Vixie Colin Wood Steve Woodford 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. 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 Matthew R. Green for The NetBSD Foundation. This product includes software developed by Matthew R. Green for the NetBSD Project. 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 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 develooped for the NetBSD Project by Piermont Information Systems Inc. This product includes software developed by Tobias Abt. This product includes software developed by Klaus Burkert. This product includes software developed by Michael van Elst. This product includes software developed by Bernd Ernesti. This product includes software developed by Michael L. Hitch. This product includes software developed by Christian E. Hopps. This product includes software developed by Markus Illenseer. This product includes software developed by Mika Kortelainen. This product includes software developed by Jukka Marin. This product includes software developed by Kari Mettinen. This product includes software developed by Brad Pepers. This product includes software developed by Ignatios Souvatzis. This product includes software developed by Ezra Story. This product includes software developed by Michael Teske. This product includes software developed by Lutz Vieweg. This product includes software developed by Daniel Widenfalk. This product includes software developed by Markus Wild.