Lỗi khi giải nén tập tin: Có thể cần PK compat. v6.1 (có thể làm v4.6)


24

Tôi đã nhận được một tập tin zip từ một ngân hàng. Tôi nhận được lỗi sau khi tôi cố gắng giải nén nó.

unzip filename.zip 
Archive:  filename.zip
   skipping: SOME_STUFF.pdf  need PK compat. v6.1 (can do v4.6)

Các filelệnh trả về

Zip archive data

cho tập tin này.

Có một số lượng lớn các luồng chứa thông báo lỗi này, nhưng các đề xuất cụ thể duy nhất họ có là sử dụng 7z xhoặc 7za xtừ p7zip-fullgói. Những lỗi này không thành công:

Unsupported Method

Sub items Errors: 1

Tôi đang sử dụng Debian wheezy amd64. Tôi không thấy các bản cập nhật quan trọng của các gói unziphoặc 7zathử nghiệm mặc dù không ổn định.

Tôi đánh giá cao đề xuất về cách giải nén tệp này và nói chung, thông báo lỗi PK compat. v6.1 (can do v4.6)có ý nghĩa gì? Đối với một tiện ích được sử dụng rộng rãi, zipkhông có nhiều tài liệu có sẵn về nó. README trong các nguồn Debian trỏ đến http://www.info-zip.org/pub/infozip/ liệt kê một bản phát hành ngày 29 tháng 4 năm 2009 cho UnZip 6.0.

Đây là đầu ra phiên bản cho unziphệ nhị phân trên hệ thống của tôi.

unzip -v
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.

Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip/ ;
see ftp://ftp.info-zip.org/pub/infozip/UnZip.html for other sites.

Compiled with gcc 4.7.2 for Unix (Linux ELF) on Feb  3 2015.

UnZip special compilation options:
        ACORN_FTYPE_NFS
        COPYRIGHT_CLEAN (PKZIP 0.9x unreducing method not supported)
        SET_DIR_ATTRIB
        SYMLINKS (symbolic links supported, if RTL and file system permit)
        TIMESTAMP
        UNIXBACKUP
        USE_EF_UT_TIME
        USE_UNSHRINK (PKZIP/Zip 1.x unshrinking method supported)
        USE_DEFLATE64 (PKZIP 4.x Deflate64(tm) supported)
        UNICODE_SUPPORT [wide-chars, char coding: UTF-8] (handle UTF-8 paths)
        LARGE_FILE_SUPPORT (large files over 2 GiB supported)
        ZIP64_SUPPORT (archives using Zip64 for large files supported)
        USE_BZIP2 (PKZIP 4.6+, using bzip2 lib version 1.0.6, 6-Sept-2010)
        VMS_TEXT_CONV
        WILD_STOP_AT_DIR
        [decryption, version 2.11 of 05 Jan 2007]

UnZip and ZipInfo environment options:
           UNZIP:  [none]
        UNZIPOPT:  [none]
         ZIPINFO:  [none]
      ZIPINFOOPT:  [none]

dpkg báo cáo phiên bản gói là 6.0-8+deb7u2.

Đầu ra của zipinfolà:

zipinfo filename.zip 
Archive:  filename.zip
Zip file size: 6880 bytes, number of entries: 1
-rw-a--     6.4 fat    10132 Bx defN 15-Feb-06 16:24 SOME_STUFF.pdf
1 file, 10132 bytes uncompressed, 6568 bytes compressed:  35.2%

Tôi đã xem qua báo cáo lỗi này đề nghị cài đặt p7zip-rartrên Debian trong trường hợp bạn gặp 7zlỗi mà bạn gặp phải.
Anthon

Câu trả lời:


30

Nguồn gốc của lỗi

PK trong lỗi là viết tắt của Phil Katz, người phát minh ra định dạng PKZIP ban đầu. Các ziptiện ích đã không bắt kịp với khả năng của các pkzipphần mềm thương mại có nguồn gốc, đặc biệt là việc lưu trữ chứng chỉ mà ngân hàng muốn bao gồm trong ZIP file của họ.

Wikipedia cung cấp một cái nhìn tổng quan về sự phát triển của định dạng. Nhưng các ziptiện ích Unix không thực hiện các thay đổi sau năm 2002.

Bạn có thể phải mua phiên bản thương mại PKware cho Linux để giải nén điều này.

Trang man cho zipcó những điều sau đây để nói về chính nó và unzip:

   A  companion  program  (unzip(1))  unpacks  zip  archives.  The zip and
   unzip(1) programs can work with archives produced by PKZIP  (supporting
   most PKZIP features up to PKZIP version 4.6), and PKZIP and PKUNZIP can
   work with archives produced  by  zip  (with  some  exceptions,  notably
   streamed  archives,  but  recent  changes  in the zip file standard may
   facilitate better compatibility).  zip version 3.0 is  compatible  with
   PKZIP  2.04  and  also supports the Zip64 extensions of PKZIP 4.5 which
   allow archives as well as files to exceed the previous 2 GB limit (4 GB
   in  some  cases).  zip also now supports bzip2 compression if the bzip2
   library is included when zip is compiled.  Note that PKUNZIP 1.10  can‐
   not extract files produced by PKZIP 2.04 or zip 3.0. You must use PKUN‐
   ZIP 2.04g or unzip 5.0p1 (or later versions) to extract them.

Dung dịch

