Hello, Antonio. I've got one more idea: add an option to round both -s and -i to greater or lower values, rounded up or down to the sector size given by -b<value> ( --read-less --read-more ???). For example, if run -b4096 -i100k -s10k --read-less - the program will read from position 102400 up to 110592 (8192 bytes). For -b4096 -i100k -s10k --read-more - the program will read from position 98304 up to 110592 (12288 bytes). Or, add this functionality to the --direct option. As you adviced, I wrote my previous ideas to the bug-ddrescue@gnu.org This will also be posted there.
> BTW, I think you should have written to bug-ddrescue@gnu.org so that > other users can see your ideas and give feedback about them. > > >> 1) Please, add an option to quit or, better, to pause the program or >> to reset/reinit/power_cycle the input hard drive when skipping slow >> areas. If made to quit - I can use a shell script to pause and >> restart the copying (in cycle). > > Quitting is the most flexible option. As you say, it allows to script > whatever action the drive may need. > > Or maybe the syntax of --min-read-rate could be extended to: > > --min-read-rate=<bytes>,<pause> > > where <pause> is the amount of seconds to pause after each slow read. A > <pause> of 0 could make ddrescue quit. > > >> 2) The second my question is about using direct mode on disks with advanced >> format: >> -d (direct mode) did not work in any of the combinations: >> -d -c1 >> -d -b4096 -c1 >> -d -c8 >> -d -c1 -b4096 >> Both input and output devices have native sector sizes of 4kb (emulated to >> OS as 512 bytes) and size of 3000Gb. > > I can't reproduce the problem. I do not own any device with 4096-byte > sectors, but all your commands work fine on my 512-byte devices. > > If you can find the cause, then I could fix the problem (if it is a > problem in ddrescue). > > >> 3) Can you add (return/implement back) the option of >> log_saving_time_interval or just make it static, about 30 seconds. >> Sometimes the system hangs - and some progress is lost. > > Ddrescue never had a 'log_saving_time_interval' option, but such option > can be implemented. Making it static at 30 seconds is not a good idea > because saving a big mapfile to a slow device may take a significant > part of that time, slowing the rescue. > > >> Have seen new versions (up to 1.22pre) ! Maybe, emergency save of the >> mapfile will partially help with my question number 3, to visualize. > > I don't think so. > > >> 4) I can translate the program and documentation to Russian - will it >> be helpful for the project? > > Thanks. I warn you that translating the manual is en enormous amount of > work, which systematically becomes out of date because nobody wants to > keep translating new versions. See the lzip French manual: > > http://www.nongnu.org/lzip/manual/lzip_manual.html (lzip 1.18) > http://www.nongnu.org/lzip/manual/lzip_manual_fr.html (lzip 1.11) > > But it would be nice to have the web page[1] translated to Russian. It > is already translated to Spanish, French and Italian. > > [1] http://www.gnu.org/software/ddrescue/ddrescue.html > > >> 5) Is the following implemented? >>> The only safe solution, in addition to leaving direct mode as it is now, >>> would be to modify direct mode so that it does not attempt partial >>> sector reads. > > Yes, it was implemented in ddrescue 1.20: > > http://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html#Direct-disc-access > "NOTE: Direct disc access can copy arbitrary domains by reading whole > sectors and then writing only the requested part. This is the only case > where ddrescue will try to read data outside of the rescue domain." > > > Best regards, > Antonio. > _______________________________________________ Bug-ddrescue mailing list Bug-ddrescue@gnu.org https://lists.gnu.org/mailman/listinfo/bug-ddrescue