Installing Tarsnap from source

At the present time, pre-built binaries are not available for Tarsnap — it must be compiled from the source code.

  1. Download the source tarball and signed SHA256 hash file (see below for links to these files for the latest version of Tarsnap).
  2. Verify that the files have not been tampered with (this step may be skipped if you're not worried about security):
    • Verify the GPG signature on the SHA256 hash file using GnuPG and the Tarsnap code signing GPG key (note that versions up to 1.0.25 are signed using the 2009 Tarsnap code signing GPG key, Tarsnap versions 1.0.26 and 1.0.27 are signed using the 2010 Tarsnap code signing GPG key, Tarsnap versions 1.0.28 through 1.0.30 are signed using the 2011 Tarsnap code signing GPG key, Tarsnap versions 1.0.31 and 1.0.32 are signed using the 2012 Tarsnap code signing GPG key, and Tarsnap versions 1.0.33 and 1.0.34 are signed using the 2013 Tarsnap code signing GPG key):
      $ gpg --decrypt tarsnap-sigs-1.0.35.asc
      Warning: using insecure memory!
      SHA256 (tarsnap-autoconf-1.0.35.tgz) = 6c9f6756bc43bc225b842f7e3a0ec7204e0cf606e10559d27704e1cc33098c9a
      gpg: Signature made Sun Feb 16 20:20:35 2014 PST using RSA key ID E5979DF7
      gpg: Good signature from "Tarsnap source code signing key (Colin Percival) <cperciva@tarsnap.com>"
    • Verify that the SHA256 hash of the tarball matches the value in the value in the signed SHA256 hash file (on Linux systems, you may need to use the sha256sum command, and on OS X you may need to use shasum -a 256 instead of sha256):
      $ sha256 tarsnap-autoconf-1.0.35.tgz
      SHA256 (tarsnap-autoconf-1.0.35.tgz) = 6c9f6756bc43bc225b842f7e3a0ec7204e0cf606e10559d27704e1cc33098c9a
      	
  3. Make sure you have the necessary package dependencies installed: A C compiler (gcc or clang), make, system header files, OpenSSL (including header files), zlib (including header files), and on Linux, the ext2fs/ext2_fs.h header (which is NOT the same as the linux/ext2_fs.h header file).
    On most UNIX systems all the necessary packages will already be present, but on Linux they may need to be installed manually:
    • On Debian, Ubuntu, and related distributions, make sure the libssl-dev, zlib1g-dev, and e2fslibs-dev packages are installed.
    • On RedHat, SuSE, Amazon Linux, and related distributions, make sure the glibc-devel, openssl-devel, zlib-devel, and e2fsprogs-devel packages are installed.
    • If you run another flavour of Linux, you can probably figure out which packages you need, but please contact me so I can update this list.
  4. Extract the tarball and "cd" into that directory.
  5. Run ./configure to configure Tarsnap for your system.
  6. If the configure script complains about OpenSSL, zlib, or ext2_fs.h not being present, you didn't install the right dependent packages. Make sure you got the "development" versions (which have the header files Tarsnap needs) and not just the "library" versions.
  7. Run make all install clean to build and install Tarsnap.

Latest Tarsnap release

Tarsnap 1.0.35 (July 25, 2013)

Downloads:

Changes since version 1.0.34:

  • A bug in tarsnap 1.0.34 which could cause tarsnap to crash (segmentation fault or bus error) when encountering network glitches or outages is fixed.
  • When tarsnap encounters "insane" filesystems (procfs and other similar synthetic filesystems which are not reasonable to archive), it now archives the filesystem mount point but by default does not recurse into the filesystem. Previous releases (since 1.0.26) did not archive the synthetic filesystem mount point.

Download older Tarsnap releases...