Contanto que sua unidade de origem tenha o mesmo tamanho de sua unidade de destino, mesmo se você usar uma unidade intermediária maior, ela ainda funcionará bem sem problemas. Portanto, no caso de usar uma unidade intermediária como você é, copie (ddrescue), da origem para o intermediário, e depois outro comando do ddrescue copie de intermediário para destino. E independentemente da unidade intermediária ou não, eu sugiro neste dia e idade e até mesmo mais de uma década antes, adicionando -b 1M (similar com dd), para acelerar a cópia para que o ddrescue não padrão para o seu padrão stoneage de um buffer de 512 bytes. Aqui estão alguns exemplos de usos GNU ddrescue - alguém pode me dar um bom comando para rodar no terminal? mas o seu parece ótimo apenas adicione a -b 1M ao que você tem, por velocidade.
Eu acho que ele copiará bit para bit de tudo, desde a origem até o dest até chegar ao final da origem ou dest, então ele irá parar a cópia completamente. No caso de copiar onde src = sua grande unidade intermediária, no destino, seu disco src é maior que seu disco dest. Ele irá parar no final do seu disco de destino. E isso deve ser bom porque é tudo o que você quer do seu disco src de qualquer maneira. E as coisas no seu disco src (disco intermediário) são construídas para funcionar no seu disco dest (um disco desse tamanho), então eu acho que com meu conhecimento quase zero, então FWIW, que deve funcionar bem. (além de qualquer corrupção de dados do seu disco defeituoso antigo)
Você também pode achar isso interessante link ou qualquer coisa sobre a leitura de uma imagem antes mesmo de gravar em uma unidade.
Mas apenas tente e veja. Eu acho que você vai achar que sua cópia, originalsrc para intermediário e intermediário para dest, onde src e dest são do mesmo tamanho e intermediário é grande, funcionará bem. E o ddrescue fornece uma barra de progresso, o que é bom.