Konwertuj TAR.BZ2 na TAR.XZ online
Przejdź z BZIP2 na XZ, aby archiwa były mniejsze i szybciej się rozpakowywały. W naszym teście TAR.XZ był o 5% mniejszy od TAR.BZ2 przy mieszanym zestawie i o 18% mniejszy przy plikach binarnych programów, a w pomiarze XZ rozpakowywał około 3,8 raza szybciej niż BZIP2. XZ to format używany przez większość obecnych dystrybucji Linuksa.
Format TAR.XZ stał się standardem dla dystrybucji kodu źródłowego, wydań jądra Linux i pakietów oprogramowania. Konwertując z TAR.BZ2 na TAR.XZ, zmniejszasz wymagania dotyczące przechowywania, jednocześnie poprawiając wydajność wypakowywania dla użytkowników końcowych pobierających i rozpakowujących Twoje archiwa.
Dlaczego warto uaktualnić do TAR.XZ?
- Najlepsza kompresja — w naszym teście XZ dał najmniejsze archiwa TAR, o 5–18% mniejsze niż BZIP2 zależnie od zawartości
- Szybsza dekompresja — XZ wypakowuje się szybciej niż BZIP2 mimo lepszej kompresji
- Nowoczesny standard — jądro Linux, narzędzia GNU i większość dystrybucji preferuje teraz TAR.XZ
- Wsparcie równoległości — XZ może wykorzystać wiele rdzeni procesora do kompresji dzięki pixz lub pxz
- Lepsze narzędzia — xz-utils oferuje lepsze opcje sprawdzania integralności i odzyskiwania
Jak przebiega konwersja
Konwersja z TAR.BZ2 na TAR.XZ obejmuje dwa kroki: najpierw usuwana jest warstwa kompresji BZIP2, aby wyodrębnić surowe archiwum TAR, a następnie jest ono ponownie kompresowane algorytmem XZ. Cała zawartość plików, uprawnienia, znaczniki czasu, informacje o własności i dowiązania symboliczne przechowywane w warstwie TAR są zachowane dokładnie tak, jak były.
Proces konwersji obsługuje pełne ponowne kodowanie automatycznie. Prześlij plik TAR.BZ2 i otrzymaj w pełni zoptymalizowane archiwum TAR.XZ gotowe do dystrybucji lub przechowywania. Plik trafia na nasze serwery przez szyfrowane połączenie HTTPS; sposób postępowania z przesłanymi plikami opisuje nasza polityka prywatności.
Porównanie techniczne: BZIP2 a XZ
BZIP2 wykorzystuje transformatę Burrowsa-Wheelera połączoną z kodowaniem Huffmana, podczas gdy XZ wykorzystuje LZMA2 (algorytm łańcucha Markowa Lempela-Ziva). LZMA2 osiąga lepszą kompresję dzięki większym słownikom i bardziej wyrafinowanemu dopasowywaniu. Kompromisem jest to, że kompresja XZ wymaga więcej pamięci i czasu procesora, ale dekompresja jest faktycznie szybsza niż BZIP2.
XZ wykorzystuje słowniki o rozmiarze do 1,5 GB, w porównaniu z maksymalnym 900 KB w BZIP2. Pozwala to XZ znajdować wzorce w znacznie większych zakresach danych, co daje lepszą kompresję dla dużych plików z powtarzającą się zawartością, takich jak repozytoria kodu źródłowego i zrzuty baz danych.
Nowoczesne dystrybucje Linuksa ustandaryzowały format XZ do dystrybucji pakietów, w tym samo jądro Linux. Konwersja z BZIP2 na XZ zapewnia, że Twoje archiwa korzystają z obecnie zalecanego formatu z najlepszą dostępną kompresją.
Wymagania dotyczące pamięci
Kompresja XZ przy domyślnych ustawieniach zużywa około 100-200 MB pamięci RAM. Maksymalna kompresja (-9e) może wymagać kilku gigabajtów, co czyni ją niepraktyczną na systemach z ograniczoną pamięcią. Dekompresja zwykle potrzebuje tylko 20-50 MB, niezależnie od poziomu kompresji użytego przy tworzeniu.
BZIP2 zużywa około 8 MB do kompresji i 4 MB do dekompresji. Ten niższy poziom zużycia pamięci sprawił, że BZIP2 był popularny na systemach wbudowanych i starszym sprzęcie. Jeśli musisz obsługiwać środowiska z ograniczoną pamięcią, TAR.BZ2 może pozostać lepszym wyborem, mimo lepszej kompresji XZ.
Przykłady kompresji z życia wzięte
W naszym teście 13 MB kodu źródłowego Pythona spakowało się do 2,29 MB jako TAR.BZ2 i do 2,08 MB jako TAR.XZ, czyli o 9% mniej; przy 38 MB plików binarnych programów XZ był o 18% mniejszy. Już skompresowanej zawartości, jak obrazy JPEG, żaden z formatów nie zmniejsza — oba pozostają blisko pierwotnego rozmiaru.