Qu'est-ce que le format de fichier BZ2 ?
.bz2 est un format de fichier compressé produit par l'utilitaire bzip2. Contrairement à une archive complète, il compresse un seul fichier ou flux de données - lorsque plusieurs fichiers doivent être regroupés, ils sont d'abord rassemblés dans une archive TAR puis compressés ensemble, produisant les paquets .tar.bz2 (ou .tbz2) que l'on trouve couramment sur les distributions Linux et les projets open-source.
Quelles données contient un fichier .bz2 ?
Les fichiers .bz2 stockent des données compressées à l'aide d'un pipeline d'algorithmes sans perte (lossless) :
- Transformée de Burrows-Wheeler (BWT) - réorganise les blocs de données pour regrouper les séquences d'octets répétées
- Transformée Move-to-front - exploite la localité produite par la BWT
- Codage par plages (RLE) - réduit les longues suites d'octets identiques
- Codage de Huffman - effectue le codage entropique du flux de symboles résultant
La taille des blocs varie de 100 KB à 900 KB et est sélectionnée au moment de la compression ; la commande bzip2 par défaut utilise des blocs de 900 KB (signature de fichier BZh9). Chaque bloc possède sa propre somme de contrôle CRC-32, et un second CRC au niveau du flux couvre l'ensemble du fichier. L'utilitaire bzip2recover peut récupérer des blocs intacts à partir d'une archive partiellement endommagée.
.bz2 sur les systèmes de type Unix
Les fichiers .bz2 se trouvent généralement sur Linux, macOS et d'autres environnements de type Unix, où bzip2 et bunzip2 sont des outils CLI standard. Le format est largement utilisé pour la distribution de code source de logiciels sur ces plateformes.
Support sur Windows
Sur Windows, les fichiers .bz2 sont pris en charge par des outils tels que 7-Zip, WinRAR et PeaZip. L'utilitaire bzip2 lui-même est également disponible sous forme de build Windows open-source. Comparé aux fichiers .gz, le format .bz2 atteint généralement un meilleur taux de compression sur le texte et le code source, au prix d'une compression et d'une décompression plus lentes. Des formats plus récents tels que .xz surpassent désormais souvent bzip2 tant en taux de compression qu'en vitesse, mais les paquets .tar.bz2 restent largement utilisés dans la distribution de logiciels open-source. Les fichiers .bz2 peuvent également servir à créer des copies de sauvegarde de diverses données, telles que des collections d'images ou des bibliothèques de documents.
Sécurité et sûreté
RISQUE : LOWLe format bzip2 est ouvert et sûr, et un .bz2 n'est que de la donnée compressée qui ne peut pas s'exécuter seule. Les précautions habituelles concernant les archives s'appliquent : un .bz2/.tar.bz2 provenant d'une source non fiable peut contenir des exécutables ou des scripts révélés seulement après l'extraction, scannez donc le contenu avant de lancer quoi que ce soit. Deux notes techniques : un minuscule .bz2 peut s'étendre énormément (« bombe de décompression ») - méfiez-vous des archives étrangement petites ; et un .tar.bz2 peut contenir des chemins « ../ » (traversée de chemin / « tar slip »), extrayez donc les archives non fiables dans un dossier vide. Les extracteurs modernes protègent contre ces deux risques.
Détails du format
en brefProgrammes qui ouvrent les fichiers BZ2
Détails techniques
spécifications approfondies| Type MIME | application/x-bzip2 (également application/x-bzip, application/bzip2) |
| Octets magiques | 42 5A 68 (« BZh ») à l'offset 0, suivi d'un chiffre ASCII « 1 »-« 9 » codant la taille du bloc (ex: BZh9 = blocs de 900 KB) |
| Encodage | Binaire - flux compressé par paquets de bits |
| Pipeline de compression | Transformée de Burrows-Wheeler → move-to-front → codage par plages → codage de Huffman (toutes les étapes sont sans perte) |
| Taille de bloc | Sélectionnable de 100 KB (niveau 1) à 900 KB (niveau 9) ; la valeur par défaut est 900 KB ; des blocs plus grands améliorent le taux mais nécessitent plus de RAM |
| Utilisation de la mémoire | Compression : environ 10× la taille du bloc ; décompression : ~3,5 MB quelle que soit la taille du bloc choisie |
| Vérification d'intégrité | Somme de contrôle CRC-32 par bloc compressé plus un CRC combiné au niveau du flux vérifié à la décompression |
| Marqueur de bloc | Chaque bloc BWT commence par la constante pi de 48 bits 0x314159265359, utilisée par bzip2recover pour localiser les blocs dans les fichiers endommagés |
| Modèle de conteneur | Flux compressé autonome sans table de noms de fichiers interne ni structure de répertoire ; plusieurs fichiers nécessitent une enveloppe TAR |
| Compression parallèle | Le bzip2 standard est monothread ; pbzip2 et lbzip2 parallélisent la compression au niveau des blocs sur les systèmes multicœurs |
| Récupération de blocs | bzip2recover scanne les octets bruts pour trouver les marqueurs de bloc de 48 bits et écrit chaque bloc intact dans un fichier .bz2 récupérable séparé |
| Taux de compression vs gzip | Généralement 10 à 15 % plus petit que le .gz sur le texte et le code source ; la décompression est 2 à 6 fois plus lente |
| Plateformes associées | Linux, macOS, Unix/BSD nativement ; Windows via 7-Zip, WinRAR, PeaZip ; CLI bzip2 disponible pour tous les systèmes majeurs |
| Cas d'utilisation courants | Archives tar de sources Linux/Unix (.tar.bz2), paquets de distribution de logiciels, dumps de bases de données et archives de journaux compressées |
| Publié | 1996 (bzip 0.21); bzip2 1.0 released 2000 |
| Dernière version | bzip2 1.0.8 (2019); format itself unchanged |
| Standard ouvert | Oui · libre de droits |
| Spécification | sourceware.org |
Conversions BZ2
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers BZ2.