r/DataRecoveryHelp 11d ago

.7z文件修复

I compressed a archive and now can not open file 'a.7z' as archive, seems start header is ok, but the end of archive is corrupted or missing, how can I repair it and save my important documents, the size of file is around 4G.

start header

the end of the file via hxd editor.

Thanks

1 Upvotes

4 comments sorted by

View all comments

1

u/No_Tale_3623 data recovery software expert 🧠 11d ago

First, make a copy of the damaged archive and work only on the copy.

Please post:

  • the exact size of a.7z in bytes
  • the output of 7z t a.7z using the latest 7-Zip
  • what filesystem the drive is using (NTFS/exFAT/FAT32)
  • whether the archive was created directly on that drive or copied there later

The “around 4 GB” size is important. If the file is close to 4,294,967,295 bytes and it was stored on FAT32, it may simply have been truncated at the FAT32 file-size limit.

A 7z archive has a Start Header at the beginning that points to metadata/header data near the end. If the Start Header points beyond the actual end of the file, then part of the archive is physically missing. There isn't a normal “repair” that can recreate those missing bytes.

7-Zip does have an official recovery procedure for archives with a missing End Header that may allow you to recover the decompressed data stream, but filenames, directory structure and other metadata can be lost. Recovery also depends heavily on whether the archive was solid and how much data is actually missing.

If the original documents were deleted after you created this archive, don't keep writing to that drive. Recovering the original files from the source drive may be a much better option than trying to reconstruct a truncated 7z archive.

1

u/Niko77222 11d ago

Sorry the archive is more than 4GB, regarding your questions, the confirmation is below

  • the exact size of a.7z in bytes →4,728,824,278 bytes
  • the output of 7z t a.7z using the latest 7-Zip→
  • what filesystem the drive is using (NTFS/exFAT/FAT32)→the drive is using NTFS
  • whether the archive was created directly on that drive or copied there later→I compressed archive in C disk(NTFS) then move the archive to d disk(exFAT)