Bonjour !
Config : FreeNAS-9.1.1-RELEASE-x64 (a752d35) + client Windows 7
Je me demandais ce qui arrivait lorsqu'un snapshot est effectué pendant la copie d'un fichier volumineux. Autrement dit, avant que le fichier soit intégralement copié.
J'ai donc fait un essai via samba : j'ai lancé une copie d'un fichier de 4 Go et j'ai fait un snapshot en plein milieu de la copie, avant la fin du transfert.
En navigant dans le dossier du snapshot, je me retrouve donc avec un fichier qui semble complet (d'après « ls -l ») mais qui ne l'est pas (la somme MD5 n'est pas bonne).
# Fichier (incomplet) dans le snapshot.
[a@freenas] /mnt/vol/a/test/.zfs/snapshot/1% ls -l
-rw------- 1 a utilisateurs 4103075840 Jan 5 19:27 fichier_test.iso # La taille semble bonne mais en réalité le fichier est incomplet.
[a@freenas] /mnt/vol/a/test/.zfs/snapshot/1% md5 fichier_test.iso
MD5 (fichier_test.iso) = b379ce8f825f13f90067e4a38d151322 # Pour preuve : le MD5 n'est pas correct.
# Fichier copié (complet).
[a@freenas] /mnt/vol/a/test% ls -l
-rw------- 1 a utilisateurs 4103075840 Dec 25 16:23 fichier_test.iso
[a@freenas] /mnt/vol/a/test% md5 fichier_test.iso
MD5 (fichier_test.iso) = 4a1847d849e7732d4583d8875c228669 # MD5 correct. |
Ce comportement est peut-être normal mais, sauf erreur de ma part, s'il y a une écriture en plein milieu d'un snapshot, le snapshot contiendra juste le début du fichier.
En fait, j'aurais préféré tout ou rien : le fichier complet ou pas de fichier du tout plutôt qu'un fichier incomplet.
J'ai peur d'avoir des bizarreries si je restaure un fichier provenant d'un snapshot !