Fix-disk -x -c does not recover LBA bad sectors, or does it?

alexp

Member
Hi,

I just downloaded and installed the custom firmware for the first time. (HDR-Fox T2 500GB)
Got the big red disk message - 197 and 198 both at 099 in red.

So I opened putty and ran Fix-disk with -x -c options.

First section it rattled through about 60 errors, hitting "Y" and getting a message that re-writing succeeded.

Then it started over for each of the same LBAs as similar to this:

=====
Inode Pathname
Dev: /dev/sda LBA: 2374333
LBA: 2374333 is on partition /dev/sda2, start: 2104512, bad sector offset: 269821
dumpe2fs 1.42.10 (18-May-2014)
Using superblock 0
Block size: 4096
LBA 2374333 maps to file system block 33727 on /dev/sda2

Checking to see if this block is in use...
debugfs 1.42.10 (18-May-2014)
Block 33727 is marked as in use

Searching for inode...
debugfs 1.42.10 (18-May-2014)
Inode: 7

The following file contains a corrupt block and can not be fully recovered.
You may wish to delete it or recover from backup.

debugfs 1.42.10 (18-May-2014)
ncheck: EXT2 directory corrupted while calling ext2_dir_iterate
ncheck: EXT2 directory corrupted while calling ext2_dir_iterate
ncheck: EXT2 directory corrupted while calling ext2_dir_iterate
=====

...with about two more pages of the same ncheck message, and then it starts on the next LBA.

So, there's no filename.
And I don't understand what it's doing, as it has already indicated that a re-write succeedeed.
An explanation of what is going on would be good.
It's also taking a few minutes each. so still running probably till tomorrow !

What do I need to do?
Leave it to complete?
Cancel it - how?
Or run something like this for each LBA:

hdparm --read-sector <LBA> --yes-i-know-what-i-am-doing /dev/sda
hdparm --write-sector <LBA> --yes-i-know-what-i-am-doing /dev/sda
hdparm --repair-sector <LBA> --yes-i-know-what-i-am-doing /dev/sda

Thanks in advance.
 
OP
A

alexp

Member
...update:

later on these messages appear:

=====
Searching for inode...
debugfs 1.42.10 (18-May-2014)
icheck: Illegal indirect block found while calling ext2fs_block_iterate
Block Inode number 34088 <block not found>
Dev: /dev/sda LBA: 2377230
LBA: 2377230 is on partition /dev/sda2, start: 2104512, bad sector offset: 272718
dumpe2fs 1.42.10 (18-May-2014)
Using superblock 0
Block size: 4096
LBA 2377230 maps to file system block 34089 on /dev/sda2

Checking to see if this block is in use...
debugfs 1.42.10 (18-May-2014)
Block 34089 is marked as in use
=====
 
Top