Re: How can i read really 512 byte?

From: Janos Haar
Date: Wed Oct 01 2008 - 06:32:53 EST



----- Original Message ----- From: "Milton Miller" <miltonm@xxxxxxx>
To: "Janos Haar" <janos.haar@xxxxxxxxxxxx>
Cc: <linux-kernel@xxxxxxxxxxxxxxx>
Sent: Tuesday, September 30, 2008 4:50 PM
Subject: How can i read really 512 byte?


On Tue, 30 Sep 2008 at 08:29:15 -0400 (EDT), Janos Haar wrote:
Now i am working on recover some data from one defective drive. I
am using dd_rescue, and dd, but both ready only 4K, i think, because
the kernel's block size is 4K.

I have tried to google for the solution, but only found this trick:

losetup /dev/loop0 /dev/hdc
blockdev --setbsz 512 /dev/hdc

and after this set, trying to read the hdc...

It looks like working on the first look, but not really. :-( The
512 size bad sectors still have 4K sizes, but the reading attempt
takes more (8x ?) longer.

Somebody can help me to set the reading block size to 512 byte?

You need to add O_DIRECT to the open call in the flags parameter
(the second argument). (My brother tested this a year or so ago,
and it worked for him).

milton

Hello,

Thank you for the information.
Can you help me a little bit more?
Where need to add this parameter?
In the kernel, in the blocked's source, or in the dd_rescue's source?

Thanks,
Janos Haar
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/