summaryrefslogtreecommitdiff
path: root/distrib/notes/mvme68k/install
diff options
context:
space:
mode:
Diffstat (limited to 'distrib/notes/mvme68k/install')
-rw-r--r--distrib/notes/mvme68k/install361
1 files changed, 361 insertions, 0 deletions
diff --git a/distrib/notes/mvme68k/install b/distrib/notes/mvme68k/install
new file mode 100644
index 00000000000..193b95f75e0
--- /dev/null
+++ b/distrib/notes/mvme68k/install
@@ -0,0 +1,361 @@
+Installing OpenBSD is a relatively complex process, but if you have
+this document in hand it shouldn't be too much trouble.
+
+There are several ways to install OpenBSD onto a disk. The easiest way
+nin terms of preliminary setup is to use the OpenBSD miniroot that can
+be booted off your local disk's swap partition. Alternatively, if your
+Sparcstation is hooked up in a network you can find a server and arrange
+for a diskless setup which is a convenient way to install on a machine
+whose disk does not currently hold a usable operating system (see the
+section `Installing using a diskless setup' below).
+
+
+Installing using the OpenBSD miniroot.
+
+The miniroot is a self-contained OpenBSD filesystem holding all utilities
+necessary to install OpenBSD on a local disk. It is distributed as a plain
+file designed to be transferred to a raw disk partition from which it can
+be booted using the appropriate PROM command. Usually, the miniroot will
+be loaded into the swap partition of a disk. If needed, you can use any
+other unused partition, but remember that the partition will then not
+available during the installation process.
+
+This will cause the kernel contained in the miniroot to be booted.
+After the initial probe messages you'll asked to start the install
+or upgrade procedure. Proceed to the section `Running the installation
+scripts' below.
+
+
+Installing using a diskless setup.
+
+First, you must setup a diskless client configuration on a server. If
+you are using a OpenBSD system as the boot-server, have a look at the
+diskless(8) manual page for guidelines on how to proceed with this.
+If the server runs another operating system, you'll have to consult
+documentation that came with it (on SunOS systems, add_client(8) is a
+good start).
+
+Your Sparcstation expects to be able to download a second stage bootstrap
+program via TFTP after having acquired its IP address through RevARP when
+instructed to boot "over the net". It will look for a filename composed of
+the machine's IP address followed by the machine's architecture, separated
+by a period. For example, a sun4c machine which has been assigned IP
+address 130.115.144.11, will make an TFTP request for `8273900B.SUN4C'.
+Normally, this file is a symbolic link to an appropriate second-stage
+boot program, which should be located in a place where the TFTP daemon
+can find it (remember, many TFTP daemons run in a chroot'ed environment).
+You can find the boot program in `/usr/mdec/boot' in the OpenBSD/sparc
+distribution. Unfortunately, it is necessary to install this file
+differently for sun4 and sun4c clients: the sun4 version needs to have its
+`a.out' header stripped off (otherwise the machine will crash), while the
+sun4c version must retain it (otherwise the PROM will complain).
+
+Here's an example to illustrate this whole mess:
+
+ server# cd /<client-root-dir>/usr/mdec
+ if client is a sun4:
+ server# set SKIP=1
+ server# set KARCH=SUN4
+ else
+ server# set SKIP=0
+ server# set KARCH=SUN4C
+ server# dd if=boot of=/tftpboot/boot.sparc.OpenBSD.$KARCH skip=$SKIP bs=32
+ server# cd /tftpboot
+ server# ln -s boot.sparc.OpenBSD.$KARCH 8273900B.$KARCH
+
+Note: some versions of Openboot ROMs (sun4c/sun4m) seem to require that the
+boot program size is nicely rounded. Therefore it may be necessary to
+strip(8) off the symbol table.
+
+After the boot program has been loaded into memory and given control by
+the PROM, it starts locating the machine's remote root directory through
+the BOOTPARAM protocol. First a BOOTPARAM WHOAMI request is broadcast
+on the local net. The answer to this request (if it comes in) contains
+the client's name. This name is used in next step, a BOOTPARAM GETFILE
+request -- sent to the server that responded to the WHOAMI request --
+requesting the name and address of the machine that will serve the client's
+root directory, as well as the path of the client's root on that server.
+
+Finally, this information (if it comes in) is used to issue a REMOTE MOUNT
+request to the client's root filesystem server, asking for an NFS file
+handle corresponding to the root filesystem. If successful, the boot
+rogram starts reading from the remote root filesystem in search of the
+kernel which is then read into memory.
+
+
+As noted above in the section `Preparing your System for OpenBSD Installation',
+you have several options when choosing a location to store the installation
+filesets. However, the easiest way is to put the *.tar.gz files you want
+to install into the root directory for your client on the server.
+
+Next, unpack `base.tar.gz' and `etc.tar.gz' on the server in the root
+directory for your machine. If you elect to use a separately NFS-mounted
+filesystem for `/usr' with your diskless setup, make sure the "./usr" base
+files in base.tar.gz end up in the correct location. One way to do this is
+to temporarily use a loopback mount on the server, re-routing <root>/usr to
+your server's exported OpenBSD "/usr" directory. Also put the kernel and the
+install/upgrade scripts into the root directory.
+
+A few configuration files need to be edited:
+
+ <root>/etc/hosts
+ Add the IP addresses of both server and client.
+
+ <root>/etc/myname
+ This files contains the client's hostname; use the same
+ name as in <root>/etc/hosts.
+
+ <root>/etc/fstab
+ Enter the entries for the remotely mounted filesystems.
+ For example:
+ server:/export/root/client / nfs rw 0 0
+ server:/export/exec/sun4.OpenBSD /usr nfs rw 0 0
+
+Now you must populate the the `/dev' directory for your client. If you server
+runs SunOS 4.x, you can simply change your working directory to `<root>/dev'
+and run the MAKEDEV script: `sh MAKEDEV all'.
+
+On SunOS 5.x systems, MAKEDEV can also be used, but there'll be error
+messages about unknown user and groups. These errors are inconsequential
+for the purpose of installing OpenBSD. However, you may want to correct them
+if you plan to the diskless setup regularly. In that case, you may re-run
+MAKEDEV on your OpenBSD machine once it has booted.
+
+Boot your workstation from the server by entering the appropriate `boot'
+command at the monitor prompt. Depending on the PROM version in your machine,
+this command takes one of the following forms:
+
+ > b le()bsd -s # for sun4 monitors
+ ok boot le()bsd -s # for version 1 OpenBOOT ROMs
+ ok boot net bsd -s # for version 2 OpenBOOT ROMs
+
+This will boot the OpenBSD kernel in single-user mode.
+
+[[
+NOTE: the latter two examples assume you operate the OpenBOOT ROM in
+"new command mode". If your machine comes up and gives you a `>' prompt
+instead of `ok', type:
+
+ >n # enter native OpenBOOT mode
+ ok setenv sunmon-compat? false # make it permanent
+ ok
+]]
+
+If you use a diskless setup with a separately NFS-mounted /usr filesystem,
+mount /usr by hand now:
+
+OpenBSD# mount /usr
+
+At this point, it's worth checking the disk label and partition sizes on
+the disk you want to install OpenBSD onto. OpenBSD understands SunOS-style
+disklabels, so if your disk was previously used by SunOS there will be
+a usable label on it. Use `disklabel -e <disk>' (where <disk> is the
+device name assigned by the OpenBSD kernel, e.g. `sd0') to view and
+modify the partition sizes. See the section `Preparing your System for
+OpenBSD Installation' above for suggestions about disk partition sizes.
+Make sure all your partitions start and end on cylinder boundaries.
+
+NOTE: if you are installing on a SCSI disk that does *not* have a SunOS
+or OpenBSD label on it, you may still be able to use disklabel(8) but you'll
+have to create all partitions from scratch. If your disk is listed in
+`/etc/disktab', you may use the entry (which in most cases only defines
+a `c' partition to describe the whole disk) to put an initial label on
+the disk. DO NOT USE `disklabel -r ...' TO INITIALIZE YOUR DISK LABEL;
+THIS WILL LEAD TO UNPREDICTABLE RESULTS. This deficiency will be fixed
+in a next release.
+
+Here follows an example of what you'll see while in the dislabel editor.
+Do not touch any of the parameters except for the `label: ' entry and
+the actual partition size information at the bottom (the lines starting
+with `a:', `b:', ...).
+
+The size and offset fields are given in sector units. Be sure to make
+these numbers multiples of the of the number of sectors per cylinder:
+the kernel might be picky about these things, but aside from this you'll
+have the least chance of wasting disk space.
+Partitions on which you intend to have a mountable filesystem, should
+be given fstype `4.2BSD'. Remember, the `c' partition should describe
+the whole disk.
+The `(Cyl. x - y)' info that appears after the hash (`#') character is
+treated as a comment and need not be filled in when altering partitions.
+
+Special note: the line containing `8 partitions:' is best left alone,
+even if you define less then eight partitions. If this line displays
+a different number and the program complains about it (after you leave
+the editor), then try setting it to `8 partitions:'.
+
+
+<BEGIN SAMPLE DISKLABEL SCREEN>
+OpenBSD# disklabel sd2
+ # /dev/rsd2c:
+type: SCSI
+disk: SCSI disk
+label: Hold Your Breath
+flags:
+bytes/sector: 512
+sectors/track: 64
+tracks/cylinder: 7
+sectors/cylinder: 448
+cylinders: 1429
+rpm: 3600
+interleave: 1
+trackskew: 0
+cylinderskew: 0
+headswitch: 0 # milliseconds
+track-to-track seek: 0 # milliseconds
+drivedata: 0
+
+8 partitions:
+# size offset fstype [fsize bsize cpg]
+ a: 50176 0 4.2BSD 0 0 0 # (Cyl. 0 - 111)
+ b: 64512 50176 swap # (Cyl. 112 - 255)
+ c: 640192 0 unknown # (Cyl. 0 - 1428)
+ d: 525504 114688 4.2BSD 0 0 0 # (Cyl. 256 - 1428)
+<END SAMPLE DISKLABEL SCREEN>
+
+
+If you are upgrading a OpenBSD installation, start the upgrade script:
+
+OpenBSD# sh upgrade.sh
+
+else, start the installation script:
+
+OpenBSD# sh install.sh
+
+
+These scripts will do most of the work of transferring the system from the
+tar files onto your disk. You will frequently be asked for confirmation
+before the script proceeds with each phase of the installation process.
+Occasionally, you'll have to provide a piece of information such as the
+name of the disk you want to install on or IP addresses and domain names
+you want to assign. If your system has more than one disk, you may want
+to look at the output of the dmesg(8) command to see how your disks
+have been identified by the kernel.
+
+The installation script goes through the following phases:
+
+ - determination of the disk to install OpenBSD on
+ - checking of the partition information on the disk
+ - creating and mounting the OpenBSD filesystems
+ - setup of IP configuration
+ - extraction of the distribution tar files
+ - installation of boot programs
+
+
+Now try a reboot. (If needed, swap your scsi id's first). Initially
+I'd suggest you "boot sd()bsd -bs", then try multiuser after that.
+if you boot single-user the OpenBSD incantation to make the root
+filesystem writable is
+
+ OpenBSD# mount -u /dev/sd0a /
+
+The Sun monitor normally tries to load a file called "vmunix". On
+OpenBOOT ROM systems you can change it to load OpenBSD instead using
+the following commands:
+
+On version 1 OpenBOOT ROMs:
+ >n
+ ok setenv boot-from sd(0,0,0)bsd
+ ok
+
+On version 2 OpenBOOT ROMs:
+ ok setenv boot-file bsd
+ ok setenv boot-device /sbus/esp/sd@0,0
+
+
+Congratulations, you have successfully installed OpenBSD 2.0. When you
+reboot into OpenBSD, you should log in as "root" at the login prompt.
+There is no initial password, but if you're using the machine in a
+networked environment, you should create yourself an account and
+protect it and the "root" account with good passwords.
+
+Some of the files in the OpenBSD 2.0 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. If you are unfamiliar with UN*X-like
+system administration, it's recommended that you buy a book that
+discusses it.
+
+
+
+Installing from SunOS.
+
+You need a SunOS machine to install OpenBSD. You also need at
+least the following pieces:
+
+ the *.tar.gz files you want to install (as a minimum, base.tar.gz)
+ gzip (GNU gzip) SunOS binary
+ gtar (GNU tar) SunOS binary
+ the "install.sh" script
+ a "/boot" file from a SunOS machine that matches your machine type
+ (e.g. sun or sun4c)
+ a kernel, most likely "/bsd"
+
+All these pieces, except "/boot", are supplied in the OpenBSD/sparc
+distribution.
+
+You need to format and partition the disk using SunOS (since
+OpenBSD/sparc uses SunOS disk labels.) Give yourself adequate
+partition sizes. Here is an example layout:
+
+ partition size offset will be..
+ sd2a 28140 0 /
+ sd2b 16170 28140 swap
+ sd2c 204540 0 `whole disk'
+ sd2g 160230 44310 /usr
+
+BTW, These are not recommended sizes. They simply match the first
+(tiny) disk that OpenBSD/sparc ran on.
+
+Use SunOS to newfs the partitions which will have filesystems on them.
+(OpenBSD's filesystem format is identical to SunOS).
+
+ sunos# newfs /dev/rsd2a
+ [... lots of output]
+ sunos# newfs /dev/rsd2g
+ [... lots of output]
+
+NOTE: If you are able to, there is a performance benefit from
+newfs'ing using OpenBSD. If you newfs using the OpenBSD newfs command,
+be sure to use the -O flag for your / partition, so that newfs will
+use the 4.3BSD filesystem format, rather than the new 4.4BSD filesystem
+format. If you forget, you will not be able to boot -- the SunOS boot
+blocks do not understand the extended 4.4BSD filesystem format.
+
+Mount those partitions in a tree formation, under /mnt; ie:
+
+ sunos# df
+ Filesystem kbytes used avail capacity Mounted on
+ [...]
+ /dev/sd2a 11501 0 11501 0% /mnt
+ /dev/sd2g 179529 0 179529 0% /mnt/usr
+
+Place a standard SunOS "/boot" program in /mnt (your new root
+partition), and use the SunOS command "installboot" to make it work.
+The installboot man page says to do something like this:
+
+ sunos# cp /boot /mnt/boot
+ sunos# /usr/mdec/installboot -vlt /mnt/boot /usr/mdec/bootsd /dev/rsd2a
+
+You can now extract the provided "*.tar.gz files onto your disk. The
+provided script, "install_from_sunos.sh" will help you:
+
+ sunos# ls -FC
+ base.tar.gz etc.tar.gz man.tar.gz secr.tar.gz
+ comp.tar.gz games.tar.gz misc.tar.gz text.tar.gz
+ install.sh bsd.id3_scsi
+ sunos# ./install_from_sunos.sh
+ [...]
+
+This script NEEDS gzip and gtar (GNU gzip and GNU tar) on your
+execution path! The tar files are in a "new format" that includes
+directory information, and SunOS tar will not read them. Statically
+linked versions of these programs for SunOS are supplied in the
+distribution.
+
+After the files have been extracted, repair /mnt/etc/fstab to match
+your actual disk layout. (Minus the "/mnt" component of each path, of
+course :-)
+
+Now proceed to reboot the machine as described above in "Installing
+using a diskless setup".