fclose non plus ne t'assure pas que les données sont sur le disque :
man 3 fclose Notez que fclose() ne vide que les tampons fournis par la bibliothèque C dans l’espace utilisateur. Pour s’assurer que les données sont écrites physiquement sur le disque, il faut aussi vider les tampons du noyau à l’aide, par exemple, de sync(2) ou fsync(2).
Il faut vraiment un sync pour être sûr que les données soient bien écrites.
[^] # Re: Forme canonique d'écriture de fichier
Posté par beagf . En réponse à la dépêche Le noyau Linux 2.6.30 est disponible. Évalué à 2.
man 3 fclose
Notez que fclose() ne vide que les tampons fournis par la bibliothèque C dans l’espace utilisateur. Pour s’assurer que les données sont écrites physiquement sur le disque, il faut aussi vider les tampons du noyau à l’aide, par exemple, de sync(2) ou fsync(2).
Il faut vraiment un sync pour être sûr que les données soient bien écrites.