Mặc dù zipkhông thể thực hiện công việc nhưng có những công cụ khác có thể. Bạn đề cập đến tiện ích 7zip và phiên bản dòng lệnh 7-Zip của Linux / Unix , trong số những người khác có thể đọc và viết ZIPđịnh dạng. Nó tuyên bố rằng nếu 7-Zip không thể đọc tệp zip, thì trong 99% trường hợp tệp bị hỏng . Các tiện ích 7-Zip sẽ có thể đọc tệp của bạn, vì vậy nó bị hỏng hoặc nếu không thì của bạn nằm trong 1% (mà tôi không tìm thấy thêm thông tin chi tiết nào).

7-zip trên Linux có nhiều tệp thực thi khác nhau với sự hỗ trợ định dạng khác nhau. Cơ bản nhất ( 7zr), không hỗ trợ ZIP, bạn nên sử dụng ít nhất 7zahoặc toàn bộ 7z:

7za x filename.zip

Gói phiên bản Linux khác nhau 7za/ 7ztrong các gói có tên khác nhau.

Dễ dàng nhất (như thường xuyên) là cài đặt trên Solus:

sudo eopkg install p7zip

Trên phiên bản Linux có nguồn gốc từ Debian, gói p7zipchỉ cài đặt cơ sở 7zkhông hỗ trợ ZIP. Việc chia tách này đã gây ra một số vấn đề và việc cài đặt p7zip-fullkhông thực hiện được như đã nói, đôi khi bạn cũng phải cài đặtp7zip-rar Trên hệ thống Linux Mint của tôi, tôi cần phải làm:

sudo apt-get install p7zip-full p7zip-rar

Trên RedHat / CentOS, bạn cần bật kho lưu trữ EPEL . Ví dụ: trên CentOS 7 tôi cần phải làm:

sudo yum install epel-release
sudo yum --enablerepo=epel install p7zip

Cảm ơn, Anthon, đó là rất nhiều thông tin. Bạn có biết tại sao các ziptiện ích không theo kịp? Về một lưu ý liên quan, có bất kỳ phương thức truyền mật khẩu nào được bảo vệ mà tôi có thể nói với ngân hàng của mình để sử dụng có thể có tác dụng trên hệ thống dựa trên Linux mà không cần sử dụng phần mềm độc quyền không?
Faheem Mitha

@FaheemMitha Tôi đoán là pkware muốn kiếm thêm tiền và không tiết lộ chi tiết về các định dạng mới hơn cũng như không xuất bản mã dưới dạng nguồn mở. Tôi không nghĩ rằng ngân hàng của bạn sẽ thay đổi chỉ cho bạn, tôi đã gặp vấn đề trong vài năm với các tệp PDF không phù hợp mà không thể đọc được và cuối cùng tôi đã kích hoạt VM WinXP của mình để làm điều đó.
Anthon 7/2/2015

Tôi không mong đợi ngân hàng của tôi làm bất cứ điều gì chỉ cho tôi. :-) Nhưng tôi nghĩ nếu có một phương pháp thay thế nào đó, họ có thể cân nhắc sử dụng nó. Trong trường hợp này, tệp nén này không được gửi cho tôi thông qua một số phương thức tự động. Nó được gửi cho tôi bởi một người theo yêu cầu của tôi.
Faheem Mitha

Định dạng ZIP như được chỉ định trong tệp "APPNOTES" được PKWare cung cấp tài liệu một cách công khai. @Anthon
eckes 7/215

9

Tôi chạy vào cùng một vấn đề ngoại trừ với PK compat. v6.3. Giải quyết nó bằng cách trích xuất kho lưu trữ với phiên bản POSIX 7-zip.

Gói Arch Linux: p7zip .


1
Sử dụng 7zip là lựa chọn tốt nhất cho tôi. tức là7z x archive.zip
Matt H

3

Tôi đã chạy vào cùng một mã lỗi ( need PK compat. v6.1) trong khi cố gắng giải nén tệp zip bằng trình giải nén MacOS mặc định.

Tôi đã thử p7zip và tìm hiểu sâu về nó trước khi kiểm tra App Store.

Trong App Store, tôi đã tìm thấy một ứng dụng unzipper miễn phí có tên là "Unarchiver" (kết quả tìm kiếm đầu tiên kể từ khi viết bài này) và nó đã giải nén thành công tệp mà không gặp sự cố nào.

Đối với người dùng Mac, tôi khuyên bạn nên sử dụng chương trình "Unarchiver" miễn phí đó.


Điều đó sẽ không giúp OP, ở đây, người đang sử dụng Debian ...
Jeff Schaller

1
@JeffSchaller OP đã chuyển từ lâu. :-) Và tôi ổn với câu trả lời của Mac, ngay cả khi nó không trả lời trực tiếp câu hỏi. Có lẽ nó sẽ hữu ích cho ai đó.
Faheem Mitha

Tôi nghĩ rằng nó sẽ có ích hơn (và được tìm thấy) trên Câu hỏi Mac (Hỏi khác nhau?)
Jeff Schaller

2
@JeffSchaller Chà, nếu có ai đó thông báo lỗi, họ có thể sẽ vấp phải câu hỏi này.
Faheem Mitha

Tôi đồng ý, chúng ta nên nhớ rằng SO cũng hữu ích cho các câu hỏi tương tự như câu hỏi ban đầu, nó thực sự sẽ tệ hơn nếu có một câu hỏi như thế này cho mỗi hệ điều hành khác nhau ...
Francesco Marchetti-Stasi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.