Jak znaleźć typy skompresowanych archiwów w systemie Ubuntu Linux



Wypróbuj Nasz Instrument Do Eliminowania Problemów

Czasami, gdy spróbujesz wyodrębnić plik .tar.gz, .tar.xz, .tar.bz2 lub nawet zwykły plik zip, zobaczysz błąd, taki jak xz: (stdin): Nie rozpoznano formatu pliku, który wskazuje że system operacyjny nie może go wyodrębnić. Ubuntu i inne dystrybucje Linuksa wywodzące się z Debiana zapewniają narzędzie do plików, które poinformuje Cię, czy to, co próbujesz wyodrębnić, jest poprawnie nazwane. Czasami może się zdarzyć, że skompresowane archiwum miało nieprawidłową nazwę, a czasami z powodu błędu przeglądarki internetowej coś, co nie jest skompresowanym archiwum, może zostać tak nazwane. Chociaż Linux i wiele innych systemów operacyjnych opartych na Uniksie nie polega całkowicie na rozszerzeniach plików w takim stopniu, jak DOS i Windows, nadal używają ich do identyfikowania skompresowanych archiwów.



Jeśli narzędzie plików poinformuje Cię, że archiwum jest niewłaściwego typu, wystarczy zmienić nazwę na prawidłowe rozszerzenie, a następnie spróbować ponownie je rozpakować. Jeśli nie jest to archiwum, narzędzie plików będzie nadal działać, aby zidentyfikować prawidłowy typ. Najprawdopodobniej okaże się, że archiwum jest plikiem HTML omyłkowo zidentyfikowanym jako archiwum, ale i tak należy zachować ostrożność podczas wypakowywania archiwów pobranych z Internetu. Cyfrowi przestępcy czasami modyfikują pliki, aby wyglądały jak archiwa, aby przysporzyć użytkownikom problemów, dlatego należy wziąć sobie do serca radę narzędzia do plików.



Identyfikowanie typów plików niezależnie od rozszerzeń

Oczywiście zawsze zdecydowanie zalecamy przeskanowanie archiwów pod kątem złośliwego oprogramowania przed ich wyodrębnieniem, ale zakładając, że nic nie wyszło, możesz zobaczyć kilka typów komunikatów o błędach. Oprócz tych z xz lub gunzip, możesz również zobaczyć kilka komunikatów o błędach z programu tar. Jeśli otrzymujesz błędy czytające tar: Child zwrócił status 1 lub tar: Error nie da się naprawić: wychodzisz teraz, być może wyodrębniasz coś, czego nie powinno się rozpakowywać lub przynajmniej nie w taki sposób, jak nakazałeś tar Zrób tak. Być może próbowałeś unxz lub innych programów, które z biegiem czasu nadal generują te same błędy.



W wierszu poleceń wiersza polecenia, z którym pracowałeś, spróbuj utworzyć plik NazwaPliku.tar.xz, zastępując NazwaPliku.tar.xz nazwą pliku, z którym faktycznie pracujesz. Rozszerzeniem może być obecnie .tar.gz, .tar.bz2, .txz, .tgz lub kilka innych permutacji. Polecenie plik oblicza sumę pierwszych kilku bajtów w pliku, co czasami jest nazywane magiczną liczbą. Ten tak zwany test magiczny jest następnie oceniany na podstawie tabeli, która sama jest odwzorowana na wiele różnych typów plików. Jeśli plik stwierdzi, że jest to w rzeczywistości jakiś plik tekstowy, poinformuje o kodowaniu tekstu.

Na przykład, możesz file.tar.xz: dokument HTML, tekst UTF-8 Unicode, z bardzo długimi liniami, co wskazuje, że twoja przeglądarka faktycznie pobrała stronę internetową zamiast archiwum. Wadliwe polecenie wget również może to urzeczywistnić. Nie ma możliwości, aby jakakolwiek ekstrakcja wyciągnęła jakiekolwiek pliki z takiego pliku. Jeśli twierdzi, że jest to rzeczywiście prawidłowo sformatowany skompresowany plik .xz, możesz spróbować apt list xz-utils, aby upewnić się, że pakiety xz są zainstalowane, chociaż zarówno Ubuntu, jak i Debian generalnie wymagają ich instalacji do celów zarządzania pakietami . To samo dotyczy wszystkich różnych pochodnych Ubuntu, takich jak Lubuntu i Kubuntu.

Narzędzie plików czasami zwraca jedynie dane bez żadnych innych informacji. Chociaż może to być poprawne w przypadku niektórych plików utworzonych przez gry online lub edytory plików binarnych, nie jest to coś, co powinno być widoczne z archiwum i może wskazywać na uszkodzenie plików. Typ danych może również teoretycznie odpowiadać niektórym zastrzeżonym formatom używanym przez klasyczny Macintosh i późniejszy OS X, które i tak nie powinny być zwykle wyodrębniane pod Linuksem. Jeśli plik mówi, że skompresowane archiwum jest w rzeczywistości plikiem wykonywalnym systemu Windows lub MS-DOS, może to być bardzo dobrze złośliwe oprogramowanie zaprojektowane do atakowania komputerów z systemem Windows.



Możesz zobaczyć coś takiego jak nazwa_pliku.zip: archiwalne dane ZIP, przynajmniej w wersji 2.0, aby wyodrębnić jako typ zwracany. W takim przypadku można zmienić nazwę pliku z .tar.xz na .zip, aby prawidłowo go rozpakować. Możesz również zmienić jego nazwę na .tar.bz2 lub .tar.gz, w zależności od tego, jakie dane wyjściowe dało narzędzie do plików. Gdy to zrobisz, możesz je wyodrębnić w normalny sposób, nawet jeśli wcześniej nie było to możliwe. Jeśli masz plik ZIP lub coś podobnego, możesz użyć pliku -z theFileName.zip, aby zobaczyć nie tylko listę zawartości archiwum, ale także to, co według narzędzia do plików jest każdy typ.

Zwrócenie wartości pliku wykonywalnego Intel 80386 PE32 podczas uruchamiania narzędzia plikowego w archiwum z opcją -z może wskazywać, że w środku znajduje się legalny program Windows. Jeśli tak jest i upewniłeś się, że wykonałeś na nim wiele skanowań pod kątem złośliwego oprogramowania, po wyodrębnieniu możesz go uruchomić z warstwą zgodności Wine. Niektóre wiersze zwracane przez plik mogą teoretycznie być dość długie, więc możesz chcieć wcisnąć F11 w oknie terminala. Dzięki temu jest wystarczająco duży, aby pokryć cały pulpit, bez konieczności uciekania się do wirtualnej konsoli Linuksa.

Możesz także spróbować użyć przełącznika –apple, który zapewnia stare identyfikatory plików Apple, których możesz potrzebować, próbując udostępniać pliki użytkownikom innych systemów operacyjnych.

Należy pamiętać, że plik będzie identyfikował niektóre typy plików jako tekst ASCII lub Unicode, nawet jeśli użytkownik może nie sądzić, że zostaną sklasyfikowane jako takie. Plik .csv to specjalny plik arkusza kalkulacyjnego mapowany na określone znaki tekstowe. Polecenie pliku wywoła plik .csv utworzony na komputerze z systemem Windows w formacie ASCII z terminatorami CRLF, a jeśli utworzysz taki na własnej maszynie Ubuntu, może nazwać go tekstem Unicode. Nie jest to błąd wskazujący, że rozszerzenie pliku jest nieprawidłowe, a jedynie osobliwość sposobu, w jaki klasyfikuje pliki.

4 minuty czytania