ZPAQ

from Wikipedia, the free encyclopedia
ZPAQ
Basic data

developer Matt Mahoney
Current  version 7.15 (August 17, 2016)
operating system Linux , Windows
programming language C ++
category Data compression , archiving
License GNU GPL , version 3
German speaking No
mattmahoney.net (English)

ZPAQ is a computer program for file archiving and data compression for Windows and Linux . It is licensed under the GPL . The user controls the program via the command line and can combine files into an archive. Newer files can be attached to an existing archive. The file format does not allow deletion. ZPAQ identifies identical files and in this case only saves the oldest version.

ZPAQ is a container format that stores data compressed by PAQ . No compression is used as the lowest compression level and LZ77 as the second lowest . The higher levels use PAQ: Context-dependent methods - for example for the best possible compression of EXE and DLL files that contain program code - compress the data very heavily. Modifications of PAQ are winners of the Hutter Prize .

To ensure backward compatibility between different versions, the decompression algorithm is saved in the archive.

history

According to the developer, the current further development (status: 2015) has stalled because Dell does not provide any further financial means for the maintenance of the software. The consequence of this is that there will be no new releases or updates in the near future, unless serious errors have to be found and corrected (as of February 1, 2016).

Version 7.06 was released on March 16, 2016, which fixes some bugs of the previous version 7.05. The executable file zpaq.exe can be run under Windows Vista (32- and 64-bit) and later (Windows 7, 8, 8.1, 10). zpaq64.exe only runs under Windows Vista (64-bit) and later. A separate executable file (zpaqxp.exe) is now available for Windows XP. This can be run from Windows XP (32-bit), but no alternative data streams are updated. The 32-bit versions can only use 2 GB of RAM and the number of CPU cores or threads used is limited to two by default. By specifying a corresponding parameter (-threads N ... N is the number of threads), however, the work can be distributed over several CPU cores.

Version 7.07 (March 18, 2016) fixes a bug that occurred when creating and updating encrypted multi-part archives.

In version 7.08 (March 30, 2016) the source code was further simplified and bugs fixed. Compiling with the Intel C / C ++ Compiler and the Visual C ++ 2015 Compiler should now also be possible without error messages. The executable files on the manufacturer's side are still compiled with GCC . The creation of multi-part archives is (currently) no longer supported. The separate executable file for Windows XP is no longer available or required.

Version 7.09 (April 5, 2016) fixes bugs.

In version 7.10 (April 8, 2016) the option for multi-part archives was submitted again.

In version 7.11 (April 13, 2016) the options -repack and -encrypt were implemented.

In version 7.12 (April 26, 2016) the extraction speed has been increased. The -encrypt option (in combination with -repack) has been removed.

In version 7.13 (May 4, 2016) support for sparse files was added.

Version 7.14 (July 19, 2016): Faster backup to network drives.

A full version overview is available at mattmahoney.net.

Working method and application

Files that are added to the archive are split up into fragments and saved together with their SHA1 checksum. Newer files are also split up and in the case of identical checksums only the fragments that are not yet available are added to the archive. If no fragments of a file to be added are already known, the entire file is compressed and added.

Some application examples for a data backup (backup)

zpaq Backup.zpaq <Pfad zum Verzeichnis, das archiviert werden soll> -method 1
If this command is repeated, only the files that have changed since the last data backup are added to the archive. -method 1is the default value. 0 does not result in compression and 5 is very slow but very good data compression.

zpaq extract Backup.zpaq unpacks the last backup status in the current directory.

zpaq list Backup.zpaq -all lists all backed up files with the (usually) four-digit version number.

zpaq extract Backup.zpaq -until 2unpacks the second backup status. The first data backup has the version number 1.

zpaq extract Backup.zpaq -only "*Lebenslauf*" -all unpacks everything that contains the word “CV” in the directory or file name, across all versions.

Individual evidence

  1. ZPAQ Updates, December 4, 2015 on the website encode.ru (English)
  2. ZPAQ Updates, February 1, 2016 on the website encode.ru (English)
  3. ZPAQ Updates, Version v7.06, March 16, 2016 on the website encode.ru (English)
  4. ZPAQ Updates, Version v7.07, March 18, 2016 on the website encode.ru (English)
  5. ZPAQ Updates, Version v7.08, March 30, 2016 on the website encode.ru (English)
  6. ZPAQ Updates, Version v7.09, April 5, 2016 on the website encode.ru (English)
  7. ZPAQ Updates, Version v7.10, April 8, 2016 on the website encode.ru (English)
  8. http://mattmahoney.net/dc/zpaq.html#history