Sooner or later, you will be faced with having to replace a failed SCO Unix server or updating to a newer server. Hopefully the latter. I have outlined some of the procedures I used (with the aid of article in this forum) to replace our SCO 5,05 running Adaptec alad, 128m 350 mhz server to a brand new Athlon 1.83 GHz server with 512K memory, Adaptec 29160 controller, and 18 gig LVD drive.
The first problem encountered is the Intel system board and Intel P4 processor. The new system simply would not boot from floppy or CD Rom. After many hours of frustration, and with the aid of the SCO newsgroup personnel (Thanks Bela Lubkin), it was determined that Intel has decided to enforce the Boot string requirements. Also after reviewing some other posts in the newsgroups, it was also noted that version 5.05 does not run very well on a P4 processor. I decided to just replace the system board and use an Athlon processor. I got a MSI board and Athlon 1.83 Mhz processor. To use the Intel, it would have been necessary to upgrade to version 5.07.
The next step is to load the base OS from floppy and CDROM, hopefully you have the keys and software. This can always be a major problem in that usually these systems have been running for years, and this information is not available.
It is possible to get the information from SCO, but you will at least need your purchase invoice, and the Serial number.
Editor's note: Note entirely true. See How can I find my Activation Key? and How do I find out serial numbers of my various components?
I purchased an Adaptec 19160 SCSI adapter, because the hard drive was a U160 LVD. The next problem is that that particular model does not support SCO, and I had to trade for the 29160 model which did. This is really strange in that one of these does not support Windows NT and vice versa. So you have to be careful in getting the proper card.
Installed the card and drive, added the SCSI CDROM and proceeded to install the base operating system. The next step is to install the Tape Drive.
All this stuff is backwards compatible, right. It pretty much has been, and I never have had any problems before. But this particular card simply would not recognize the Tape Drive. So I had to find an older PCI SCSI card from one of my other systems.
The very first and most important step is to get a backup of the old system. I use CPIO and have for years. It works much easier if you use separate tapes for each your file systems. Backup /stand and / on one tape, /u on another, and in my case /hd4 on another.
Of course if you have the luxury of having both machines offline, there are several other options like installing the old drive in new machine, or using DD with CPIO piped to simply copy the files over a network. These procedures apply to doing this remotely or when the existing machine cannot be taken offline.
1. Backup the old system with cpio
2. Install base operating system on the new system, and apply the new driver.
Use the Option to execute divvy so that you can size your partitions. I expanded my swap, made the / and /u filesystem larger, and allocated the rest to /hd4. Run mkdev tape to install the tape unit.
3. Make an boot floppy and root filesystem. Make sure they work. Probably good idea to make two sets
NOTE: I wasted a lot of time trying to install the driver with an emergency boot floppy from the old system. The Adaptec driver would load up, and then abort because of not enough memory. So it is imperative to get a base OS running from the install disks.
4. Boot with emergency floppy from the new system.
mount /dev/hd0root /mnt cd /mnt rm -r * // get rid of cur system cpio // restore the old system cd / // save boot stuff mkdir b mount /dev/boot /b mkdir /mnt/bootstand cp -r /b /mnt/bootstand cd / umount /mnt mount /dev/boot /mnt cd /mnt rm -r * cpio // restore /stand cd / umount /mnt mount /dev/u /mnt cd /mnt rm -r * cpio // restore /u cd / umount /mnt mount /dev/hd4 /mnt cd /mnt rm -r * cpio // restore /hd4
5. Chroot to hard drive
cd / umount /mnt mkdir rootmount mount /dev/hd0root /rootmount chroot /rootmount /bin/sh // see man chroot
NOTE: The following is from article posted How can I install a new disk controller that requires a different driver?
mount /dev/fd0 /mnt btldinstall /mnt
That lets you install the driver, but hasn't told the system to USE that driver.
Identify the current disk driver by
grep Sdsk /etc/conf/cf.d/mscsi
Your current driver will in column 2- examples "alad", "arad", "blad"
Identify what driver you need by examining /etc/default/scsihas (if you used a btld, it's whatever you installed)
Edit the current driver file and change the "Y"'s to "N" in the first column. For example, if your current driver is alad, you edit /etc/conf/sdevice.d/alad. Edit the NEW driver file and change "N" to Y. Example, your new driver is "blad", you edit /etc/conf/sdevice.d/blad.
Next, cd /etc/conf/cf.d and edit mscsi. Change the driver column to match your NEW controller. For example, changing from alad to blad with vi:
The following gave me a warning so I just made a copy of /stand early in process.
btmnt -w cp /stand/unix /stand/unix.good btmnt -d cd /etc/conf/cf.d ./link_unix
Everything linked but did not get the chance to install as default.
cp unix /stand
and reboot from harddisk, TCP will fail because of the drivers for your netcard, The video and mouse will have to be reconfigured.
I also got the INCORRECT ISAM version error. Simple fix is to execute isverify from a root prompt.
The system was shipped to the remote location for the final test. The old machine was removed, and replaced with the new server. System was powered on, and Everything Works.
Got something to add? Send me email.
More Articles by Leroy Janda © 2012-11-27 Leroy Janda
Within C++, there is a much smaller and cleaner language struggling to get out. (Bjarne Stroustrup)