Skip to content
fcorbelli edited this page Sep 28, 2026 · 2 revisions

Why extract 500 GB to take one file? Mount the archive, copy what you need, unmount.

Quick summary

mount mounts an archive read-only (FUSE / WinFsp): by default the LAST version, whose files and folders are right there in the mountpoint. With -all every version becomes a top level folder (VER00000000 = state after the 1st add, VER00000001 after the 2nd...: snapshots, not diffs). Only in the builds made with -DZPAQMOUNT (Makefile: make ENABLE_ZPAQMOUNT=yes), never in -DOPEN builds. How to know: a build with mount shows +M right after the JIT in the banner (ex. zpaqfranz v65.5g-JIT8+M,...). Since 65.5g a build without it answers mount with "This zpaqfranz has NO mount command" and exit code 2 (before: just the generic help, exit code 0).

Power user usage

  • Windows: mountpoint = a drive letter (Z:) or a not-yet-existing folder; omit it to get the first free letter and an Explorer window. Needs WinFsp. Run as Administrator, the drive letter is created for the whole system (65.5).
  • Unix: mountpoint = an empty directory; stays in foreground, Ctrl+C unmounts.
  • macOS: needs FUSE-T (no kernel extension) or macFUSE; omit the mountpoint and one is made (/Volumes if root, else the temp folder), the Finder opens on it, removed when unmounted.
  • -all mount every version (slower to mount: one tree per version)
  • -until N version N (or a date) becomes the last one
  • -threads N threads for read-ahead/decompression (default: 4)
  • -backend X auto (default) | jidac: jidac is the only engine left (reads -key AES-256 and Franzen archives)
  • -fuseopt a,b extra options for FUSE/WinFsp (Windows: VolumePrefix=\zpaqfuse\name network drive, FileSystemName=NTFS; macOS: volname=Name)
  • -noeta no progress line while scanning the index
  • -test mount, check every file THROUGH the mountpoint (size, date, stored hash, random-offset reads), unmount; exit code 0 if OK
  • -debug FUSE/WinFsp debug output
  • Environment: ZPAQFUSE_CACHE_MB (256), ZPAQFUSE_SHARDS, ZPAQFUSE_PREFETCH_THREADS, ZPAQFUSE_WINNAMES, ZPAQFUSE_CASEFOLD, ZPAQFUSE_CASE_INSENSITIVE (Windows)

Lo spiegone

Dispatched as command V to mount() (inside #ifdef ZPAQMOUNT). Build: see Quickstart Makefile (FUSE found with pkg-config fuse3, with fallbacks for OpenBSD -lfuse, macOS and the BSDs). autotest -all -to ... also tries mount -test, if mount works on that machine.

Real-world examples

Last version, first free drive letter (Windows)

zpaqfranz mount z:\1.zpaq

A multipart archive on Z:, then every version one folder each

zpaqfranz mount z:\part_???.zpaq Z:
zpaqfranz mount z:\1.zpaq Z: -all

As a network drive (Windows)

zpaqfranz mount z:\1.zpaq Z: -fuseopt VolumePrefix=\zpaqfuse\1

On a directory (Unix), then on macOS with a Finder name

zpaqfranz mount /tmp/1.zpaq /mnt/zpaq
zpaqfranz mount ~/1.zpaq ~/mnt -fuseopt volname=Backup

Version 3; an encrypted archive

zpaqfranz mount z:\1.zpaq Z: -until 3
zpaqfranz mount z:\enc.zpaq Z: -key mypassword

Does the mount work here? (and unmount)

zpaqfranz mount z:\1.zpaq z:\mnt -test

Clone this wiki locally