Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Jun 2013 15:53:34 +0200
From:      Alban Hertroys <haramrae@gmail.com>
To:        freebsd-stable@freebsd.org
Subject:   Corrupt GPT header on disk from twa array - fixable?
Message-ID:  <EA2DCEC2-8B07-434B-8B60-8AB15B3788F7@gmail.com>

next in thread | raw e-mail | index | archive | help
Hello list,

I just replaced my home server and moved the disks from the old one over =
to the new one. In the old server, 4 of the disks were connected to a =
twa (3Ware 9550) controller, which of course has it's own way of marking =
units/volumes on those disks.

Before you start yelling at me, yes, of course I made backups ;) [*]

The thing is, I have these disks in the new server and I found that I =
(to my surprise) I can actually mount them! But, I'm missing a large =
part and I am wondering if there's some method to access those last =
partitions too.

Here's what gpart show says about the problematic disk:

# gpart show /dev/ada4
=3D>      34  41942972  ada4  GPT  (931G) [CORRUPT]
        34       128     1  freebsd-boot  (64k)
       162   1048448     2  freebsd-ufs  (512M)
   1048610   6291456     3  freebsd-swap  (3.0G)
   7340066   1048576     4  freebsd-ufs  (512M)
   8388642   2097152     5  freebsd-ufs  (1.0G)
  10485794  31457211     6  freebsd-ufs  (15G)
  41943005         1        - free -  (512B)

As you can see, most (about 910GB) of the disk is missing! This disk was =
one half of a mirror on the twa controller, which had those disks split =
in two again (I don't recall how, perhaps 2 different BSD slices?)
I already looked if that part may perhaps have ended up as a different =
device. On the old server, fstab was this:

# cat /tmp/solfertje/etc/fstab
# Device        Mountpoint      FStype  Options Dump    Pass#

# These are the partitions listed above in gpart
/dev/da0p2      /               ufs     rw      1       1
/dev/da0p3      none            swap    sw      0       0
/dev/da0p4      /var            ufs     rw      2       2
/dev/da0p5      /tmp            ufs     rw      2       2
/dev/da0p6      /usr            ufs     rw      2       2

# These are missing
/dev/da1p1      /home           ufs     rw      2       2
/dev/da1p2      /media          ufs     rw      2       2

# These are on a different disk (ada2)
/dev/da2p1      /media2         ufs     rw      2       2


I don't _really_ need to get to those partitions, but it would be a =
comfortable thought if it were possible somehow.


[*] The reason I was trying to access those disks anyway is that I =
thought I forgot to backup my database tables, but it turns out I had =
just misplaced that backup and it has been restored now.

Alban Hertroys
--
If you can't see the forest for the trees,
cut the trees and you'll find there is no forest.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EA2DCEC2-8B07-434B-8B60-8AB15B3788F7>