Tente usar dd_rescue (chamado ddrescue em variantes do ubuntu) e coloque-o em algo como xz (ou o mais universal gzip e bzip2 ). Isso irá inserir zeros onde o setor defeituoso estava, mas não quebrará, no setor defeituoso, e irá comprimir a saída para que ele caiba no seu segundo disco rígido.
Exemplo:
dd_rescue /dev/sdX - | bzip2 > /mnt/working_external_disk/diskimage.img.bz2
onde sdX é o dispositivo de bloco do disco rígido com defeito e o símbolo - direciona a saída para stdout , onde é canalizado para bzip2 e bzip2 exibe a imagem do disco compactado para /mnt/working_external_disk/diskimage.img.bz2 . Você deve então poder descompactá-lo quando tiver um pouco mais de espaço e montá-lo com mount -o loop /path/to/decompressed/disk/image.img /path/to/mount/to .
Se você não quiser fazer o investimento em uma unidade um pouco maior, pode sempre tentar usar split para dividir alguns setores da imagem de disco. Provavelmente não será montado corretamente depois, mas vale a pena um tiro.
Desculpe se isso não responde à sua pergunta, mas atualmente estou fazendo backup de uma enorme quantidade de dados e estou em uma situação semelhante, e isso é o que eventualmente funcionou para mim. Eu tive que obter uma unidade maior, mas consegui fazer uma cópia do disco defeituoso com bzip2 .
Se você não estiver usando o linux / unix, desculpe por desperdiçar seu tempo, mas tenho pouca experiência com o Windows quando se trata de fazer o backup de discos.