I'm doing some file recovery on an old hard drive, using the most recent stable PhotoRec. After finding a lot of files that I wanted to keep, I decided to make some of them (meaning over 700) easier to manage by putting them in a .tar.xz archive. I immediately re-deleted the files, because achiving them normally means that they're safe. When the time came to copy them to my USB flash drive for transport to my normal system, a strange error was reported:
Error splicing file: Input/output error
A partial copy of 31.5 MB was made, versus 36.6 MB for the original. I tried to investigate with the tools available to me (the drive has Mageia 1 with GNOME installed).
Trying to open either version of the archive with File-Roller (v2.32.2) returns a message box with the error below.
xz: (stdin): Unexpected end of input /bin/gtar: Unexpected EOF in archive /bin/gtar: Error is not recoverable: exiting now
- Unless I cancel the archive's loading in the middle. Then it displays a list of about 778 files as if nothing is wrong.
File-Roller is the program that created the archive, through Nautilus' context menu option. Other archives I created in the same way have no trouble extracting. There may have been heavy I/O going on at the time (but not on that partition).
If I try to use
xz -d files1.tar.xz (v5.0.2, libLZMA 5.0.2) to extract the file, it works for a little while and says
Read error: Input/output error.
The best results I've had were with
tar -xf files1.tar.xz, (v1.26) which smoothly extracted 790 files before returning this error:
xz: (stdin): Read error: Input/output error tar: Unexpected EOF in archive tar: Unexpected EOF in archive tar: Error is not recoverable: exiting now
I put these files in a .tar.bz2 archive, because I'm currently unsure of the XZ format. Now I just have a nagging feeling that the files that didn't extract were the most important ones. They're still not worth digging through >850000 files all over again though.