Installation on HP 700s


The available ``disk image'' is a compressed dd of the bootblock, root and swap partitions of a disk. The Mach kernel included as part of this image is configured to boot with its root device as target (slave) 5 on the internal single-ended SCSI interface, it will not boot at any other target or with a fast-wide SCSI interface. To load the image, you will need a machine with a SCSI controller and an O.S. that allows you to write to a disk starting at block 0. For the latter, you may need to mark the disk's existing disklabel as writable since you will be overwriting it. On a BSD system you will need to do something like:
	sleep 10000 < /dev/rsd?c &
	disklabel -W sd?
where the first command holds the disk open so the second, making the label writable, will stay in effect. To copy out the image you can then do something like:
	zcat < image.bin.Z | dd of=/dev/rsd?c obs=64k
or
	dd if=image.bin of=/dev/rsd?c bs=64k
if the image is already uncompressed. After installing this, shutdown, ensure that the disk is set as target 5, and hook it up to your PA machine.

You should first boot the system single-user so that you can configure your network and optionally re-label the disk. To do this, power cycle the machine and hold down the ESCAPE key interrupting both the default boot and the search for a bootable system. Now type:

	b scsi.5 isl
followed by RETURN and you should eventually be rewarded with:
	Boot
	[/mach]: 
at which point you can type the name of the kernel to boot (e.g. ``/mach.test'') or RETURN for the indicated default. In this case you just type RETURN. (The sole purpose for interacting with the boot ROM in this example is to inform the kernel that it is an interactive boot and it should stop at single-user). Once, single-user you will have the standard limited array of tools to configure your network. During a normal boot, the shell script /etc/netstart is executed to perform network initialization. You will need to modify this file accordingly.

The default disklabel is for a 425mb Quantum disk. It has a 2mb bootblock, a 32mb `a' (root) partition, a 64mb `b' (swap) partition, and a 300mb+ `g' (usr) partition. All other partitions map the entire remaining space of a Quantum 425 disk. The only thing you can easily change in this label is the geometry and size of the entire disk and the size of the `g' partition. To do this use:

	disklabel -e /dev/rsd5h
Note the use of the `h' partition. The reason for this is so that you can change the `c' partition, the conventional partition used by applications (including disklabel) to denote the entire disk. This avoids problems with changing the size of active partitions.

It is more difficult to change the size of the swap partition. The Mach default pager only knows how to page to files, hence the `b' partition contains a filesystem rather than being just a raw partition. To get more swap space you can temporarily create a swap file in the root partition, redirect the symlink /mach_servers/paging_file appropriately, and reboot. You can then resize the `b' partition, create a new filesystem, mount it, and create the single file paging_file with the desired size. Alternatively, you can just resize one of the unused partitions and use it.

After resizing the `g' partition or otherwise creating a partition for /usr, you can load the binary tar image. First, as root, un-tar the /usr binary tar file on another machine:

	mkdir /somewhere/usr
	cd /somewhere/usr
	zcat < usrbin.tar.Z | tar xf -
Then, on the Lites machine, you need to create the filesystem and mount it:
	newfs /dev/rsd5g
	mount /dev/sd5g /usr
start up the network, and copy over the tree. Unfortunately, rcp always attempts to follow symlinks when the `r' option is specified leading to a lot of symlinks not being copied. Hence, you must NFS mount the filesystem and use cp:
	cat > /etc/hosts
	ip-address otherhost
	^D
	mount otherhost:/somewhere/usr /mnt
	cp -RHp /mnt/usr /
Hopefully, this will be easier to do in future releases.

[PA Overview] [Installation Overview]


Mike Hibler <mike@cs.utah.edu>