Hvad er CPGZ-filformatet?
Filendelsen .cpgz markerer et komprimeret CPIO (Copy In, Copy Out) filarkiv, der bruger Gzip-komprimeringsalgoritmen som sit ydre lag. CPGZ-formatet pålægger ingen restriktioner på typen af gemte data - det kan indeholde applikationsfiler, installationsprogrammer, dokumenter eller fotos. Oprettelse af en .cpgz involverer to sekventielle trin:
- Oprettelse af et ukomprimeret CPIO-arkiv - producerer en enkelt strøm af filer og mapper, hver forudgået af en header-sektion, der indeholder fil-metadata.
- Komprimering ved hjælp af GZIP - en lossless metode baseret på DEFLATE-algoritmen, som reducerer arkivets samlede størrelse.
Da Gzip-komprimerede filer normalt bærer suffikset .gz, følger den kombinerede .cpgz-endelse den samme todelte navngivningskonvention som .tgz (et Gzip-komprimeret TAR-arkiv). En .cpgz-fil begynder med de standard gzip magic bytes 1F 8B 08 ved offset 0; efter dekomprimering er den indre strøm et CPIO-arkiv, oftest i SVR4 newc-format (magic 070701).
Formatet er tættest forbundet med macOS, hvor kommandolinjeværktøjet ditto og Arkivværktøj begge kan oprette og udpakke .cpgz-filer. På Linux og Unix er den tilsvarende pipeline gunzip pipet ind i cpio, eller et enkelt kald ved hjælp af bsdtar.
Et almindeligt scenarie i den virkelige verden er, at en .cpgz dukker uventet op som en fejl-artefakt: når macOS Arkivværktøj ikke fuldt ud kan udpakke en downloadet .zip - fordi filen er afkortet, beskadiget eller struktureret på en måde, som værktøjet fejlhåndterer - kan det genkomprimere det delvise resultat til en .cpgz. Gentagne dobbeltklik på filen skaber derefter en løkke: hvert forsøg skifter mellem en .zip og en .cpgz uden nogensinde at udpakke indholdet. Løsningen er at genanskaffe det originale arkiv eller bruge et tredjepartsværktøj som The Unarchiver eller Keka.
CPIO stammer helt tilbage fra 1970'ernes Unix-æra, hvor magnetbånd var det primære arkiveringsmedium. Forskellige CPIO-varianter gemmer fil-headere i binært eller ASCII-tekstformat, og maksimale størrelser pr. fil rækker fra 2 GB i ældre binære varianter til 4 GB i SVR4 newc. Parringen .cpgz er ikke en formel standard, men en praktisk konvention populariseret af macOS-værktøjer.
Sikkerhed og tryghed
RISIKO: LOWFormatet i sig selv er sikkert - det er blot komprimerede arkivdata, der ikke kan køre af sig selv. Normal forsigtighed ved arkiver gælder: en .cpgz fra en upålidelig kilde kan indeholde eksekverbare filer eller scripts, der først afsløres efter udpakning, så scan indholdet før kørsel, og udpak upålidelige arkiver i en tom mappe (cpio kan gemme absolutte stier eller «../»-stier, hvilket er en risiko for path-traversal). Det mest almindelige «problem» med .cpgz er ikke malware, men beskadigelse: en uventet .cpgz fra en download betyder normalt, at .zip-filen ankom defekt - download igen frem for at kæmpe med den.
Formatdetaljer
kort fortaltProgrammer der åbner CPGZ-filer
cpio -idmv). Præinstalleret på de fleste systemer. Tekniske detaljer
dyb specifikation| MIME-type | application/gzip (primær); også application/x-cpio og application/octet-stream |
| Magic bytes | 1F 8B 08 ved offset 0 (ydre gzip-lag); indre cpio-strøm starter med 070701 (SVR4 newc) efter dekomprimering |
| Ydre komprimering | DEFLATE-algoritme pakket i gzip-framing (RFC 1952) |
| Indre arkivformat | CPIO - oftest SVR4 newc (magic 070701); også portabel ASCII (magic 070707) |
| Filkodning | Binær ydre strøm; cpio newc-headere bruger ASCII-hex-felter med fast bredde, hvilket gør dem uafhængige af endianness |
| Integritetskontrol | gzip-footer gemmer CRC-32 og 4-byte ISIZE (ukomprimeret størrelse mod 2³²); cpio 'crc'-variant tilføjer CRC-32-tjeksummer pr. fil |
| Kryptering | Ingen - hverken gzip eller cpio tilbyder et indbygget krypteringslag; filer skal krypteres separat, hvis fortrolighed er påkrævet |
| Maks. filstørrelse pr. post | ~4 GB i SVR4 newc (32-bit filstørrelsesfelt); ældre binært cpio-format begrænset til ~2 GB |
| Arkivstruktur | Lineær sekventiel strøm uden central mappe; alle poster skal læses fra starten af strømmen |
| cpio-header (newc) | 110-byte ASCII-header med fast længde pr. post, efterfulgt af det nul-terminerede filnavn og fildata udfyldt til 4-byte grænser |
| Associerede platforme | macOS (primær); Linux; Unix |
| Primært værktøj til oprettelse (macOS) | ditto kommandolinjeværktøj; Arkivværktøj producerer også .cpgz som en fejl-artefakt, når en .zip ikke kan udpakkes fuldt ud |
| Maksimalt antal poster | Ingen fast grænse; cpio streamer poster sekventielt uden et loft for antal poster i en central mappe |
| Streaming-udpakning | Ja - sekventielt design muliggør pipe-baseret udpakning (f.eks. gunzip -c file.cpgz | cpio -idmv) uden at indlæse en mappe i hukommelsen |
| Udgivet | cpio: 1970s Unix; gzip: 1992. The .cpgz pairing is a macOS convention. |
| Seneste version | N/A (relies on stable gzip RFC 1952 + POSIX cpio formats) |
| Åben standard | Ja · royaltyfri |
| Specifikation | www.rfc-editor.org |
CPGZ-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om CPGZ-filer.
Ofte stillede spørgsmål
Hvad er en CPGZ-fil?
Hvorfor blev min ZIP til en CPGZ på min Mac?
Min .zip og .cpgz bliver ved med at skifte frem og tilbage - hvordan løser jeg det?
Hvordan åbner jeg en CPGZ-fil?
ditto -x -k file.cpgz dest. På Linux: gunzip -c file.cpgz | cpio -idv. På Windows skal du bruge gratis 7-Zip eller PeaZip.