Czy w ogóle istnieje możliwość szybszego wyodrębnienia pliku tar.gz tar -zxvf filenamehere?
Mamy duże pliki i staramy się zoptymalizować operację.
Czy w ogóle istnieje możliwość szybszego wyodrębnienia pliku tar.gz tar -zxvf filenamehere?
Mamy duże pliki i staramy się zoptymalizować operację.
Odpowiedzi:
pigz to równoległa wersja gzip. Chociaż używa tylko jednego wątku do dekompresji, uruchamia 3 dodatkowe wątki do czytania, pisania i sprawdzania obliczeń. Twoje wyniki mogą się różnić, ale zauważyliśmy znaczną poprawę dekompresji niektórych naszych zestawów danych. Po zainstalowaniu pigz plik tar można wyodrębnić za pomocą:
pigz -dc target.tar.gz | tar xf -
tar -xvf --use-compress-program=pigz filenamehere. ( -zwynosi --use-compress-program=gzip.) Alternatywnie możesz nawet stworzyć gzipsymboliczne łącze do pigzi używać go dalej -zxvf.
-xfpóźniej --use-compress-program=pigz, albo dostałem błąd. Z jakiegoś powodu nie było to jednak szybsze niż używanie gzip.
bzip2jest pbzip2( pdla równoległych). tar --use-compress-program=pbzip2 -xvf file.tar.bz2.
pvpolecenia, aby pokazać postęp, lub ekwiwalent, jednocześnie używając --use-compress-program=pigzflagi? Podczas kompresji mogę to zrobić gnutar --use-compress-program="pigz | pv" -cf target.tar.gz YourData, ale nie jestem pewien, jak to zrobić podczas rozpakowywania / rozpakowywania.
jeśli w tarce znajduje się wiele, wiele małych plików, anuluj parametr „v”, spróbuj ponownie!
--checkpoint=NUMBER( wyświetlaj komunikaty postępu co NUMBER-ty rekord ) zamiast -v.
Jeśli chcesz zobaczyć postęp, użyj czegoś takiego pv. Oto przykład:
pigz -dc mysql-binary-backup.tar.gz | pv | tar xf -
$ tar -zxvfmetoda jest związana z IO lub CPU?