Score:10

ไม่สามารถคลายซิปไฟล์ขนาด 6 GB ได้: ออฟเซ็ต zipfile ไม่ถูกต้อง

ธง es

ฉันต้องแตกไฟล์ขนาดประมาณ 6 GB อย่างไรก็ตาม ฉันไม่สามารถทำได้ทั้งการคลิกขวา (มันแสดงข้อผิดพลาดว่า "empty archive") หรือในเทอร์มินัล โดยแสดงสิ่งต่อไปนี้สำหรับสิ่งหลัง:

$ ล
 fhs-3.0.pdf IDrive Tese.zip 'Transport Studies of Dual-Gated ABC and ABA Trilayer Graphene: Band Gap Opening and Band Structure Tuning in Very Large Perpendicular Electric Fields - Zou.pdf'

$ เปิดเครื่องรูด Tese.zip
เอกสารเก่า: Tese.zip
คำเตือน [Tese.zip]: 4294967296 ไบต์พิเศษที่จุดเริ่มต้นหรือภายใน zipfile
  (พยายามที่จะดำเนินการต่อไป)
ไฟล์ #1: offset zipfile ไม่ถูกต้อง (sig ส่วนหัวในเครื่อง): 4294967296
  (พยายามที่จะชดเชยอีกครั้ง)
 การแยก: Tese/.DS_Store          
ข้อผิดพลาด: หน่วยความจำไม่เพียงพอสำหรับการตรวจจับระเบิด

$ jar xvf Tese.zip
java.util.zip.ZipException: เฉพาะรายการ DEFLATED เท่านั้นที่สามารถมีคำอธิบาย EXT
    ที่ java.base/java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:313)
    ที่ java.base/java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:125)
    ที่ jdk.jartool/sun.tools.jar.Main.extract(Main.java:1361)
    ที่ jdk.jartool/sun.tools.jar.Main.run(Main.java:409)
    ที่ jdk.jartool/sun.tools.jar.Main.main(Main.java:1681)

ฉันไม่คิดว่าไฟล์เสียหายเพราะฉันคลายซิปไฟล์เดียวกันใน Mac เมื่อเร็วๆ นี้

พีซีของฉันมี RAM 15 GB และหน่วยความจำสลับ 2 GB

us flag
โปรดทราบว่า 4294967296 คือ 4 GiB ทุกประการ นั่นคือคำแนะนำอีกข้อสำหรับคำตอบของ Ferrybig
co flag
ไม่รับประกันคำตอบใหม่เพราะโดยพื้นฐานแล้วได้อธิบายไว้แล้วในสิ่งที่มีอยู่ แต่โดยกูเกิลข้อความแสดงข้อผิดพลาดที่คุณได้รับ ดูเหมือนว่าไฟล์ ZIP นี้ถูกสร้างขึ้นในโหมดสตรีมที่เรียกว่าการใช้งาน ZIP ทั้งหมด สนับสนุน. Java หนึ่งถูกกล่าวถึงโดยเฉพาะอย่างยิ่งว่าไม่มีการสนับสนุน ดังนั้น แม้ว่าตัวไฟล์เองอาจจะใช้ได้ แต่คุณก็ไม่สามารถจัดการกับมันด้วยเครื่องมือเหล่านั้นได้ ใช้เครื่องมืออื่นหรือแยกออกจากแพลตฟอร์มอื่นที่มีเครื่องมือเหล่านั้น
nobody avatar
gh flag
`unzip -l /path/to/your/Tese.zip` ไฟล์ zip อาจเสียหายได้
Rich Hard Fine Man avatar
es flag
@nobody ฉันไม่คิดว่าเป็นกรณีนี้เพราะฉันเพิ่งคลายซิปไฟล์เดียวกันบน mac อย่างไรก็ตาม ฉันทำสิ่งที่คุณเขียนและมันแสดงรายการไฟล์ใน zip
nobody avatar
gh flag
`เปิดเครื่องรูด -v | head -n1` โปรด [แก้ไข] คำถามของคุณ โปรด
Rich Hard Fine Man avatar
es flag
@ ไม่มีใครแก้ไขคำถาม ฉันสามารถอ่านไฟล์ได้ แต่ฉันต้องดาวน์โหลดไฟล์เหล่านั้น
Score:23
ธง in

Java รองรับเฉพาะไฟล์ในรูปแบบ ZIP ไม่ใช่ ZIP64 เช่นเดียวกับความเรียบง่าย ซิป สั่งการ

