Alternative to Clonezilla to clone semi-faulty hard disk?

07
2014-07
  • OverTheRainbow

    For the past few weeks, Windows 7 started locking tight at random.

    Originally, I assumed it could be a bug in Flash or the video driver, as it seemed to happen when I was watching videos through Google Chrome, but it kept doing the same thing with Firefox.

    I figured it could be a hardware issue, and ran the open-source CrystalDiskInfo utility today, which warned me that the system disk (first partition on disk) had some issues.

    So I just bought a new SATA disk of the exact same size as the dying system disk, and tried to run Clonezilla to clone the old disk onto the new one.

    However, Clonezilla fails after a few minutes with several occurences of the following error:

    May  6 23:23:06 precise kernel: [ 2189.474491] ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x0 May  6 23:23:06 precise kernel: [ 2189.474515] ata2.00: BMDMA stat 0x24 May  6 23:23:06 precise kernel: [ 2189.474530] ata2.00: failed command: READ DMA May  6 23:23:06 precise kernel: [ 2189.474549] ata2.00: cmd c8/00:08:48:82:da/00:00:00:00:00/e4 tag 0 dma 4096 in May  6 23:23:06 precise kernel: [ 2189.474550]          res 51/40:00:48:82:da/00:00:00:00:00/e4 Emask 0x9 (media error) May  6 23:23:06 precise kernel: [ 2189.474600] ata2.00: status: { DRDY ERR } May  6 23:23:06 precise kernel: [ 2189.474615] ata2.00: error: { UNC } May  6 23:23:06 precise kernel: [ 2189.496400] ata2.00: configured for UDMA/133 May  6 23:23:06 precise kernel: [ 2189.496409] sd 1:0:0:0: [sda] Unhandled sense code May  6 23:23:06 precise kernel: [
    2189.496411] sd 1:0:0:0: [sda]  Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE May  6 23:23:06 precise kernel: [ 2189.496415] sd 1:0:0:0: [sda]  Sense Key : Medium Error [current] [descriptor] May 6 23:23:06 precise kernel: [ 2189.496419] Descriptor sense data with sense descriptors (in hex): May  6 23:23:06 precise kernel: [
    2189.496421]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00  May  6 23:23:06 precise kernel: [ 2189.496428]         04 da 82 48  May  6 23:23:06 precise kernel: [ 2189.496431] sd 1:0:0:0: [sda]  Add. Sense: Unrecovered read error - auto reallocate failed May  6 23:23:06 precise kernel: [ 2189.496436] sd 1:0:0:0: [sda] CDB: Read(10): 28 00 04 da 82 48 00 00 08 00 May  6 23:23:06 precise kernel: [ 2189.496444] end_request: I/O error, dev sda, sector 81429064 May  6 23:23:06 precise kernel: [ 2189.496465] quiet_error: 22 callbacks suppressed May  6 23:23:06 precise kernel: [ 2189.496468] Buffer I/O error on device sda1, logical block 81427016 May  6 23:23:06 precise kernel: [
    2189.496493] Buffer I/O error on device sda1, logical block 81427017 May  6 23:23:06 precise kernel: [ 2189.496558] Buffer I/O error on device sda1, logical block 81427018 May  6 23:23:06 precise kernel: [
    2189.496617] Buffer I/O error on device sda1, logical block 81427019 May  6 23:23:06 precise kernel: [ 2189.496676] Buffer I/O error on device sda1, logical block 81427020 May  6 23:23:06 precise kernel: [
    2189.496735] Buffer I/O error on device sda1, logical block 81427021 May  6 23:23:06 precise kernel: [ 2189.496795] Buffer I/O error on device sda1, logical block 81427022 May  6 23:23:06 precise kernel: [
    2189.496854] Buffer I/O error on device sda1, logical block 81427023 May  6 23:23:06 precise kernel: [ 2189.496923] ata2: EH complete
    

    I don't know how good a job Clonezilla does with so-so disks. Before giving up, is there a better utility you would recommend, that would try several times, and possibly perform a slower job before failing?

    Thank you.

  • Answers
  • Journeyman Geek

    gnu ddrescue from a livecd is probably the best bet here. It'll copy out all 'easy' to copy data, then do multiple passes on bad data to try to recover as much of it as possible - I have a more in depth answer on dd varients here. I'd back up to an image, then restore it to my new drive. I'd then probably run chkdsk to be sure everything is fine.

    I'd also suggest having proper, pre-emptive backups in future

  • Julian Knight

    Not quite what you are asking for but the best tool I know of for situations like yours is Spinrite. Unfortunately it is quite expensive USD90 or so but it is a life-saver and I've used it on several otherwise unrecoverable disks.

    It will try very hard indeed to recover every part of a disk and often succeeds, it is likely (but not guaranteed of course) to be able to recover the disk sufficiently that CloneZilla will be able to complete.

    Otherwise, I think that you will need to backup at a file level and reinstall from scratch.


  • Related Question

    windows 7 - Is there a way to clone an NTFS hard drive but leave some files out?
  • Pridkett

    I'm trying to find a nice way to do backups of my Windows 7 Media Center machine. Ideally I'd like to take periodic snapshots of the entire hard disk, but leave some files out of the selection. For example, take an image of the whole hard disk, but leave out all of the TV recordings (not the end of the world if I lose those).

    I've been using Clonezilla to successfully clone machines for a long time. It's smart enough to use ntfsclone to smartly clone hard disk without resorting to dd. However, it only images the entire hard disk or partition, and does not let me leave some files out.

    I know this is possible because we've got a little USB->SATA drive dongle at work that came with some software that allows you to skip files (works great for migrating down to an SSD), but it requires the dongle and only works with laptop drives.

    Any suggestions on software I should use? Open Source is preferred, but not necessary.


  • Related Answers
  • wetware.hacking

    Cloning is not backup'ing in my book. The advantage of a backup is that it does not copy everyting everytime but only whats different from the last save.

    There's already a utility that does this on Windows 7. It is called ROBOCOPY. By default it is a program you need to start by the command prompt (windows_key+R, type 'cmd', press enter).

    To use: robocopy SOURCE_FOLDER DESTINATION_FOLDER -parameters

    You can use parameters to exclude some file type, directories, etc. Robocopy can copy over the network, on usb, etc. it doesnt make a difference. With the /MIR parameter, it 'MIRrors' your source in your destination folders and backup only what is newer.

  • Mark Sowul

    One way to do it is to use the Windows Image-based backup utility, and add the directories you wish to exclude to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\BackupRestore\FilesNotToSnapshot

    Note that this will exclude it from "Restore previous versions" and other shadow-copy-based functionality

    http://msdn.microsoft.com/en-us/library/windows/desktop/aa819132.aspx

    I myself have set up a scheduled task that runs wbadmin for this purpose.