Så här hittar du komprimerade arkivtyper i Ubuntu Linux



Prova Vårt Instrument För Att Eliminera Problem

Ibland när du försöker extrahera en .tar.gz, .tar.xz, .tar.bz2 eller till och med en vanlig zip-fil, kommer du att upptäcka att du får ett fel som xz: (stdin): Filformat känns inte igen som indikerar att operativsystemet inte kan extrahera det. Ubuntu och andra Debian-härledda distributioner av Linux tillhandahåller ett filverktyg som informerar dig om vad du försöker extrahera är korrekt namngivet. Ibland är det möjligt att ett komprimerat arkiv fick ett felaktigt namn, eller ibland på grund av ett misstag av en webbläsare, något som inte är ett komprimerat arkiv kan namnges som sådant. Medan Linux och många andra Unix-baserade operativsystem inte helt är beroende av filtillägg i den grad som DOS och Windows gör, använder de fortfarande dem för att identifiera komprimerade arkiv.



Om filverktyget säger att arkivet är av fel typ behöver du helt enkelt ändra namnet till rätt tillägg och sedan försöka extrahera det igen. Om det inte är ett arkiv fungerar filverktyget fortfarande för att identifiera rätt typ. Mer än troligt kommer du att upptäcka att arkivet är en HTML-fil som felaktigt identifierats som ett arkiv, men försiktighet bör alltid användas när du extraherar arkiv som du laddar ner från Internet ändå. Digitala brottslingar ändrar ibland filer så att de visas som arkiv för att orsaka problem för användare, så filverktygets råd bör tas till hjärtat.



Identifiera filtyper oavsett tillägg

Naturligtvis rekommenderas det alltid att du utför en skanning av skadlig programvara i arkiv innan du extraherar dem, men förutsatt att inget dyker upp kan du se flera typer av felmeddelanden. Utöver de från xz eller gunzip kan du också se flera felmeddelanden från tarprogrammet. Om du får fel som läser tjära: Barn returnerade status 1 eller tjära: Fel kan inte återställas: avslutas nu, kanske du extraherar något som inte ska extraheras eller åtminstone inte på det sätt som du har beordrat tjära till göra det. Du kan ha provat unxz eller andra program, som fortsätter att ge dig samma fel över tiden.



Från CLI-prompten som du har arbetat med, försök fil theFileName.tar.xz och ersätt FileName.tar.xz med namnet på filen som du faktiskt arbetar med. Förlängningen kan för närvarande vara .tar.gz, .tar.bz2, .txz, .tgz eller flera andra permutationer. Filkommandot beräknar en summa av de första byten i filen, som ibland kallas ett magiskt nummer. Detta så kallade magiska test bedöms sedan mot en tabell som i sig kartläggs till många olika typer av filer. Om filen upptäcker att det faktiskt är en textfil av något slag rapporterar den vilken kodning texten är i.

Till exempel kan du file.tar.xz: HTML-dokument, UTF-8 Unicode-text, med mycket långa rader, vilket indikerar att din webbläsare faktiskt laddade ner en webbsida istället för ett arkiv. Ett felaktigt wget-kommando kan också göra detta till verklighet. Det finns inget sätt att extrahera några filer från en sådan fil. Om det hävdar att det verkligen är en korrekt formaterad .xz-komprimerad fil, kanske du vill försöka apt lista xz-utils för att se till att xz-paketen är installerade, även om både Ubuntu och Debian vanligtvis kräver sin installation ändå för ändamål för pakethantering . Detsamma gäller alla de olika derivaten av Ubuntu, som Lubuntu och Kubuntu.

Filverktyget returnerar ibland bara data utan någon annan information. Även om detta kan vara korrekt för vissa filer som skapats av onlinespel eller binära redigerare, är det inte något du bör se från ett arkiv och kan indikera filkorruption. Datatyp kan också teoretiskt motsvara några av de proprietära format som Classic Macintosh och senare OS X använde, som vanligtvis inte ska extraheras under Linux hur som helst. Om filen säger att ett komprimerat arkiv faktiskt är en Windows- eller MS-DOS-körbar, kan det mycket väl vara en skadlig kod som är utformad för att attackera Windows-datorer.



Du kanske ser något som theFileName.zip: ZIP-arkivdata, åtminstone V2.0 för att extrahera som en returtyp. Du kan byta namn på filen från .tar.xz till .zip för att extrahera den ordentligt i så fall. Du kanske också vill byta namn på den .tar.bz2 eller .tar.gz beroende på vilken utdata filverktyget gav dig. När du har gjort det här kan du faktiskt extrahera dem som vanligt, även om du inte kunde tidigare. Om du har en ZIP-fil eller något liknande kan du faktiskt använda filen -z theFileName.zip för att inte bara se en lista över vad som finns i arkivet utan också vad filverktyget tycker att varje typ är.

Att returnera ett värde av Intel 80386 PE32-körbar när du kör filverktyget i ett arkiv med -z-alternativet kan indikera att det finns legitimt ett Windows-program inuti. Om så är fallet, och du har se till att köra flera malware-genomsökningar på den, kan du kanske köra den med Vin-kompatibilitetslagret efter att ha extraherat det. Några av raderna som filen returnerar kan vara teoretiskt ganska långa, så du kanske vill trycka på F11 inuti terminalfönstret. Detta gör det tillräckligt stort för att täcka hela skrivbordet, utan att behöva tillgripa en virtuell Linux-konsol.

Du kanske också vill försöka använda –apple-omkopplaren, som ger dig de gamla Apple-filidentifierare som du kan behöva om du försöker dela filer med användare av andra operativsystem.

Tänk på att filen identifierar vissa typer av filer som antingen ASCII- eller Unicode-text även när en användare kanske inte tror att de skulle klassificeras som sådana. En .csv-fil är en speciell kalkylfil som är mappad till vissa texttecken. Filkommandot kommer att anropa en .csv gjord på en Windows-maskin ASCII med CRLF-terminatorer, och om du skapar en på din egen Ubuntu-maskin kan den kalla den Unicode-text. Detta är inte ett fel som indikerar att ett filtillägg är fel, utan bara en egenart av hur det klassificerar filer.

4 minuter läst