W następnym artykule przyjrzymy się narzędziu do kompresji xz. Kolega opowiedział nam o niej jakiś czas temu w artykule na temat jak spakować i rozpakować pliki w Ubuntu. Użycie tego narzędzia jest podobne do gzip i bzip2.
Może być używany do kompresować lub dekompresować pliki zgodnie z wybranym trybem pracy. Metoda kompresji używana przez te pliki to oparty na algorytmie LZMA/ LZMA2. Algorytm ten zaczął się rozwijać pod koniec lat 90. Wykorzystuje schemat słownika kompresji podobny do LZ77.
Algorytm kompresji LZ77 należy do rodziny plików bezstratne sprężarki, znane również jako kompresory tekstu. Są one znane pod tą nazwą, ponieważ nie pomijają informacji z pliku podczas jego kompresji. W przeciwieństwie do kompresorów, które używają algorytmów tego typu stratny. Pomijają one niektóre informacje mające na celu znaczne zmniejszenie rozmiaru oryginalnego pliku. Przykładem może być jpeg, MP3, MPG itp.
W porównaniu z plikami „gz”, „xz” ma rozszerzenie lepszy współczynnik kompresji i krótszy czas dekompresji. Jednak gdy używamy domyślnych ustawień kompresji, dekompresja będzie wymagać więcej pamięci. Gzip zużywa nieco mniej pamięci.
Pliki .xz służą do kompresji i dekompresji danych, dzięki czemu przesyłanie plików przez Internet lub przechowywanie informacji na dyskach twardych zajmuje mniej. Podsumowując, jeśli chcemy skompresuj plik, który ma zajmować jak najmniej miejsca, mamy możliwość skompresowania go za pomocą xz.
Jak korzystać z kompresji XZ
Kompresja
El najprostszy przykład Kompresja pliku przy użyciu xz jest następująca. W terminalu (Ctrl + Alt + T) piszemy:
xz android-x86_64-7.1-r2.iso
Możesz także użyć -z opcja wykonywania kompresji:
xz -z android-x86_64-7.1-r2.iso
Te polecenia skompresują plik, ale usuwają plik źródłowy. tak nie staramy się usuwać plików źródłowych, użyjemy -k opcja następująco:
xz -k android-x86_64-7.1-r2.iso
Descomprimir
Aby zdekompresować plik, będziemy mogli użyć rozszerzenia -d opcja:
xz -d android-x86_64-7.1-r2.iso
Możemy również osiągnąć to samo dzięki opcja unxz:
unxz android-x86_64-7.1-r2.iso
Kompresja siły
Jeśli operacja się nie powiedzie, na przykład jeśli istnieje skompresowany plik o tej samej nazwie, użyjemy rozszerzenia -f opcja wymuszenia procesu:
xz -kf android-x86_64-7.1-r2.iso
Ustaw poziomy kompresji
To narzędzie obsługuje różne wstępnie ustawione poziomy kompresji (0 do 9. Z wartością domyślną 6). Będziemy też mogli używaj aliasów tak szybko (będzie szybki, ale z mniejszą kompresją), aby ustawić jako wartość 0 i - najlepiej ustawić jako wartość 9 (wolna, ale wyższa kompresja). Oto kilka przykładów ustawiania tych poziomów:
xz -k -8 android-x86_64-7.1-r2.iso xz -k --best android-x86_64-7.1-r2.iso
Ograniczanie pamięci
W przypadku posiadania małej ilości pamięci systemowej i chęci skompresowania dużego pliku będziemy mieli możliwość skorzystania z rozszerzenia -memory opcja = limit (wartość graniczna może być wyrażona w MB lub jako procent pamięci RAM), aby ustawić limit wykorzystania pamięci dla kompresji:
xz -k --best --memlimit-compress=10% android-x86_64-7.1-r2.iso
Włącz tryb cichy
Jeśli jesteśmy zainteresowani wykonaniem kompresji w trybie cichym, będziemy musieli tylko dodać plik -q opcja. Możemy również włączyć tryb gadatliwy z -v, jak pokazano poniżej:
xz -k -q android-x86_64-7.1-r2.iso xz -k -qv android-x86_64-7.1-r2.iso
Utwórz plik tar.xz
Poniżej znajduje się przykład użycia, aby uzyskać plik plik z rozszerzeniem tar.xz.
tar -cf - *.txt | xz -7 > txtfiles.tar.xz
Aby osiągnąć ten sam cel, możemy również użyć:
tar -cJf txtfiles.tar.xz *.txt
Sprawdź integralność skompresowanych plików
Możemy przetestować integralność skompresowanych plików za pomocą -t opcja. Używanie -l możemy zobaczyć informacje o skompresowanym pliku.
xz -t txtfiles.tar.xz xz -l txtfiles.tar.xz
To dobre narzędzie do kompresji plików. W tym artykule przyjrzymy się tylko niektórym przykładom kompresji i dekompresji. Aby uzyskać więcej informacji o wszystkim, co możemy zrobić, możesz przejść do tej strony człowiek xz.