Je souhaite cloner un gros disque (un SSD de 500 Go, pour ce que ça vaut), et je penche vers l'utilisation de cat
, comme le suggère Gilles ici. Mais ce qui m'a fait réfléchir, c'est que je ne sais pas vraiment quel cat
fait en cas d'erreurs de lecture. Je sais comment dd
se comporte dans ces cas, c'est-à-dire la commande
dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync status=progress
ne s'arrête pas pour les erreurs de lecture, et remplit l'erreur de lecture avec des zéros (le sync
option) afin que les données restent synchronisées. Malheureusement, il le fait en remplissant les zéros à la fin du bloc à écrire, de sorte qu'une seule erreur dans une lecture précoce de 512 octets perturbe l'ensemble des 64 Ko de données (encore pire avec des tailles de bloc plus grandes et plus rapides).
Alors je me demande :puis-je faire mieux/différemment avec cat
? Ou devrais-je simplement passer à Clonezilla ?
Réponse acceptée :
cat
s'arrête s'il rencontre une erreur de lecture ou d'écriture.
Si vous craignez qu'il y ait des secteurs illisibles sur votre lecteur source, vous devriez consulter des outils tels que ddrescue
.