Как да намерите компресирани типове архиви в Ubuntu Linux



Опитайте Нашия Инструмент За Премахване На Проблемите

Понякога, когато се опитате да извлечете .tar.gz, .tar.xz, .tar.bz2 или дори обикновен zip файл, ще откриете, че получавате грешка като xz: (stdin): Неразпознат файлов формат, който показва че операционната система не може да го извлече. Ubuntu и други дистрибуции на Linux, получени от Debian, предоставят файлова програма, която ще ви уведоми дали това, което се опитвате да извлечете, е правилно наименувано. Понякога е възможно компресиран архив да бъде неправилно наименован или понякога поради грешка от уеб браузър нещо, което не е компресиран архив, може да бъде наречено като такова. Въпреки че Linux и много други базирани на Unix операционни системи не разчитат напълно на файлови разширения до степента, в която го правят DOS и Windows, те все още ги използват за идентифициране на компресирани архиви.



Ако файловата програма ви каже, че архивът е от грешен тип, просто трябва да промените името на правилното разширение и след това да опитате да го извлечете отново. Ако това не е архив, тогава файловата програма ще продължи да работи за идентифициране на правилния тип. Повече от вероятно ще откриете, че архивът е HTML файл, погрешно идентифициран като архив, но така или иначе винаги трябва да се внимава, когато извличате архиви, които изтегляте от интернет. Цифровите престъпници понякога модифицират файловете, за да се показват като архиви, за да създадат проблеми на потребителите, така че съветите на помощната програма за файлове трябва да бъдат взети присърце.



Идентифициране на типовете файлове, независимо от разширенията

Естествено, винаги се препоръчва да извършите сканиране за злонамерен софтуер на архивите, преди да ги извлечете, но ако приемем, че нищо не се е появило, може да видите няколко вида съобщения за грешки. Освен тези от xz или gunzip, може да видите и няколко съобщения за грешка от програмата tar. Ако получавате грешки, които четат tar: Child върна състояние 1 или tar: Грешката не може да бъде възстановена: излиза сега, може би извличате нещо, което не трябва да се извлича или поне не по начина, по който сте заповядали на tar Направи го. Може да сте опитвали unxz или други програми, които продължават да получават същите грешки с течение на времето.



От подканата на CLI, с която сте работили, опитайте да файл theFileName.tar.xz, като замените FileFile.tar.xz с името на файла, с който всъщност работите. Понастоящем разширението може да бъде .tar.gz, .tar.bz2, .txz, .tgz или няколко други пермутации. Командата на файла изчислява сума от първите няколко байта във файла, която понякога се нарича магическо число. След това този така наречен магически тест се оценява спрямо таблица, която сама се съпоставя с много различни видове файлове. Ако файлът установи, че всъщност е някакъв текстов файл, той ще докладва в какво кодиране е текстът.

Например, можете да file.tar.xz: HTML документ, UTF-8 Unicode текст, с много дълги редове, което показва, че браузърът ви действително е изтеглил уеб страница вместо архив. Неправилна команда wget също може да превърне това в реалност. Няма начин при извличането да се извадят файлове от такъв файл. Ако твърди, че наистина е правилно форматиран .xz компресиран файл, тогава може да опитате apt list xz-utils, за да сте сигурни, че пакетите xz са инсталирани, въпреки че както Ubuntu, така и Debian обикновено изискват тяхната инсталация за целите на управлението на пакети . Същото важи и за всички различни производни на Ubuntu, като Lubuntu и Kubuntu.

Помощната програма за файлове понякога просто връща данни без друга информация. Въпреки че това може да е точно за някои файлове, създадени от онлайн игри или двоични редактори, това не е нещо, което трябва да видите от архив и може да показва повреда на файлове. Типът данни също може теоретично да съответства на някои от патентованите формати, които са използвали Classic Macintosh и по-късно OS X, които така или иначе не трябва да се извличат под Linux. Ако файлът ви каже, че компресираният архив всъщност е изпълним файл на Windows или MS-DOS, много добре може да е злонамерен софтуер, предназначен да атакува компютри с Windows.



Може да видите нещо като TheFileName.zip: ZIP архивни данни, поне V2.0 за извличане като тип на връщане. Можете да преименувате файла от .tar.xz на .zip, за да го извлечете правилно в този случай. Може да искате да го преименувате .tar.bz2 или .tar.gz в зависимост от изхода, който ви е дала помощната програма на файла. След като направите това, всъщност можете да ги извлечете както обикновено, дори и преди да не сте били в състояние. Ако имате ZIP файл или нещо подобно, тогава всъщност бихте могли да използвате файл -z theFileName.zip, за да видите не само списък на това, което е в архива, но и това, което полезната програма смята, че е всеки тип.

Връщането на стойност на изпълнимия файл Intel 80386 PE32 при стартиране на помощната програма за файл в архив с опцията -z може да означава, че вътре има законно програма на Windows. Ако случаят е такъв и сте се уверили, че сте изпълнили множество сканирания на злонамерен софтуер върху него, тогава може да можете да го стартирате със слоя за съвместимост с Wine, след като го извлечете. Някои от редовете, които файлът връща, могат да бъдат теоретично доста дълги, така че може да искате да натиснете F11 във вашия терминален прозорец. Това го прави достатъчно голям, за да покрие целия работен плот, без да се налага да прибягвате до виртуална конзола на Linux.

Може също да опитате да използвате превключвателя –apple, който ви дава старите идентификатори на файлове на Apple, които може да са ви необходими, ако се опитвате да споделяте файлове с потребители на други операционни системи.

Имайте предвид, че файлът ще идентифицира някои типове файлове като ASCII или като Unicode текст, дори когато потребителят може да не мисли, че ще бъде класифициран като такъв. .Csv файл е специален файл с електронни таблици, съпоставен с определени текстови знаци. Командата на файла ще извика .csv, направен на Windows машина ASCII с терминали CRLF, и ако направите такъв на собствената си машина на Ubuntu, тя може да го нарече Unicode текст. Това не е грешка, която показва, че разширението на файла е грешно, а просто особеност в начина, по който класифицира файловете.

4 минути четене