Skip to content

Windows 32/64 binary

Pre-release
Pre-release
Compare
Choose a tag to compare
@fcorbelli fcorbelli released this 15 Nov 17:26
· 271 commits to main since this release
a268fe4

First public release with (a bit) for the cloudpaq

The next "big thing" is zpaq-over-ssh, or (better), zpaqfranz-over-TCP-socket
Some more

zpaqfranz can send an (encrypted) copy of the archive via "internet" (TCP) to a remote server, running the new (soon-to-be-released) cloudpaq

The server will make a (lot) of checks before update the local version of the archive
Of course all this "mess" is for a ransomware-resilient archiver

It is rather hard to implement, currently it works with an entire file, but the sending of subsequent updates needs to be implemented

There is definitely an overkill in the security methods used - in practice I expect to use it over an ssh tunnel, so authentication and encryption issues are actually redundant - but after all it is a hobby.

However, in my spare time maybe I will complete it :)

News against 55.x

-flagbig

Shows a BIG ASCII-text in the result. Useful for crontabbed-e-mail-sended results

C:\zpaqfranz>zpaqfranz t z:\1.zpaq -big
zpaqfranz v56.1j-JIT-L (HW BLAKE3), SFX64 v55.1, (15 Nov 2022)
franz:-big
Archive seems encrypted (or corrupted)
Enter password :***
z:/1.zpaq: zpaqfranz error:password incorrect
23013: zpaqfranz error: password incorrect

1.453 seconds (000:00:01) (with errors)


####### ######  ######  ####### ######  ###
#       #     # #     # #     # #     # ###
#       #     # #     # #     # #     # ###
#####   ######  ######  #     # ######   #
#       #   #   #   #   #     # #   #
#       #    #  #    #  #     # #    #  ###
####### #     # #     # ####### #     # ###

-checktxt

After an "add", create a file with a full xxh3 hashing of the archive (note: without parameter take the same name of the archive, with .txt)

zpaqfranz a z:\knb.zpaq c:\nz\ -checktxt z:\pippo.txt
(...)
zpaqfranz v56.1j-JIT-L (HW BLAKE3), SFX64 v55.1, (15 Nov 2022)
Creating XXH3 check txt on z:/pippo.txt

44202: final XXH3: hash 6C68C17F625AF11AA734E8D122241789

Now you can send the .txt file (with rsync, in future with cloudpaq) on a remote server, then do a quick check

zpaqfranz sum z:\knb.zpaq -checktxt z:\pippo.txt -big
C:\zpaqfranz>zpaqfranz sum z:\knb.zpaq -checktxt z:\pippo.txt -big
zpaqfranz v56.1j-JIT-L (HW BLAKE3), SFX64 v55.1, (15 Nov 2022)
franz:-big
franz:checktxt   <<z:/pippo.txt>>
Checking XXH3 (because of -checktxt) on z:/pippo.txt
Hash from checktxt |6C68C17F625AF11AA734E8D122241789|

0.063 seconds (00:00:00) (all OK)


####### #    #
#     # #   #
#     # #  #
#     # ###
#     # #  #
#     # #   #
####### #    #

Now - on the remote server - something like

/usr/local/bin/zpaqfranz dir "/home/pizza/copie/" -noeta >/tmp/checkpizza.txt
/usr/local/bin/zpaqfranz sum /home/pizza/copie/$1 -big -noeta -checktxt /home/pizza/
copie/$2 >>/tmp/checkpizza.txt

if [ -f /tmp/checkpizza.txt ]; then
    /usr/local/bin/smtp-cli --missing-modules-ok  (...) -cc $3 -subject  "CHECK-pizza-backup" -body-plain=/tmp/checkpizza.txt
fi

Short version: quickly compare a local archive with a rsync-ed remote one, tanking the free space (of the remote server) too, by e-mail

-stdin

During add it is now possible to take the stdin flux. Typically to get mysqldump's backup or a full image of a live Windows (!) via dd

zpaqfranz a z:\1.zpaq mydump.sql -stdin

Or...

c:\nz\dd if="\\\\.\\c:" bs=1048576 count=100000000000 |c:\zpaqfranz\zpaqfranz a j:\image\prova cimage.img -stdin

-windate (on Win)

Add/Restore (if any) file's creation date. Please note: this will force xxhash64 hash [the default]

C:\zpaqfranz>zpaqfranz a z:\2 *.cpp -windate
zpaqfranz v56.1j-JIT-L (HW BLAKE3), SFX64 v55.1, (15 Nov 2022)
franz:winhash64 (-windate)
Creating z:/2.zpaq at offset 0 + 0
(...)
0.250 seconds (00:00:00) (all OK)

C:\zpaqfranz>zpaqfranz x z:\2.zpaq -to z:\kajo -windate

-all -comment (in x, extract)

Mark extracted versions with ASCII comment, if present

zpaqfranz x copia.zpaq -to z:\prova\ -all -comment

range in extraction

Extract the files added from version X to Y, or 1 to X, or X until end. Something like github (!)

In this example I want to get all the different comp.pas source code, from version 100 to 1000

zpaqfranz x copia.zpaq -only *comp.pas -to z:\allcomp -all -range 100-1000

in utf command -fix255

To quickly find longfiles on a folder

zpaqfranz utf c:\vm -fix255

-isopen on a (add)

Quickly abort if the file is already opened (on Windows). For multi-virtual-machines backup on the same archive

fixes

  • On Windows w with longpath now sanitize path better
  • Better (but not perfect) handling for OneDrive folder #37
  • Skip .zfs by default for dir mode
  • Extended -debug output (try to catch really weird NTFS' "something"
  • Fixed output

Download zpaqfranz