[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-ddrescue] Suggestion for ddrescue in _seriously hosed filesyste
Re: [Bug-ddrescue] Suggestion for ddrescue in _seriously hosed filesystem_ environment
Wed, 29 Apr 2015 10:57:10 -0500
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
On 04/29/2015 10:40 AM, Antonio Diaz Diaz wrote:
Nathan Neulinger wrote:
If you are using ddrescue against a filesystem (to recover raw file contents) -
there is a scenario where the current
behavior doesn't handle things well - when the filesystem is hosed to the point
of causing ddrescue to be killed with
Do you mean recovering a file from a damaged filesystem (mounted read-only I
hope), as in the following command?
ddrescue /somedir/somefile outfile logfile
Neither ddrescue nor the kernel should segfault in such scenario. What versions
of ddrescue and OS are you running? What
type of filesystem?
It was on a synology nas embedded linux, ext4, with some _really_ messed up filesystem content with interrupted fscks,
etc. Fresh build of latest 1.19.
I managed to finally get it to read without crashing by adding the -d direct option, so my suggestion may not strictly
be necessary. However, until I hit on that, I managed to get all but a portion of the file recovered - it just reran the
same blocks each time since it was crashing during the reads when trying to access certain parts of the corrupted file.
It just seemed to me that the 'I'm trying block X' information is lost if the process is uncleanly terminated _while_
trying that block, and seems like there should be something that is recording reads in progress with a fsync of that
temporary log while it's running.
I'd like to see two (what I see as probably relatively simple) improvements to
They are not so simple. So I would like to be sure that they are useful before
trying to implemente them.
1. Implement a "--log-every-time" option - you could use "-e" it looks like.
The '-e' option is already taken since version 0.1 (2004). You are using GNU
ddrescue. Aren't you?
Ah, missed that while reading list of options... being blind.
Nathan Neulinger address@hidden
Neulinger Consulting (573) 612-1412