dd_rhelp is a bash script that handles a very useful program written in C by Kurt Garloff which is called dd_rescue, which roughly acts as the dd(1) command with the characteristic to NOT stop when it falls on read/write errors. But using it is quite time consuming. This is where dd_rhelp come to help. In short, it'll use dd_rescue on your entire disc, but will try to gather the maximum valid data before trying for ages on bad sectors. So if you leave dd_rhelp work for infinite time, it'll have the same effect as a simple dd_rescue. But because you might not have this infinite time (this could indeed take really long in some cases...), dd_rhelp will jump over bad sectors and rescue valid data. In the long run, it'll parse all your device with dd_rescue. You can Ctrl-C it whenever you want, and rerun-it at will, it'll resume its job as it depends on the log files dd_rescue creates.