[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 620
  • Last Modified:

Unix recovery from failed HDD

I need some guidance recovering a filesystem from an old Unix server with a failed HDD.
I believe the drive contained only data, as the OS does not seem to be affected by the drive failure (as far as I can tell.)

I was able to source a compatible SCSI HDD, and it is connected to an Adaptec AHA-3950U2B controller.  The controller recognizes the drive, which is a good start, but that's as far as I know how to go.

Right now I get the following messages as part of the boot:

The system is coming up.  Please wait.
fsstat: /dev/boot mounted
Mounted /stand filesystem
fsstat: cannot stat filesystem /dev/d1150   <~~I believe this is the old drive
mount: /dev/d1150: No such device or address (error 6)
fsck: cannot stat filesystem /dev/d1150.
Failed to mount /u1 filesystem

I need to accomplish the following:
Get the OS to recognize the drive (create a filesystem, format it, mount it, etc... maybe not in that order)
Try to recreate the mount point of the old drive.
Put the backup files (which I have on tape) to /u1 on the new drive.

I'm pretty unix dumb, but I've played around a little bit with Linux.  Very little bit.
Any help is greatly appreciated!
  • 5
  • 4
  • 2
  • +1
2 Solutions
what is the OS? run

uname -a
dstrzemienskiAuthor Commented:
SCO Unix

uname output:
SCO_SV crg 3.2 5.0.5 i386
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Here's a thread that talks about adding a drive... http://www.tek-tips.com/viewthread.cfm?qid=1576445

Another option is an online Linux consultant like http://FreeDataRecovery.us
i do not know much about SCO, but this should mostly apply to any unix box

1) add the drive and identify it
after you added the drive and rebooted, a new entry should appear in /dev
most likely is will be similar to the existing (ie d + digits)
the system will likely show messages concerning the new device at boot time
the boot-time messages should be viewable at runtime using "dmesg"
/!\ as far as i know, drives should be labeled hd + digit in sco but this prossibly does not apply to scsi disks

2) partition the disk (unless you want to use the whole disk as a partition which is unlikely)
the command should be fdisk. the partitions should appear in /dev as separate devices. i'll assume you created a single partition, and found it's associated device (something like hd2a)

3) create a filesystem on the disk
most likely, "format" or "newfs" should be available on SCO

4) edit /etc/fstab to change the old disk entry to the new one. this should be easy after you see the file structure. basically you will just have to change the bad device name to the good one. DO A BACKUP OF THIS FILE BEFORE YOU EDIT IT. once the change was made, you can use the "mount" command to mount the filesystem or possibly reboot

5) i'm pretty sure i do not need to cover the part where you restore your backup from tape
just for the record, if the backup is a disk image using dd or similar stuff, you can use dd the other way round on the device and skip the filesystem creation step
dstrzemienskiAuthor Commented:
I am not able to find any difference in the listing of /dev after inserting the new drive and rebooting.
I have removed and re-inserted the drive several times, rebooting each time, to double-check, but the entries in /dev do not change.

Do I need to low-level format the drive with the SCSI controller before I can do anything with it?
forget about low-level formatting which is ALWAYS a bad idea on a drive that already works, and a dumb way to loose more data whan your drive is loosing sectors.

if you do not see the disk, it may be in a RAID array. most likely the SCSI controller has builtin RAID. if this is the case, it is likely that the complete array that was holding the disk failed

the SCSI controller should feature software tool you can use from the command line, or provide a builtin command line which you can access while rebooting (usually ctrl+e after the POST sequence).

can you tell us something about the layout of the disks after you accessed the SCSI controller's configuration ?
dstrzemienskiAuthor Commented:
The server has only 2 drives.  I can pull the failed drive and the server is still able to boot the OS.
On POST, with the failed drive inserted, I see only 1 drive detected.
With the failed drive removed, I see only 1 drive detected.
With the new replacement drive inserted, I see 2 drives detected.

Regardless of the above configuration, I see no change in /dev
Anywhere else I should be looking?
apparently, it is more complicated in SCO than in other unix-likes

the key should be the "mkdev hd" command
see here how to make the system aware that you added a peripheral

and here to find the proper LUN

anyway, you'll probably have to enter the SCSI controller's configuration at boot time (ctrl + e usually) in order to set the disk up as a JBOD if it actually is a second data drive, and possibly check the previous configurations. it is possible that part of the 2 drives were mirrored for example

once the disk is seen by the system, thing should go on as usual
you may need "mkdev fs" as well at some point
the partitions be labeled /dev/hd02 for the second partition of the first disk for example

i'm sorry i cannot be more helpful, but i guess i'm reaching my limit there, but feel free to post if necessary, and please post working steps once you manage to work it out
dstrzemienskiAuthor Commented:
I ended up paying for an SCO engineer to resolve this.
sorry you did not get more help on our side, and ended up paying. if you do get to the bottom of this, i'm interested in whatever information you gather.

if you're looking for some easy to use disk management, you may want to look into ZFS which is available on solaris and BSD systems. other tools exist (LVM, geom, vinum...) but most of them are significantly harder to use. (geom is pretty good, but BSD-specific)

in zfs, changing a disk is as simple as typing
"zpool poolX replace disk1 disk2"
where poolx is the name of your pool and disk1 and disk2 the names of the devices associated with the original and new disks

it may be pretty simple on SCO as well. we just do not have the knowlege (yet ?)

best regards
dstrzemienskiAuthor Commented:
Thanks everyone for your help.  I've learned that Unix is best left to someone other than me.

Featured Post

NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

  • 5
  • 4
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now