ไฟล์ Zip มีขนาดจำกัดที่ 4GB ลบ 1 ไบต์, Zip64 มีขนาดจำกัดที่ 16 EB ลบ 1 ไบต์ MacOS สร้างไฟล์ zip64 เมื่อขนาดใหญ่กว่าที่รองรับ เครื่องมือในสภาพแวดล้อมเดสก์ท็อปของคุณอาจมีข้อจำกัดเหมือนกัน

คุณต้องใช้เครื่องมือที่เหมาะสมในการอ่านไฟล์ zip64 บนบรรทัดคำสั่ง เหมือนกัน สามารถอ่านไฟล์เหล่านั้นได้ ในขณะที่ใช้ Java คุณสามารถใช้ Apache คอมมอนส์บีบอัด

Rich Hard Fine Man avatar
es flag
ขอบคุณสำหรับคำอธิบายของคุณ! อย่างไรก็ตาม เรียกใช้เหมือนกัน มันบอกว่าไม่พบคำสั่ง เมื่อดูลิงก์ Apache Commons Compress ที่คุณให้ไว้ https://commons.apache.org/proper/commons-compress/zip.html ฉันไม่เข้าใจวิธีใช้
in flag
Java เพิ่มการรองรับ zip64 ใน 1.7 เพื่อให้ JRE _sould_ ล่าสุดสามารถอ่านไฟล์ zip64 ได้ ฉันเคยใช้มันในอดีตกับขวดโหลที่มีมากกว่า 65,000 คลาส อย่างไรก็ตาม มีการถดถอยใน JRE บางตัว: https://bugs.openjdk.java.net/browse/JDK-8226530 ตรวจสอบเวอร์ชัน JRE ของคุณ
in flag
ฉันมั่นใจ 99% ว่าไม่มีพอร์ต "เหมือนกัน" สำหรับ Linux ดังนั้นจึงไม่มีทางที่จะใช้พอร์ตนี้บน Ubuntu ได้ (ยกเว้น Darling แต่นั่นก็ _way_ ซับซ้อนเกินกว่าจะพูดถึงในที่นี้) ตัวเลือกที่ดีที่สุดในประสบการณ์ของฉันสำหรับสิ่งประเภทนี้บน Linux คือ `unar` (เวอร์ชัน CLI ของ [The Unarchiver] (https://theunarchiver.com/)) ซึ่ง _is_ พร้อมใช้งานสำหรับ Linux (`sudo apt-get install unar` บนระบบ Ubuntu และ Debian)
Ismael Miguel avatar
om flag
และถ้าทั้งหมดล้มเหลว ให้ใช้ 7Zip กับ WineHQ ฉันใช้มันเพื่อแยกไฟล์ RAR แปลก ๆ บน Raspberry Pi ด้วย WineHQ กับ Box86 สำเร็จแล้ว
Score:14
ธง es

ทั้งเครื่องมือ เปิดเครื่องรูด และ ไหบอกคุณอย่างชัดเจนว่าไฟล์เสียหาย:

miguel@...$ เปิดเครื่องรูด Tese.zip
...
คำเตือน [Tese.zip]: 4294967296 ไบต์พิเศษที่จุดเริ่มต้นหรือภายใน zipfile
  (พยายามที่จะดำเนินการต่อไป)
ไฟล์ #1: offset zipfile ไม่ถูกต้อง (sig ส่วนหัวในเครื่อง): 4294967296
  (พยายามที่จะชดเชยอีกครั้ง)
มิเกล@...$ jar xvf Tese.zip
java.util.zip.ZipException: เฉพาะรายการ DEFLATED เท่านั้นที่สามารถมี EXT ได้ 
...

หากคุณคลายซิปบน Mac ได้ อาจเป็นไปได้ว่าซอฟต์แวร์ Mac บางตัวสร้างไฟล์ ZIP นั้น แต่อาจอยู่ในรูปแบบที่ไม่เป็นมาตรฐาน (เท่าที่มีการกำหนดมาตรฐานไฟล์ ZIP) ซึ่งมีเพียงซอฟต์แวร์ Mac บางตัวเท่านั้นที่สามารถเข้าใจได้

คุณสามารถลองไปที่ Mac เครื่องนั้นอีกครั้ง คลายซิปที่นั่น จากนั้นสร้างไฟล์ tar ที่บีบอัดจากนั้นนำไฟล์ tar นั้นไปยังพีซีของคุณแล้วคลายไฟล์

Joshua avatar
cz flag
ฉันได้ยื่นข้อบกพร่องสำหรับสิ่งที่ระเบิดเมื่อพบไฟล์ zip ขนาดใหญ่ ZIP64 มีอายุมากกว่าทศวรรษและเป็นส่วนขยายของรูปแบบที่ผู้สร้างรูปแบบนำเสนอในฐานะผู้สืบทอดทางกฎหมายโดยตรงของ PKZIP ดั้งเดิม นำไปใช้แล้วหรืออย่างน้อยก็เพิ่มข้อผิดพลาดของ "Zip64" ไม่รองรับ
Rich Hard Fine Man avatar
es flag
@HuHa ไหนบอกว่าไฟล์เสียหาย? อย่างไรก็ตาม ทำตามที่คุณแนะนำ เป็นความคิดที่ดี! ขอบคุณ!
HuHa avatar
es flag
ฉันแก้ไขคำตอบเพื่อเน้นส่วนที่ระบุว่า
barbecue avatar
us flag
อาจต้องการลองใช้ 7-zip ซึ่งรองรับ ZIP64 ตลอดไป
Matthias Winkelmann avatar
mx flag
วิธีที่คำตอบนี้กล่าวถึง Macs ทำให้ฉันนึกถึงเด็กผู้ชายอายุ 12 ขวบที่พูดถึงเด็กผู้หญิง
ilkkachu avatar
co flag
@MatthiasWinkelmann ส่วนไหน? สิ่งที่เกี่ยวกับ "ความเข้าใจซอฟต์แวร์ Mac เท่านั้น" หรือสิ่งที่เกี่ยวกับ "การไปที่ Mac การแตกไฟล์และสร้างไฟล์ tar ที่บีบอัด" ถ้าอย่างหลัง ฉันไม่แน่ใจ ฉันต้องการทราบข้อมูลเพิ่มเติมว่าเด็กอายุ 12 ปีในปัจจุบันคิดอย่างไรกับเด็กผู้หญิง...
Score:8
ธง ua

คุณสามารถทดสอบว่าสำเนาของคุณ เปิดเครื่องรูด รองรับส่วนขยาย zip64 (และไฟล์เก็บถาวร >4Gig) โดยเรียกใช้ เปิดเครื่องรูด -v และตรวจสอบการมีอยู่ของ ZIP64_SUPPORT. ด้านล่างนี้คือสิ่งที่ฉันได้รับจากการตั้งค่า Ubuntu โปรดทราบว่ามี ZIP64_SUPPORT

ถ้าคุณ เปิดเครื่องรูด ไม่แสดง ZIP64_SUPPORTคุณต้องมีเวอร์ชันที่ใหม่กว่า เปิดเครื่องรูด.

หรือหากคุณ เปิดเครื่องรูด มี ZIP64_SUPPORT ปัญหาเป็นอย่างอื่น คุณช่วยแชร์รายละเอียดเกี่ยวกับวิธีสร้างไฟล์ zip ได้ไหม ไฟล์ zip เปิดเผยต่อสาธารณะได้ทุกที่หรือไม่?

$ เปิดเครื่องรูด -v
$ เปิดเครื่องรูด -v
UnZip 6.00 วันที่ 20 เมษายน 2552 โดย Debian ต้นฉบับโดย Info-ZIP

ซอร์สและไฟล์ปฏิบัติการล่าสุดอยู่ที่ ftp://ftp.info-zip.org/pub/infozip/ ;
ดู ftp://ftp.info-zip.org/pub/infozip/UnZip.html สำหรับไซต์อื่นๆ

รวบรวมด้วย gcc 9.2.0 สำหรับ Unix (Linux ELF)

ตัวเลือกการคอมไพล์พิเศษ UnZip:
        ACORN_FTYPE_NFS
        COPYRIGHT_CLEAN (ไม่รองรับวิธีการลด PKZIP 0.9x)
        SET_DIR_ATTRIB
        SYMLINKS (รองรับลิงก์สัญลักษณ์ ถ้า RTL และระบบไฟล์อนุญาต)
        ประทับเวลา
        ยูนิกซ์แบ็คอัพ
        ใช้_EF_UT_TIME
        USE_UNSHRINK (รองรับ PKZIP/Zip 1.x unshrinking method)
        USE_DEFLATE64 (รองรับ PKZIP 4.x Deflate64(tm))
        UNICODE_SUPPORT [อักขระกว้าง, การเข้ารหัสอักขระ: UTF-8] (จัดการเส้นทาง UTF-8)
        LARGE_FILE_SUPPORT (รองรับไฟล์ขนาดใหญ่กว่า 2 GiB)
        ZIP64_SUPPORT (เก็บถาวรโดยใช้ Zip64 สำหรับไฟล์ขนาดใหญ่ที่รองรับ)
        USE_BZIP2 (PKZIP 4.6+ โดยใช้ bzip2 lib เวอร์ชัน 1.0.8, 13-ก.ค.-2562)
        VMS_TEXT_CONV
        WILD_STOP_AT_DIR
        [ถอดรหัส เวอร์ชัน 2.11 วันที่ 5 ม.ค. 2550]

ตัวเลือกสภาพแวดล้อม UnZip และ ZipInfo:
           UNZIP: [ไม่มี]
        UNZIPOPT: [ไม่มี]
         ZIPINFO: [ไม่มี]
      ZIPINFOOPT: [ไม่มี]
Rich Hard Fine Man avatar
es flag
ดูเหมือนว่าการเปิดเครื่องรูดของฉันจะมี ZIP64_SUPPORT ไฟล์ zip ถูกสร้างขึ้นโดยอัตโนมัติ โดยการดาวน์โหลดโฟลเดอร์ที่ฉันเคยอัปโหลดไปยังการสำรองข้อมูลออนไลน์ ดังนั้นจึงไม่เปิดเผยต่อสาธารณะ
pmqs avatar
ua flag
จากคำตอบอื่นๆ มีคำแนะนำว่าไฟล์ zip ถูกสร้างขึ้นในโหมดสตรีม ยูทิลิตี `unzip' มาตรฐานสามารถแยกไฟล์ zip ที่สตรีมส่วนใหญ่ได้โดยไม่มีปัญหาใดๆ เพื่อให้แน่ใจ คุณสามารถเรียกใช้ [zipdetails] (https://github.com/pmqs/zipdetails/blob/main/bin/zipdetails) กับไฟล์และโพสต์ผลลัพธ์ สิ่งนี้จะถ่ายโอนข้อมูลเมตาทั้งหมดจากไฟล์ zip เอาต์พุตค่อนข้างละเอียด หากคุณไม่ต้องการเปิดเผยชื่อไฟล์ในไฟล์ zip ให้ใช้ตัวเลือก `--redact` [การเปิดเผยอย่างเต็มรูปแบบ: ฉันเป็นผู้เขียน zipdetails]
Rich Hard Fine Man avatar
es flag
ขอบคุณสำหรับความช่วยเหลือของคุณ! เรียกใช้สิ่งที่คุณบอกฉันให้ผลตอบแทนดังต่อไปนี้ 000000000 หัวท้องถิ่น #1 04034B50 ไม่สามารถใช้ค่าที่ไม่ได้กำหนดเป็นการอ้างอิง ARRAY ที่ /usr/bin/zipdetails บรรทัด 757 ฉันรวมภาพเทอร์มินัล https://imgur.com/a/kPjQLra ฉันเดาว่าฉันไม่ได้ทำตามที่คุณบอกในทางที่ถูกต้อง ขออภัย นี่เป็นเรื่องใหม่มากสำหรับฉัน
pmqs avatar
ua flag
แม้ว่าคุณจะทำลายรหัสของฉัน แต่มันก็เป็นผลลัพธ์ที่น่าสนใจจริงๆ หมายความว่าบริการสำรองข้อมูลที่คุณใช้สร้างไฟล์ zip ที่ไม่ได้มาตรฐาน คุณช่วยบอกเราได้ไหมว่าบริการสำรองข้อมูลที่คุณใช้อยู่ นั่นจะช่วยให้ฉันเห็นว่าฉันสามารถทำซ้ำปัญหาของคุณได้หรือไม่ สิ่งสุดท้ายที่จะลอง เรียกใช้ `zipdetails - - scan Teste.zip` ซึ่งอาจใช้เวลานานในการเรียกใช้ ดังนั้นคุณต้องอดทน
pmqs avatar
ua flag
@RichHardFineMan หมายเลขบรรทัดที่อ้างอิงในข้อความแสดงข้อผิดพลาดที่คุณระบุคือ 757 มาจากสคริปต์ "zipdetails" เวอร์ชันเก่าที่มาพร้อมกับ Ubuntu เวอร์ชันบน GitHub มีการแก้ไขมากมายเพื่อให้ทำงานกับไฟล์ Zip ที่ผิดปกติได้มากขึ้น ในไดเร็กทอรีเดียวกับที่เก็บไฟล์ zip ให้เรียกใช้ `wget https://raw.githubusercontent.com/pmqs/zipdetails/main/bin/zipdetails` เพื่อรับสำเนาล่าสุดของ `zipdetails` จากนั้นเรียกใช้ `perl ./zipdetails Teste.zip` หากยังคงแสดงข้อความแสดงข้อผิดพลาด โปรดโพสต์ข้อความที่นี่และลองเรียกใช้ `perl ./zipdetails --scan Teste.zip`

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา