lkml.org 
[lkml]   [2008]   [Oct]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: How can i read really 512 byte?
Date

----- Original Message -----
From: "Andrey Borzenkov" <arvidjaar@mail.ru>
To: "Milton Miller" <miltonm@bga.com>; <janos.haar@netcenter.hu>; "Linux
Kernel Mailing List" <linux-kernel@vger.kernel.org>
Sent: Wednesday, October 01, 2008 2:36 PM
Subject: Re: How can i read really 512 byte?


> Milton Miller wrote:
>
>>
>> On Oct 1, 2008, at 5:23 AM, Janos Haar wrote:
>>
>>>> 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?
>>
>> dd_rescue ... there is a call to open, add O_DIRECT to the second
>> argument and recompile. If it says unknown identifier, just copy the
>> #define from the kernel header into the dd_rescue source.
>>
>
> C'mon, really.
>
> {pts/0}% dd_rescue -h
>
> dd_rescue Version 1.14, garloff@suse.de, GNU GPL
> [...]
> -b softbs block size for copy operation (def=65536),
> -B hardbs fallback block size in case of errs (def=512),
> [...]
> -d/D use O_DIRECT for input/output (def=no),

YES! 8-)
It works! :-)

Thank you wery much for you, and Milton!

Thanks
Janos Haar

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



\
 
 \ /
  Last update: 2008-10-01 15:51    [W:0.047 / U:0.220 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site