Utiliser PAR2 pour pallier les limitations d'APFS

Introduction

Ces scripts permettent de gérer l'absence de checksum sur les données d'APFS afin d'éviter la corruption silencieuse (bit rot). Le système de fichiers APFS ne vérifie pas automatiquement l'intégrité des données, ce qui peut entraîner une corruption progressive des fichiers sans qu'aucune alerte ne soit déclenchée.

Les scripts peuvent être placés à la racine du disque qui sera traité (par exemple : /Volumes/HDD_Externe).


Prérequis

Installation de PAR2

Si PAR2 n'est pas encore installé sur votre système macOS, vous pouvez l'installer via Homebrew :

brew install par2

📥 Télécharger par2_init

📥 Télécharger par2_update

📥 Télécharger par2_verify


Rendre les scripts exécutables

Avant toute utilisation, assurez-vous que les trois scripts sont exécutables :

chmod +x par2_init.sh par2_verify.sh par2_update.sh

Procédure d'utilisation

1. Initialisation (à effectuer une seule fois)

Cette étape doit être réalisée lorsque toutes vos données sont présentes sur le disque et que vous souhaitez créer les fichiers de parité pour l'ensemble du volume.

./par2_init.sh /Volumes/HDD_Externe

Note : Les fichiers de parité (.par2) sont automatiquement cachés par le script. Si vous souhaitez le faire manuellement, utilisez la commande suivante :

find /Volumes/HDD_Externe -name "*.par2" -exec chflags hidden {} \;

2. Mise à jour après modifications ponctuelles

Après chaque ajout ou modification de données sur le disque, exécutez le script de mise à jour. Celui-ci recrée les fichiers de parité uniquement pour les fichiers modifiés, en se basant sur les métadonnées (dates de création/modification).

./par2_update.sh /Volumes/HDD_Externe

Cette opération est rapide car elle ne traite que les fichiers récemment modifiés.

3. Vérification trimestrielle

Il est recommandé d'effectuer une vérification complète tous les trois mois pour détecter toute corruption silencieuse (bit rot) sur l'ensemble du disque.

Étape 1 : Mise à jour préalable (OBLIGATOIRE)

⚠️ ATTENTION : Avant d'effectuer une vérification trimestrielle, il est primordial d'avoir exécuté le script d'update. Ne pas le faire peut entraîner des faux positifs et des problèmes de vérification.

./par2_update.sh /Volumes/HDD_Externe

Étape 2 : Vérification seule

Pour effectuer une vérification sans réparation automatique :

./par2_verify.sh /Volumes/HDD_Externe

Étape 2bis : Vérification avec réparation automatique

Pour effectuer une vérification et réparer automatiquement les fichiers corrompus détectés :

./par2_verify.sh /Volumes/HDD_Externe repair

Récapitulatif des commandes


Fonctionnement technique

Principe des fichiers de parité

PAR2 crée des fichiers de parité qui contiennent des informations redondantes permettant de :

Gestion des métadonnées

Le script par2_update.sh utilise intelligemment les métadonnées du système de fichiers. Il compare les dates de modification des fichiers avec celles des fichiers de parité correspondants pour déterminer quels fichiers doivent être traités. Cela évite de recréer inutilement des fichiers de parité pour des données inchangées.

Fichiers cachés

Les fichiers .par2 sont automatiquement marqués comme cachés (attribut hidden de macOS) pour ne pas encombrer votre espace de travail tout en restant accessibles aux scripts de vérification.


Bonnes pratiques


Tout supprimer

Pour supprimer tous les fichiers de parité créés, utilisez le script suivant.

📥 Télécharger par2_reset


🖱️ Version interactive (double-clic)

Une version interactive de ces scripts est également disponible. Ces scripts peuvent être exécutés par un simple double-clic depuis le Finder, sans avoir besoin d'utiliser le Terminal.

Au lancement, une fenêtre Finder s'ouvre pour vous permettre de sélectionner le dossier à traiter. Plus besoin de saisir des chemins manuellement !

📦 Télécharger les scripts interactifs (ZIP)

📖 Important : Avant d'utiliser ces scripts, consultez le fichier README inclus dans l'archive. Il contient les instructions pour autoriser l'exécution des scripts et contourner le blocage de Gatekeeper (protection macOS contre les fichiers téléchargés).

L'archive contient : par2_init.command, par2_update.command, par2_verify.command, par2_reset.command et README_par2.pdf


Conclusion

Cette solution PAR2 offre une protection efficace contre la corruption silencieuse des données sur les volumes APFS. En suivant rigoureusement cette procédure, vous garantissez l'intégrité de vos données à long terme.

N'oubliez pas que la détection précoce de la corruption est essentielle : une vérification trimestrielle régulière vous permettra d'intervenir avant que les dégâts ne deviennent irréparables.



↑ Haut de page