In which case should I prefer dd over GNU ddrescue?





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







2















As far as I can see, comparing dd with ddrescue can be concluded saying that ddrescue is far better at rescuing data from broken data sources. dd does not have this ability.



dd_rescue vs dcfldd vs dd



Sometimes I simply don't now if a data source is completely fine or if it is broken in some way before starting the backup.



So why not forget about dd and simply use ddrescue every time?



Isn't it like this: If the data source is fine ddrescue will do a fine backup and if the data source is broken ddrescue may be able to handle this.



The only reason I can see so far would be if dd is available and ddrescue is not, but I think in most cases when someone is doing a backup he can probably gain root access and simply install ddrescue.



Does ddrescue operate in any way slower than dd on fine data sources?










share|improve this question































    2















    As far as I can see, comparing dd with ddrescue can be concluded saying that ddrescue is far better at rescuing data from broken data sources. dd does not have this ability.



    dd_rescue vs dcfldd vs dd



    Sometimes I simply don't now if a data source is completely fine or if it is broken in some way before starting the backup.



    So why not forget about dd and simply use ddrescue every time?



    Isn't it like this: If the data source is fine ddrescue will do a fine backup and if the data source is broken ddrescue may be able to handle this.



    The only reason I can see so far would be if dd is available and ddrescue is not, but I think in most cases when someone is doing a backup he can probably gain root access and simply install ddrescue.



    Does ddrescue operate in any way slower than dd on fine data sources?










    share|improve this question



























      2












      2








      2


      2






      As far as I can see, comparing dd with ddrescue can be concluded saying that ddrescue is far better at rescuing data from broken data sources. dd does not have this ability.



      dd_rescue vs dcfldd vs dd



      Sometimes I simply don't now if a data source is completely fine or if it is broken in some way before starting the backup.



      So why not forget about dd and simply use ddrescue every time?



      Isn't it like this: If the data source is fine ddrescue will do a fine backup and if the data source is broken ddrescue may be able to handle this.



      The only reason I can see so far would be if dd is available and ddrescue is not, but I think in most cases when someone is doing a backup he can probably gain root access and simply install ddrescue.



      Does ddrescue operate in any way slower than dd on fine data sources?










      share|improve this question
















      As far as I can see, comparing dd with ddrescue can be concluded saying that ddrescue is far better at rescuing data from broken data sources. dd does not have this ability.



      dd_rescue vs dcfldd vs dd



      Sometimes I simply don't now if a data source is completely fine or if it is broken in some way before starting the backup.



      So why not forget about dd and simply use ddrescue every time?



      Isn't it like this: If the data source is fine ddrescue will do a fine backup and if the data source is broken ddrescue may be able to handle this.



      The only reason I can see so far would be if dd is available and ddrescue is not, but I think in most cases when someone is doing a backup he can probably gain root access and simply install ddrescue.



      Does ddrescue operate in any way slower than dd on fine data sources?







      linux backup data-recovery dd ddrescue






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Jan 11 '16 at 10:53







      user63835

















      asked Jan 11 '16 at 10:16









      user63835user63835

      224210




      224210






















          2 Answers
          2






          active

          oldest

          votes


















          8














          Quite simply? DD is a standard tool which you will predictably find in some shape or form in most unix or unix inspired OS. Its designed around being minimal and simple. That's its only advantage. There's no built in verification, there's no check summing, there's no fancy bits. However you can walk to any linux system and do an image. Its a hammer. Its a bit of steel on a stick, you know every workshop has one, and it bashes in nails fine. And at the very least it looks something like this, and any other hammer you find does at least what this does. ddrescue also should give you a bit-perfect copy you can verify with a checksum.



          blocky basic hammer
          Gnu dd rescue is a specialised tool that happens to do the same thing the generic one does. You MIGHT be able to get out nails with a specialised tool, but not with your generic hammer. This is a claw hammer



          enter image description here



          It drives in nails and it takes them out. It gives you the best chance of recovering data but at the cost of possibly more time, and the optimisation being for maximum data recovery over perfectness. It also would do an image of a drive that's perfectly healthy.



          I also personally favour the gnuddrescue syntax. Its simpler and more idiot proof in my opinion.



          I'd add a PROPERLY done image with any of these tools would essentially be usable in the same way.



          Most unix greybeards would say "Use the big bashy thing" - its the "right" way to do it. I prefer gnuddrescue since its just a more elegant tool for the end user, that happens to do more. That said, in some cases knowing how to use both can be useful, for example when dealing with a system where you can't install what you prefer.






          share|improve this answer





















          • 1





            This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

            – fixer1234
            Jan 11 '16 at 17:27











          • Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

            – Journeyman Geek
            Jan 13 '16 at 11:25











          • I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

            – Jonas Stein
            May 29 '18 at 15:10



















          3














          ddrescue works well the basic case, where you want to clone between disks and on-disk images.



          However, there are some cases where it simply won't work, or getting it to work requires a convoluted process of additional abstractions. This is usually because ddrescue requires a seekable source and destination. For example, this is significant when:




          • You want to send a disk stream directly over the network. dd will happily let you pipe its input from or output to nc, ssh, etc.. ddrescue cannot do this. You'd need to provide a seekable remote filesystem, perhaps with SMB, NFS or SSHFS - but they all introduce additional overhead. (Arguably, you should use rsync instead - but sometimes the bit-exact image can be useful.)

          • You want to compress the disk image. Maybe you don't have enough space for the full uncompressed image. With dd, you can easily pipe through gzip. With ddrescue, you'd need something like fusecompress.


          Yes, it's still possible to get ddrescue to do those things, but when you're reasonably sure the source will not throw a read error then dd is easier and meshes well with other standard *nix tools.






          share|improve this answer
























          • Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

            – Bob
            Jan 13 '16 at 13:49














          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "3"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1024643%2fin-which-case-should-i-prefer-dd-over-gnu-ddrescue%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          2 Answers
          2






          active

          oldest

          votes








          2 Answers
          2






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          8














          Quite simply? DD is a standard tool which you will predictably find in some shape or form in most unix or unix inspired OS. Its designed around being minimal and simple. That's its only advantage. There's no built in verification, there's no check summing, there's no fancy bits. However you can walk to any linux system and do an image. Its a hammer. Its a bit of steel on a stick, you know every workshop has one, and it bashes in nails fine. And at the very least it looks something like this, and any other hammer you find does at least what this does. ddrescue also should give you a bit-perfect copy you can verify with a checksum.



          blocky basic hammer
          Gnu dd rescue is a specialised tool that happens to do the same thing the generic one does. You MIGHT be able to get out nails with a specialised tool, but not with your generic hammer. This is a claw hammer



          enter image description here



          It drives in nails and it takes them out. It gives you the best chance of recovering data but at the cost of possibly more time, and the optimisation being for maximum data recovery over perfectness. It also would do an image of a drive that's perfectly healthy.



          I also personally favour the gnuddrescue syntax. Its simpler and more idiot proof in my opinion.



          I'd add a PROPERLY done image with any of these tools would essentially be usable in the same way.



          Most unix greybeards would say "Use the big bashy thing" - its the "right" way to do it. I prefer gnuddrescue since its just a more elegant tool for the end user, that happens to do more. That said, in some cases knowing how to use both can be useful, for example when dealing with a system where you can't install what you prefer.






          share|improve this answer





















          • 1





            This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

            – fixer1234
            Jan 11 '16 at 17:27











          • Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

            – Journeyman Geek
            Jan 13 '16 at 11:25











          • I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

            – Jonas Stein
            May 29 '18 at 15:10
















          8














          Quite simply? DD is a standard tool which you will predictably find in some shape or form in most unix or unix inspired OS. Its designed around being minimal and simple. That's its only advantage. There's no built in verification, there's no check summing, there's no fancy bits. However you can walk to any linux system and do an image. Its a hammer. Its a bit of steel on a stick, you know every workshop has one, and it bashes in nails fine. And at the very least it looks something like this, and any other hammer you find does at least what this does. ddrescue also should give you a bit-perfect copy you can verify with a checksum.



          blocky basic hammer
          Gnu dd rescue is a specialised tool that happens to do the same thing the generic one does. You MIGHT be able to get out nails with a specialised tool, but not with your generic hammer. This is a claw hammer



          enter image description here



          It drives in nails and it takes them out. It gives you the best chance of recovering data but at the cost of possibly more time, and the optimisation being for maximum data recovery over perfectness. It also would do an image of a drive that's perfectly healthy.



          I also personally favour the gnuddrescue syntax. Its simpler and more idiot proof in my opinion.



          I'd add a PROPERLY done image with any of these tools would essentially be usable in the same way.



          Most unix greybeards would say "Use the big bashy thing" - its the "right" way to do it. I prefer gnuddrescue since its just a more elegant tool for the end user, that happens to do more. That said, in some cases knowing how to use both can be useful, for example when dealing with a system where you can't install what you prefer.






          share|improve this answer





















          • 1





            This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

            – fixer1234
            Jan 11 '16 at 17:27











          • Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

            – Journeyman Geek
            Jan 13 '16 at 11:25











          • I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

            – Jonas Stein
            May 29 '18 at 15:10














          8












          8








          8







          Quite simply? DD is a standard tool which you will predictably find in some shape or form in most unix or unix inspired OS. Its designed around being minimal and simple. That's its only advantage. There's no built in verification, there's no check summing, there's no fancy bits. However you can walk to any linux system and do an image. Its a hammer. Its a bit of steel on a stick, you know every workshop has one, and it bashes in nails fine. And at the very least it looks something like this, and any other hammer you find does at least what this does. ddrescue also should give you a bit-perfect copy you can verify with a checksum.



          blocky basic hammer
          Gnu dd rescue is a specialised tool that happens to do the same thing the generic one does. You MIGHT be able to get out nails with a specialised tool, but not with your generic hammer. This is a claw hammer



          enter image description here



          It drives in nails and it takes them out. It gives you the best chance of recovering data but at the cost of possibly more time, and the optimisation being for maximum data recovery over perfectness. It also would do an image of a drive that's perfectly healthy.



          I also personally favour the gnuddrescue syntax. Its simpler and more idiot proof in my opinion.



          I'd add a PROPERLY done image with any of these tools would essentially be usable in the same way.



          Most unix greybeards would say "Use the big bashy thing" - its the "right" way to do it. I prefer gnuddrescue since its just a more elegant tool for the end user, that happens to do more. That said, in some cases knowing how to use both can be useful, for example when dealing with a system where you can't install what you prefer.






          share|improve this answer















          Quite simply? DD is a standard tool which you will predictably find in some shape or form in most unix or unix inspired OS. Its designed around being minimal and simple. That's its only advantage. There's no built in verification, there's no check summing, there's no fancy bits. However you can walk to any linux system and do an image. Its a hammer. Its a bit of steel on a stick, you know every workshop has one, and it bashes in nails fine. And at the very least it looks something like this, and any other hammer you find does at least what this does. ddrescue also should give you a bit-perfect copy you can verify with a checksum.



          blocky basic hammer
          Gnu dd rescue is a specialised tool that happens to do the same thing the generic one does. You MIGHT be able to get out nails with a specialised tool, but not with your generic hammer. This is a claw hammer



          enter image description here



          It drives in nails and it takes them out. It gives you the best chance of recovering data but at the cost of possibly more time, and the optimisation being for maximum data recovery over perfectness. It also would do an image of a drive that's perfectly healthy.



          I also personally favour the gnuddrescue syntax. Its simpler and more idiot proof in my opinion.



          I'd add a PROPERLY done image with any of these tools would essentially be usable in the same way.



          Most unix greybeards would say "Use the big bashy thing" - its the "right" way to do it. I prefer gnuddrescue since its just a more elegant tool for the end user, that happens to do more. That said, in some cases knowing how to use both can be useful, for example when dealing with a system where you can't install what you prefer.







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited Feb 2 at 15:09

























          answered Jan 11 '16 at 12:51









          Journeyman GeekJourneyman Geek

          113k44218372




          113k44218372








          • 1





            This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

            – fixer1234
            Jan 11 '16 at 17:27











          • Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

            – Journeyman Geek
            Jan 13 '16 at 11:25











          • I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

            – Jonas Stein
            May 29 '18 at 15:10














          • 1





            This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

            – fixer1234
            Jan 11 '16 at 17:27











          • Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

            – Journeyman Geek
            Jan 13 '16 at 11:25











          • I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

            – Jonas Stein
            May 29 '18 at 15:10








          1




          1





          This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

          – fixer1234
          Jan 11 '16 at 17:27





          This is confusing. So is dd a bigger hammer than gnuddrescue? :-)

          – fixer1234
          Jan 11 '16 at 17:27













          Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

          – Journeyman Geek
          Jan 13 '16 at 11:25





          Its a cruder hammer. Was almost tempted to use an image of a stone hammer, but I relented and picked the most... atavistic hammer I could find

          – Journeyman Geek
          Jan 13 '16 at 11:25













          I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

          – Jonas Stein
          May 29 '18 at 15:10





          I down voted, because the large picture of a hammer does not add any value here. Real arguments and sources are missing.

          – Jonas Stein
          May 29 '18 at 15:10













          3














          ddrescue works well the basic case, where you want to clone between disks and on-disk images.



          However, there are some cases where it simply won't work, or getting it to work requires a convoluted process of additional abstractions. This is usually because ddrescue requires a seekable source and destination. For example, this is significant when:




          • You want to send a disk stream directly over the network. dd will happily let you pipe its input from or output to nc, ssh, etc.. ddrescue cannot do this. You'd need to provide a seekable remote filesystem, perhaps with SMB, NFS or SSHFS - but they all introduce additional overhead. (Arguably, you should use rsync instead - but sometimes the bit-exact image can be useful.)

          • You want to compress the disk image. Maybe you don't have enough space for the full uncompressed image. With dd, you can easily pipe through gzip. With ddrescue, you'd need something like fusecompress.


          Yes, it's still possible to get ddrescue to do those things, but when you're reasonably sure the source will not throw a read error then dd is easier and meshes well with other standard *nix tools.






          share|improve this answer
























          • Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

            – Bob
            Jan 13 '16 at 13:49


















          3














          ddrescue works well the basic case, where you want to clone between disks and on-disk images.



          However, there are some cases where it simply won't work, or getting it to work requires a convoluted process of additional abstractions. This is usually because ddrescue requires a seekable source and destination. For example, this is significant when:




          • You want to send a disk stream directly over the network. dd will happily let you pipe its input from or output to nc, ssh, etc.. ddrescue cannot do this. You'd need to provide a seekable remote filesystem, perhaps with SMB, NFS or SSHFS - but they all introduce additional overhead. (Arguably, you should use rsync instead - but sometimes the bit-exact image can be useful.)

          • You want to compress the disk image. Maybe you don't have enough space for the full uncompressed image. With dd, you can easily pipe through gzip. With ddrescue, you'd need something like fusecompress.


          Yes, it's still possible to get ddrescue to do those things, but when you're reasonably sure the source will not throw a read error then dd is easier and meshes well with other standard *nix tools.






          share|improve this answer
























          • Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

            – Bob
            Jan 13 '16 at 13:49
















          3












          3








          3







          ddrescue works well the basic case, where you want to clone between disks and on-disk images.



          However, there are some cases where it simply won't work, or getting it to work requires a convoluted process of additional abstractions. This is usually because ddrescue requires a seekable source and destination. For example, this is significant when:




          • You want to send a disk stream directly over the network. dd will happily let you pipe its input from or output to nc, ssh, etc.. ddrescue cannot do this. You'd need to provide a seekable remote filesystem, perhaps with SMB, NFS or SSHFS - but they all introduce additional overhead. (Arguably, you should use rsync instead - but sometimes the bit-exact image can be useful.)

          • You want to compress the disk image. Maybe you don't have enough space for the full uncompressed image. With dd, you can easily pipe through gzip. With ddrescue, you'd need something like fusecompress.


          Yes, it's still possible to get ddrescue to do those things, but when you're reasonably sure the source will not throw a read error then dd is easier and meshes well with other standard *nix tools.






          share|improve this answer













          ddrescue works well the basic case, where you want to clone between disks and on-disk images.



          However, there are some cases where it simply won't work, or getting it to work requires a convoluted process of additional abstractions. This is usually because ddrescue requires a seekable source and destination. For example, this is significant when:




          • You want to send a disk stream directly over the network. dd will happily let you pipe its input from or output to nc, ssh, etc.. ddrescue cannot do this. You'd need to provide a seekable remote filesystem, perhaps with SMB, NFS or SSHFS - but they all introduce additional overhead. (Arguably, you should use rsync instead - but sometimes the bit-exact image can be useful.)

          • You want to compress the disk image. Maybe you don't have enough space for the full uncompressed image. With dd, you can easily pipe through gzip. With ddrescue, you'd need something like fusecompress.


          Yes, it's still possible to get ddrescue to do those things, but when you're reasonably sure the source will not throw a read error then dd is easier and meshes well with other standard *nix tools.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jan 13 '16 at 13:44









          BobBob

          46.4k20141173




          46.4k20141173













          • Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

            – Bob
            Jan 13 '16 at 13:49





















          • Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

            – Bob
            Jan 13 '16 at 13:49



















          Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

          – Bob
          Jan 13 '16 at 13:49







          Also note that dd provides many options useful outside of imaging. You can use it to take the first N characters of a stream. You can use it to pad spaces, and remove trailing spaces. You can perform case and limited text encoding conversions. Of course, you're probably better off doing the latter two with tr/sed or perl/python...

          – Bob
          Jan 13 '16 at 13:49




















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Super User!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1024643%2fin-which-case-should-i-prefer-dd-over-gnu-ddrescue%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Plaza Victoria

          Brian Clough

          Cáceres