Map LBA to File

From Attie's Wiki
Revision as of 00:46, 22 March 2011 by Attie (Talk | contribs)

Jump to: navigation, search

[1]


Bad LBA = 0x0a8ae67d = 176875133



$ sudo fdisk -lu /dev/sda

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x030818eb

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          63      409662      204800   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2          409663   168181822    83886080   83  Linux
/dev/sda3       168181823   172376126     2097152   82  Linux swap / Solaris
/dev/sda4       172376127   976768064   402195969   83  Linux



therefore /dev/sda4 -> /home (ext4)



$ sudo tune2fs -l /dev/sda4 | grep Block
Block count:              100548992
Block size:               4096
Blocks per group:         32768



  b = (int)((L-S)*512/B)
where:
b = File System block number
B = File system block size in bytes
L = LBA of bad sector
S = Starting sector of partition as shown by fdisk -lu
and (int) denotes the integer part.

  b = (int)((176875133-172376127) * 512 / 4096)
  b = (int)562375.75
  b = 562375



$ sudo debugfs
debugfs 1.41.9 (22-Aug-2009)
debugfs:  open /dev/sda4
debugfs:  testb 562375
Block 562375 not in use
debugfs:  quit



** OR **



$ sudo debugfs
debugfs 1.41.9 (22-Aug-2009)
debugfs:  open /dev/sda4
debugfs:  testb 562375
Block 562375 marked in use
debugfs:  icheck 562375
Block   Inode number
562375  132344
debugfs:  ncheck 132344
Inode   Pathname
132344  /attie/Downloads/auto/SickBeard/cache/images/82066.banner.jpg
^C
debugfs:  quit
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox