I've noticed something strange. Here I'll post an attach which contains a MFT, NTFS boot record, ntfsfindbad.log, ntfsfindbad_debug.log. What is strange there: take a look at ntfsfindbad.log about record #9980 --a FILE of XLS type. According to ntfsfindbad_debug.log, an error is located in attribute 0xA0. But XLS file is not located at record 9980! it is record 9979 and is indeed intact. Record 9980 is a folder and as for I digged it really has an intersection in bad area and attribute 0xA0. So why ddru_ntfsfindbad takes a name from wrong record? I have no idea about that. Maybe you can help me?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I will look at this when I get a chance. Right now I am working on an advanced disk tool that sends direct commands to a disk. I am hoping that sometime in the not too distant future I can do a bit of work on ddrutility and get to properly fixing the attribute issue. But that is what I get for starting a second project.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Wow, interesting! but that is a headache with chipsets, drivers etc? AFAIR libata doesn't allow sending arbitrary commands to the drive or am I wrong? but what is your goal? I use ddrescue widely and have little problems that can be solved by skipping libata layer -- and to get deeper, say, to get regions by heads or disable background activity, one needs to use vendor-specific commands... It could be nice that modifying ddrescue to add ability to somewhat cooperating with drive power management (some drives get stuck in some cases and it could be nice to send some sort of signal to external utility that throws bytes to hdd's UART -- some drives have one, or sends something to some DIY-hardware power switch. Many drives needed just power cycle to be able to further copying)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Also, did you know I have a patch for ddrescue that can use ATA passthrough commands? Under most abnormal circumstances (like when a drive stops responding) it will exit with error code 1. The ddrescue command could be called from a script, and if it returns with 1 then the script could be used to control a power cycle device. Kind of crude, but in theory it should work. https://sourceforge.net/projects/ddrutility/files/ddrescue%20patches/passthrough%20patch/
Just so you know I do not plan on implementing any more things in my ddrescue patch. It is a patch, and that makes it hard to maintain.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I've noticed something strange. Here I'll post an attach which contains a MFT, NTFS boot record, ntfsfindbad.log, ntfsfindbad_debug.log. What is strange there: take a look at ntfsfindbad.log about record #9980 --a FILE of XLS type. According to ntfsfindbad_debug.log, an error is located in attribute 0xA0. But XLS file is not located at record 9980! it is record 9979 and is indeed intact. Record 9980 is a folder and as for I digged it really has an intersection in bad area and attribute 0xA0. So why ddru_ntfsfindbad takes a name from wrong record? I have no idea about that. Maybe you can help me?
Here is an attach
I will look at this when I get a chance. Right now I am working on an advanced disk tool that sends direct commands to a disk. I am hoping that sometime in the not too distant future I can do a bit of work on ddrutility and get to properly fixing the attribute issue. But that is what I get for starting a second project.
Wow, interesting! but that is a headache with chipsets, drivers etc? AFAIR libata doesn't allow sending arbitrary commands to the drive or am I wrong? but what is your goal? I use ddrescue widely and have little problems that can be solved by skipping libata layer -- and to get deeper, say, to get regions by heads or disable background activity, one needs to use vendor-specific commands... It could be nice that modifying ddrescue to add ability to somewhat cooperating with drive power management (some drives get stuck in some cases and it could be nice to send some sort of signal to external utility that throws bytes to hdd's UART -- some drives have one, or sends something to some DIY-hardware power switch. Many drives needed just power cycle to be able to further copying)
Prototype can be found here:
http://forum.hddguru.com/viewtopic.php?f=7&t=30601
or better yet here:
http://www.hddoracle.com/viewtopic.php?f=22&t=1162
Also, did you know I have a patch for ddrescue that can use ATA passthrough commands? Under most abnormal circumstances (like when a drive stops responding) it will exit with error code 1. The ddrescue command could be called from a script, and if it returns with 1 then the script could be used to control a power cycle device. Kind of crude, but in theory it should work.
https://sourceforge.net/projects/ddrutility/files/ddrescue%20patches/passthrough%20patch/
Just so you know I do not plan on implementing any more things in my ddrescue patch. It is a patch, and that makes it hard to maintain.