SUMMARY: adding a disk to an Ultra 1

Jim Roy (jim@nga.com)
Tue, 27 Jan 1998 16:12:50 -0800 (PST)

Thanks to all who replied - too many to list.
Special thanks to Kenn Owen who took the time to swap a drive on his system,
and to Venkat D who was kind enough to call me up.
----

Creator series Ultra 1 running Solaris 2.5.1.

Original problem:
How to move a disk ( call it disk A ) with a working OS from the bottom slot to
the top slot.

Reason:
Wanted to add a second drive ( call it B ). Ended up with a 1.5 in
form factor drive, which would only fit in the bottom slot.

Details;
After changing c0t0* to c0t1* in vfstab, and moving the drive,
booting disk1 always bombed with a message about not being able
to mount /dev/dsk/c0t1d0s0 or /usr.

same with boot disk1 -r
same when booting after touching /reconfigure

conclusion:
I was missing the driver device files under /devices. It appears that
without them, you can not do a reconfiguration boot. Makes no sense to
me, perhaps someone could enlighten me.

fix:
1: install a rudimentary system on the new drive - diskB, in the bottom
slot.
2: do a reconfiguration boot from disk B. In this case:
boot disk2 -r

3: reconfigure the /dev & /device files on disk A
a: mount the root partition of disk A under /mnt on disk B's fs
b: run /usr/sbin/drvconfig -r /mnt/device ( see note 1 below )
/usr/sbin/devlink -r /mnt
/usr/sbin/disks -r /mnt
/usr/sbin/ucblinks -r /mnt
This script is based on one found in one of the FAQ's - comp.sys.sun.faq I think.
The idea is to rebuild the device files, and put them on disk A, not
on disk B where they would go by default.

4: do a reconfiguration reboot from disk A

5: set the default boot device to disk1

Notes:

1: drvconfig insists on writing to /etc/path_to_inst. I could find no
way to alter this behavior, so trying pull this scheme off while booted
from the CD would not work. Drvconfig couldn't write to /etc so it
failed to write the /device files as well. That's why we ended up
installing the mimimum system on drive B - so drvconfig would have a
/etc/path_to_inst that it could write to.

2: I did an installboot to drive A somewhere in the process, but I don't
think that effected anything. ( It was already bootable )

3: The docs say that the bottom slot is always target 0, the top slot is
always target 1. It seems to work that way for the top slot - that drive
is seen as target 1 even when jumpered to be target 0. However, right now,
the drive in the bottom is jumpered to be target 2, and that is how
probe-scsi and the OS sees it.

Finally:

I'm really confused by all this. I can't imagine that it's this hard to just move
a disk drive. I'm still open to anyone's thoughts on this, and will post a
better answer to the list if I get one.