Tak, format pliku gzip zawiera sumę kontrolną CRC-32, której można użyć do wykrycia uszkodzenia archiwum.
Oczywiście, chociaż suma kontrolna pozwala gzipowi powiedzieć , że archiwum jest uszkodzone, w rzeczywistości nie robi nic, aby pomóc Ci odzyskać dane w archiwum. Dlatego przydaje się przede wszystkim do sprawdzania, czy archiwum, które właśnie pobrałeś z sieci, naprawdę zostało poprawnie pobrane.
Jeśli faktycznie martwisz się przechowywaniem lub przesyłaniem swoich archiwów przez niewiarygodne media, możesz rozważyć użycie formatu archiwum takiego jak par, który oprócz wykrywania błędów zapewnia także korekcję błędów. Oczywiście wadą takich formatów jest to, że nadmiarowość wymagana do korekcji błędów niekoniecznie zwiększa rozmiar pliku.
tar
(przynajmniej bez tej-z
opcji) nie zrobić sprawdzanie integralności. Również przyjęta odpowiedź stanowi to. Pytanie brzmi: czygzip
(lub użycie-z
opcji) dodaje sprawdzanie integralności?Jeśli tar wykryje błędy podczas rozpakowywania, wydrukuje komunikat i zakończy działanie z niezerową wartością wyjścia. To zachowanie jest niezależne od algorytmu kompresji używanego po utworzeniu pliku tar.
Jeśli chcesz sprawdzić, czy plik został pomyślnie wysłany do miejsca docelowego za pomocą niewiarygodnego łącza, utwórz sumę md5 pliku przed wysłaniem i zweryfikuj sumę md5 po odbiorze.
źródło
tar
sama. W razie potrzeby możesz dodać dodatkową warstwę: jeśli integralność pliku tar zostanie zweryfikowana, zawartość wewnątrz archiwum tar również będzie w porządku. Ale wszystko to powinno być załatwione przede wszystkim przez protokół używany do przesyłania danych.Pakiet PKZip (win / dos) zawiera program o nazwie PKZipFix, który może odzyskiwać pliki z uszkodzonych archiwów. Korzystałem z tego narzędzia w przeszłości, może ono odzyskiwać pliki z umiarkowanie uszkodzonych archiwów, które nie uległyby dekompresji.
źródło