[gull] Truc et astuces: Ecrire des données ET leur somme de contrôle, simultanément.
    felix 
    felix at f-hauri.ch
       
    Sat Apr 12 19:31:20 CEST 2014
    
    
  
Bonjour,
Il peut être parfois utile de vérifier les données que l'on écrit sur un disque,
mais à quoi bon vérifier la somme *aprés* avoir écrit les données... Qui dit
que rien n'a été corrompu *pendant* l'écriture.
De plus, s'il s'agit d'une sauvegarde en urgence d'un (autre) disque en fin de vie,
on ne peut pas trop se permettre plusieurs lectures.
C'est ce qui m'a ammené à cette petite routine:
writeWithCheck() {
    local WWC_CMD=${2:-sha1sum} WWC_NAME="${1}"
    tee "${WWC_NAME}" |
        ${WWC_CMD} -b |
        sed "s/-$/$WWC_NAME/" >> ${WWC_CMD}s.txt
}
Ce qui me permet de sauvegarder un disque dur:
 # dev=/dev/sdX
 # mkdir BackupName... && cd $_
 # dd if=$dev count=1 | gzip | writeWithCheck mbr.gz
 # sfdisk -d | writeWithCheck sfdisk.out
 # partclone.ntfs -c -s ${dev}1 | xz | writeWithCheck ${dev##*/}1.ntfs.xz
 # partclone.extfs -c -s ${dev}3 | xz | writeWithCheck ${dev##*/}3.extfs.xz
 # mount ${dev}5 /mnt
 # tar -cplC /mnt . | xz | writeWithCheck ${dev##*/}5.tar.xz
 # umount /mnt
Et de se trouver au final avec un fichier ``sha1sums.txt'' qui peut
être utilisé pour vérifier l'intégrité des données écrites:
 # sha1sum -c <sha1sums.txt
 mbr.gz: OK
 sfdisk.out: OK
 sdX1.ntfs.xz: OK
 sdX3.extfs.xz: OK
 sdX5.tar.xz: OK
--
 Félix Hauri  -  <felix at f-hauri.ch>  -  http://www.f-hauri.ch
    
    
More information about the gull
mailing list