Help deriving a corrupted disklabel

Anish Mistry mistry.7 at osu.edu
Thu Dec 1 17:21:35 GMT 2005


On Wednesday 30 November 2005 09:15 pm, Doug H wrote:
> One of my disks has 3 active partitions: FreeBSD 5.4-RC3, NTFS
> (not-bootable), and FreeBSD 6.0-RELEASE.
>
> I developed problems while installing FreeBSD 6.0.  Installation
> went as well as can be expected using sysinstall (no difficulty
> other than pulling packages from the CD), but when I rebooted,
> nothing was bootable on that disk.  I verified that the boot record
> (using boot0) seems okay: slice table is fine (40G, 80G, 40G, and
> 40G unused on 200G drive).
>
> Using bsdlabel, I confirmed that slice 3 (FreeBSD 6) is fine, but
> for some reason I'm not concerned with now, is unbootable.
>
> PROBLEM: bsdlabel showed me that slice 1 (FreeBSD 5.4) is damaged
> and only partition c existed and was incorrect.  I do not have /
> cannot find a written copy of my disklabel for that disk (a good
> suggestion to *strongly emphasize* in the installation manual for
> newbies!).  I did recall that ad1s1a ('/') was 512M, so I was able
> to write a label and mount that partition from a "Fixit" shell.
>
> QUESTIONS: How can I rederive the remaining disklabel for that
> disk?  Could a copy possibly be stored somewhere on root if I
> didn't do it myself when building the system?
>
> I have not tried to boot from that root partition.  Trying several
> possible labels has resulted in "incorrect super block" errors for
> the partitions after 'a'.  Random guessing will be very tedious.
>
> My research has indicated that I could binary grep the raw ad1s1c
> partition to locate the magic numbers for the super blocks and
> derive the partitions from that information.  I even found a little
> 'c' language program Peter Dufault posted 11 years ago on this list
> to locate magic numbers.
>
> My hope is that in 11 years of development, FreeBSD would have
> created a clever tool to aid this process!  I've found enough
> entries in these lists to think that the effort would be justified
> and much appreciated.  If there is no tool, can someone tell me the
> value of FS_UFS2_MAGIC?  I presume that's what I should search for
> - it's a UFS2 filesystem.  Having only a "Fixit" shell is somewhat
> limiting.
>
sysutils/scan_ffs
I've always used it from a emergency FreeBSD diagnostic CD (custom 
Freesbie) and it works great.  I've never been stuck with only a 
fixit shell though.

-- 
Anish Mistry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20051201/9b86e698/attachment.bin


More information about the freebsd-questions mailing list