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
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
- Initialisation (une fois) : Créer les fichiers de parité pour tout le disque
./par2_init.sh /Volumes/HDD_Externe - Mise à jour (après chaque modification) : Mettre à jour les fichiers de parité des fichiers modifiés
./par2_update.sh /Volumes/HDD_Externe - Vérification trimestrielle : Détecter et éventuellement réparer la corruption
./par2_update.sh /Volumes/HDD_Externe
./par2_verify.sh /Volumes/HDD_Externe [repair]
Fonctionnement technique
Principe des fichiers de parité
PAR2 crée des fichiers de parité qui contiennent des informations redondantes permettant de :
- Détecter : Identifier les bits corrompus dans vos fichiers
- Vérifier : Contrôler l'intégrité de vos données grâce aux checksums
- Réparer : Restaurer les fichiers endommagés à partir des données de parité
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
- Planification : Configurez un rappel trimestriel pour la vérification complète
- Après modifications : Prenez l'habitude d'exécuter par2_update.sh après chaque session de modification importante
- Sauvegarde : PAR2 ne remplace pas une vraie stratégie de sauvegarde (règle 3-2-1)
- Espace disque : Les fichiers de parité occupent environ 5-10% de l'espace des données originales
- Journalisation : Conservez les logs des vérifications pour suivre l'état de santé de votre disque
Tout supprimer
Pour supprimer tous les fichiers de parité créés, utilisez le script suivant.
🖱️ 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