nvalias ofdisk0 /pci/isa/floppy nvalias ofdisk1 /pci/scsi@c/disk@0,0 ... for each disk, actually it is only necessary for disks that are to be booted from. ofdisk0 /pci/isa/floppy ofdisk1 /pci/scsi@c/disk@0,0 ofdisk2 /pci/scsi@c/disk@1,0 ofdisk6 /pci/scsi@c/disk@5,0 the boot from the floppy. ok boot ofdisk0:\boot.ppc Before installing on the harddrive, first a DOS partition needs to be created. fat-partition hdiskX 1 This will create a 1 MB dos partition. This is necessary to boot, The boot loader will be copied here later. Now boot off of the boot (kc) floppy. ok boot ofdisk0:\boot.ppc -a Boot: ofdisk0:/bsd -s Note: it is necessary to use the -a option and specify ofdisk0 (devaliased above) to correctly mount the floppy root disk. Also the floppies are in ISO9660 format, so it is not possible to mount them read/write, MFS or the like will eventually be nessary. At the prompt to insert the filesystem disk, -- Please insert root disk and press ENTER -- put in the disk with the inst-20.fs image in the floppy. Using fdisk, create a disk partition of type 0xa6. (0xa6 may change) fdisk -u . Do not use the -i option, we do not want to replace the bootblock that openfirmware has put down, just modify the parition information. the "fat-parition 1 hdiskX" from before will have created a parition similar to this: -- MBR Partition 0: sysid 6=0x06 (Primary 'big' DOS (> 32MB)) start 1, size 2048 (1 MB), flag 0x80 beg: cylinder 0, head 0, sector 0 end: cylinder 0, head 0, sector 0 -- sample disklabel output -- -- Make certain to leave that unmodified and as the active partition. That parition is currently used to hold the boot loader. I changed the labeling to have non 1 for heads and sectors/track. I am not certian if that is correct or wise. Modify one of the paritions (Use 3 for example) Create a partition with: sysid [166] start [2048*] "Should use sectors/cyl * n to get just greater than 2048." size [disk size - start] when the label is written back out to the disk these messages are normal: -- fdisk: DIOCWLABEL: Inappropriate ioctl for device fdisk: DIOCWLABEL: Inappropriate ioctl for device -- example fdisk output -- Using device /dev/rsd1c: Parameters extracted from in-core disklabel are: cylinders=8004 heads=8 sectors/track=16 sectors/cylinder=128 total=1024512 Figures below won't work with BIOS for partitions not in cylinder 1 Parameters to be used for BIOS calculations are: cylinders=8004 heads=8 sectors/track=16 sectors/cylinder=128 WARNING: BIOS sector numbers start at 1 (not 0) MBR Partition 0: sysid 6=0x06 (Primary 'big' DOS (> 32MB)) start 1, size 2048 (1 MB), flag 0x80 beg: cylinder 0, head 0, sector 0 end: cylinder 0, head 0, sector 0 MBR Partition 1: MBR Partition 2: MBR Partition 3: sysid 166=0xa6 (OpenBSD or BSD Big Endian) start 2176, size 1022336 (499 MB), flag 0x00 beg: cylinder 17, head 0, sector 1 end: cylinder 836, head 7, sector 16 -- Now it is necessary to create a UNIX disklabel for the drive (Would be nice if /etc/disktab had some ready) The easiest way to do this currently is to take the output of disklabel sdX and cut and paste it on another machine to edit it into the desired disklabel. Then using a trick I found, cut and past the edited label back into the other machine after running the command disklabel -R sdX /dev/tty NEVER use the "-r" option Also make certain to check the label just written with "disklabel sdX" Note: only paste a few lines of the disklabel into the console at a time, Otherwise the input buffer can overflow and lose characters. Make certain to keep the partition 'd' around. The only change to possibly make to it would be make it's type MSDOS? example disklabel output --- type: unknown disk: label: flags: bytes/sector: 512 sectors/track: 16 tracks/cylinder: 8 sectors/cylinder: 128 cylinders: 8004 total sectors: 1024512 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: 56704 2176 4.2BSD 512 4096 64 # (Cyl. 17 - 459) b: 102400 58880 swap # (Cyl. 460 - 1259) c: 1024512 0 unused 0 0 # (Cyl. 0 - 8003) d: 2048 1 unused 0 0 # (Cyl. 0*- 16) g: 460800 161280 4.2BSD 512 4096 64 # (Cyl. 1260 - 4859) h: 402432 622080 4.2BSD 512 4096 64 # (Cyl. 4860 - 8003) --- It probably would be nice to eventually make the install kernel have option MFS or the rd device, so that "disklabel -e" could be used. Now newfs the newly created FFS partitions. Do not newfs the parition d (size 2048) mount /dev/sdXa /mnt mkdir /mnt/usr mount /dev/sdXg /mnt/usr (network installtion, CDrom or other do as necessary) ifconfig ofnet0 inet XXX.XXX.XXX.XXX netmask XXX.XXX.XXX.XXX mount third parition (/usr/src?) as /tmp mount /dev/sdXh /tmp cd /tmp ftp XXX.XXX.XXX.XXX cd get ... get ... Unfortunately since /tmp is not writable, mget will not work. after all of the files are transfered umask 0 cd /mnt for file in /tmp/*.tar.gz do echo ${file} gzip -dc ${file} | pax -r -pe PATH=/mnt/bin:/mnt/sbin:/mnt/usr/sbin:/mnt/usr/bin:$PATH mount -t msdos /dev/sdXd /mnt/mnt #this doesn't work, so ... mount_msdos /dev/sd2d /mnt/mnt cp /mnt/usr/mdec/boot.ppc /mnt/mnt umount /mnt/mnt gzip -dc /tmp/bsd.gz >/mnt/bsd