Compression zpaqfranz sur macOS Tahoe

Guide pratique pour administrateurs systèmes

zpaqfranz surpasse zip de 20 à 50% en taux de compression tout en offrant déduplication native et sauvegardes incrémentales versionnées. Ce fork activement maintenu du projet zpaq original s'installe via Homebrew et utilise un chiffrement AES-256 de niveau militaire.
Bien entendu, vous pouvez utiliser PeaZip pour macOS, si vous ne souhaitez pas manipuler le Terminal.

Pré-requis : Homebrew doit être installé sur votre Mac.


zpaq ou zpaqfranz : le choix est simple

zpaq original a été développé par Matt Mahoney avec une dernière version 7.15 datant d'août 2016.
Depuis, le projet est abandonné.
zpaqfranz, créé par Franco Corbelli, est un fork à 100% rétrocompatible qui étend les fonctionnalités originales.

Recommandation : utilisez exclusivement zpaqfranz. Les archives créées restent lisibles par l'ancien zpaq si nécessaire.


Pourquoi zpaqfranz écrase zip, en terme de compression

Benchmarks sur un corpus mixte de 303 Mo (Calgary, Canterbury, Silesia, enwik8) :

Déduplication par chunking

Les fichiers sont découpés en fragments de 64 Ko en moyenne via un hash roulant.
Chaque fragment reçoit une empreinte SHA-1 ; les fragments identiques ne sont stockés qu'une fois.
Résultat concret : 107 Go de VMs compressés en 15.8 Go (85% de réduction).

Context mixing

Les niveaux -m3 à -m5 prédisent chaque bit en combinant plusieurs modèles statistiques via un réseau neuronal.
Cette technique atteint les meilleurs taux de compression connus mais au prix d'une lenteur significative.


Installation sur macOS via Homebrew

# Installation recommandée
brew install zpaqfranz

# Vérification
zpaqfranz h | head -5

Sortie attendue :

zpaqfranz v63.6e-NOJIT,-L4,(2025-10-31)

Niveaux de compression disponibles

(Recommandation sysadmin : utilisez -m1 (c'est la valeur par défaut) pour les sauvegardes et -m0 pour les images VM où la déduplication seule suffit.)


Commandes de compression essentielles

Compresser un fichier unique

zpaqfranz a archive.zpaq /chemin/vers/fichier.log

Compresser un dossier entier

zpaqfranz a backup.zpaq /var/log/

Compression avec niveau spécifique

# Compression rapide (défaut, recommandé)
zpaqfranz a backup.zpaq /data/ -m1

# Compression maximale (très lent)
zpaqfranz a archive.zpaq /data/ -m5

# Déduplication seule, sans compression (idéal pour VMs)
zpaqfranz a vms.zpaq /vmware/ -m0

Multiples sources

zpaqfranz a backup.zpaq /etc/ /var/log/ /home/admin/scripts/

Sortie verbose

zpaqfranz a backup.zpaq /data/ -verbose

Extraction d'archives zpaq

Extraire dans le répertoire courant

zpaqfranz x archive.zpaq

Extraire vers un répertoire spécifique

zpaqfranz x archive.zpaq -to /chemin/destination/

Extraire un fichier spécifique

zpaqfranz x archive.zpaq /etc/nginx/nginx.conf -to /tmp/restored/

Lister le contenu sans extraire

# Liste simple
zpaqfranz l archive.zpaq

# Informations détaillées (versions, taille, stats)
zpaqfranz i archive.zpaq

# Rechercher des fichiers
zpaqfranz l archive.zpaq -find "*.conf"

Forcer l'écrasement

zpaqfranz x archive.zpaq -to /restore/ -force

Chiffrement AES-256 des archives

zpaqfranz utilise AES-256 en mode CTR avec dérivation de clé via Scrypt (N=16384, r=8, p=1). Chaque tentative de brute-force nécessite ~208 millions d'opérations et 16 Mo de RAM, rendant les attaques impraticables.

Créer une archive chiffrée

zpaqfranz a backup_secure.zpaq /data/sensible/ -key MonMotDePasse

Extraire une archive chiffrée

zpaqfranz x backup_secure.zpaq -key MonMotDePasse -to /restore/

Lister et tester une archive chiffrée

zpaqfranz l backup_secure.zpaq -key MonMotDePasse
zpaqfranz t backup_secure.zpaq -key MonMotDePasse

Sécurité renforcée avec keyfile

# Vérifier l'entropie d'un fichier candidat
zpaqfranz work keyfile /chemin/image.jpg

# Créer archive avec mot de passe + keyfile
zpaqfranz a backup.zpaq /data/ -key MotDePasse -keyfile /chemin/keyfile.jpg

(Important : le chiffrement assure la confidentialité mais pas l'authentification — l'archive ne détecte pas les modifications malveillantes.)


Sauvegardes incrémentales versionnées

C'est la fonctionnalité phare de zpaq. Chaque exécution de a (add) crée une nouvelle version/snapshot. Seuls les fichiers modifiés sont ajoutés, avec déduplication au niveau des fragments.

Workflow de sauvegarde quotidienne

# Jour 1 : sauvegarde initiale (version 1)
zpaqfranz a /backup/serveur.zpaq /data/

# Jour 2 : seules les modifications sont ajoutées (version 2)
zpaqfranz a /backup/serveur.zpaq /data/

# Jour N : continue à créer des versions incrémentales
zpaqfranz a /backup/serveur.zpaq /data/

Consulter les versions disponibles

zpaqfranz i serveur.zpaq

Restaurer une version spécifique

# Restaurer la version 3
zpaqfranz x serveur.zpaq -until 3 -to /restore/

# Restaurer à une date précise
zpaqfranz x serveur.zpaq -until 2024/03/15 -to /restore/

Vérification d'intégrité et autres outils

Tester l'intégrité d'une archive

# Test standard (décompresse et vérifie les hashes)
zpaqfranz t archive.zpaq

# Test avec vérification SHA-256
zpaqfranz t archive.zpaq -sha256

# Test paranoid (lent, gourmand en RAM)
zpaqfranz p archive.zpaq

Comparer archive vs système de fichiers

zpaqfranz v archive.zpaq
zpaqfranz sync archive.zpaq /data/original/

Comparer deux répertoires

zpaqfranz c /master/ /replica/

Calculer des hashes

zpaqfranz sum /data/ -sha256
zpaqfranz sum /data/ -blake3 -ssd # Optimisé SSD, multithread

Optimisation multithread

zpaqfranz a backup.zpaq /data/ -threads 8
zpaqfranz t archive.zpaq -ssd # Vérification parallèle optimisée SSD

Aide-mémoire des commandes


Conclusion

zpaqfranz s'impose comme l'outil de compression de choix pour les sysadmins confrontés à des volumes importants de données répétitives. Son système de sauvegardes incrémentales versionnées élimine le besoin d'outils tiers comme rsnapshot, tandis que la déduplication native réduit drastiquement l'espace occupé par les VM et conteneurs similaires.

Le compromis principal reste la vitesse de décompression (10 à 100x plus lente que zip aux niveaux élevés). Privilégiez -m0 ou -m1 pour les sauvegardes opérationnelles où la restauration rapide compte. Pour l'archivage long terme où le ratio prime, -m5 délivre des résultats inégalés par les formats conventionnels.



↑ Haut de page