Se o alvo for igual ou maior, funcionará. Você pode verificar com:
blockdev --getsize64 /dev/source /dev/target
Se for menor, ficará sem espaço, mas o que importa depende de quantos bytes estão faltando / e o que realmente está lá.
In hindsight I may have been better copying to an image (?)
Os arquivos de imagem também têm desvantagens. Além disso, ele precisa de mais espaço ... você pode copiar um disco de 3 TB para outro disco de 3 TB, mas não para um arquivo de imagem no disco de 3 TB, pois um bom pedaço é perdido no particionamento, nos metadados do sistema de arquivos ...
1) Keep the ddrescue running whilst it's working to the other 3tb drive
Sim, embora o arquivo de log / mapfile permita que você cancele a qualquer momento e reinicie com diferentes opções. Você mencionou que ficou preso em uma área lenta, pode avançar ou talvez experimentar a opção --min-read-rate
. Mas, desde que não esteja completamente preso, talvez seja melhor mantê-lo funcionando por enquanto.
4) If it does run out of space at the end - what's the process?
Depende do que realmente está na unidade e do quanto falta.
Às vezes, não importa, por exemplo, o LVM geralmente tem alguns dados inutilizáveis no final (depende do tamanho da extensão física e do deslocamento) e a maioria dos sistemas de arquivos se preocupa muito mais com o início da unidade do que com o final.
Se houver um pequeno fragmento faltando, você poderá usar o mapeamento dmsetup
linear para criar um novo dispositivo com espaço adicional, sem precisar copiar tudo novamente. Mas provavelmente não é um problema sério em primeiro lugar.