recovering partitions (not slices), is it possible? (Solution)

ANISH MISTRY mistry.7 at osu.edu
Mon Jan 26 11:22:20 PST 2004


scan_ffs (sysutil/scan_ffs) was ported from OpenBSD a few weeks ago, and it is in the ports (good thing for a fixit cd.) :)

--
Anish Mistry

----- Original Message -----
From: "José M. Fandiño" <freebsd4 at fadesa.es>
Date: Monday, January 26, 2004 12:48 pm
Subject: Re: recovering partitions (not slices), is it possible? (Solution)

> Hello again,
> 
> I was able to recover all deleted partitions :)
> 
> I found this program http://ls.si.ru/freebsd/find-super-blocks.c
> it provides me sufficient information for recreating both
> partitions.
> 
> From another FreeBSD machine it was as easy as:
> prue5# ./find-super-blocks /dev/ad2s2
> FS_MAGIC at sector 16: / -> 204800 sectors. bsize: 16384
> FS_MAGIC at sector 409616: /var -> 196608 sectors. bsize: 16384
> 
> with this output we can give the appropriated value to
> disklabel and redefine the boundary between the root and
> var partitions.
> 
> 8 partitions:
> #        size   offset    fstype   [fsize bsize bps/cpg]
>  a:   409600        0    4.2BSD        0     0     0   # (Cyl.    
> 0 - 433*)
>  c:   803250        0    unused        0     0         # (Cyl.    
> 0 - 849)
>  e:   393650   409600    4.2BSD        0     0     0   # (Cyl.  
> 433*- 849*)
> 
> prue5# fsck -f /dev/ad2s2a
> ** /dev/ad2s2a
> ** Last Mounted on /mnt
> ** Phase 1 - Check Blocks and Sizes
> ** Phase 2 - Check Pathnames
> ** Phase 3 - Check Connectivity
> ** Phase 4 - Check Reference Counts
> ** Phase 5 - Check Cyl groups
> 2420 files, 22779 used, 77980 free (820 frags, 9645 blocks, 0.8% 
> fragmentation)
> prue5# fsck -f /dev/ad2s2e
> ** /dev/ad2s2e
> ** Last Mounted on /data2
> ** Phase 1 - Check Blocks and Sizes
> ** Phase 2 - Check Pathnames
> ** Phase 3 - Check Connectivity
> ** Phase 4 - Check Reference Counts
> ** Phase 5 - Check Cyl groups
> 1188 files, 53963 used, 43548 free (1020 frags, 5316 blocks, 1.0% 
> fragmentation)
> regards.
> 
> "José M. Fandiño" wrote:
> > 
> > Hello,
> > 
> >  I was trying to install FreeBSD 5.2 in the slice ad0s3 but
> > accidentally I erased two partitions of my 4.9 system which
> > were in the ad0s2 slice :(
> > 
> > ad0s1 -> Linux boot
> > ad0s2 -> FreeBSD 4.9 (deleted partitions)
> > ad0s3 -> FreeBSD 5.2
> > ad0s4 -> Extended partition
> > 
> > they were the root and var partitions (usr and home were
> > in different disks).
> > strings /dev/ad2s2c | grep "/dev/ad0s2.*ufs"
> > /dev/ad0s2e             /var            ufs     
> rw,noatime,nosuid       0       1
> > /dev/ad0s2a             /               ufs     rw              
> 1       1
> > 
> > As the disk hasn't been reformatted or written over all the
> > data is still here.
> > 
> > I haven't got luck googling, so I would like to ask for
> > advises. Perhaps searching some type of signature helps
> > to find the deleted partitions.
> > 
> > thanks you.
> > 
> > # fdisk ad2
> > ******* Working on device /dev/ad2 *******
> > parameters extracted from in-core disklabel are:
> > cylinders=8912 heads=15 sectors/track=63 (945 blks/cyl)
> > 
> > Figures below won't work with BIOS for partitions not in cyl 1
> > parameters to be used for BIOS calculations are:
> > cylinders=8912 heads=15 sectors/track=63 (945 blks/cyl)
> > 
> > Media sector size is 512
> > Warning: BIOS sector numbering starts with sector 1
> > Information from DOS bootblock is:
> > The data for partition 1 is:
> > sysid 131 (0x83),(Linux native)
> >     start 63, size 16002 (7 Meg), flag 80 (active)
> >         beg: cyl 0/ head 1/ sector 1;
> >         end: cyl 16/ head 14/ sector 63
> > The data for partition 2 is:
> > sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
> >     start 16065, size 803250 (392 Meg), flag 0
> >         beg: cyl 17/ head 0/ sector 1;
> >         end: cyl 866/ head 14/ sector 63
> > The data for partition 3 is:
> > sysid 165 (0xa5),(FreeBSD/NetBSD/386BSD)
> >     start 819315, size 2634660 (1286 Meg), flag 0
> >         beg: cyl 867/ head 0/ sector 1;
> >         end: cyl 1023/ head 14/ sector 63
> > The data for partition 4 is:
> > sysid 5 (0x05),(Extended DOS)
> >     start 3453975, size 4964085 (2423 Meg), flag 0
> >         beg: cyl 1023/ head 14/ sector 63;
> >         end: cyl 1023/ head 14/ sector 63
> > 
> > # disklabel ad2s2
> > # /dev/ad2s2:
> > 8 partitions:
> > #        size   offset    fstype   [fsize bsize bps/cpg]
> >   c:   803250        0    unused        0     0         # "raw" 
> part, don't edit
> > 
> > --
> > -----BEGIN GEEK CODE BLOCK-----
> > Version: 3.1
> > GCS/IT d- s+:+() a- C+++ UBL+++$ P+ L+++ E--- W++ N+ o++ K- w---
> > O+ M+ V- PS+ PE+ Y++ PGP+>+++ t+ 5 X+$ R- tv-- b+++ DI D++>+++
> > G++ e- h+(++) !r !z
> > ------END GEEK CODE BLOCK------
> > _______________________________________________
> > freebsd-questions at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> > To unsubscribe, send any mail to "freebsd-questions-
> unsubscribe at freebsd.org"
> -- 
> -----BEGIN GEEK CODE BLOCK-----
> Version: 3.1
> GCS/IT d- s+:+() a- C+++ UBL+++$ P+ L+++ E--- W++ N+ o++ K- w---
> O+ M+ V- PS+ PE+ Y++ PGP+>+++ t+ 5 X+$ R- tv-- b+++ DI D++>+++
> G++ e- h+(++) !r !z
> ------END GEEK CODE BLOCK------
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-
> unsubscribe at freebsd.org"



More information about the freebsd-questions mailing list