Don't call it a h-- t-- time machine
httm
prints the size, date and corresponding locations of available unique versions (dedup-ed by modify time and size) of files residing on ZFS snapshots, as well as the interactive viewing and restoration of such files.
Inspired by the wonderful findoid but about twice as fast in the ordinary case. Ready and able to be used in scripted interactive shell apps and widgets.
httm
also boasts an array of seductive features, like:
- Search for deleted files! Ooooooooo!
- Select non-immediate datasets (on a different pool, or remote).
- For use with even rsync-ed non-ZFS local datasets (like ext4, APFS, or NTFS), not just ZFS.
- Fully native, interactive restore (no shell scripts needed, but you do you!)
- Select from several formatting styles.
- Parseable ... or not ... oh my!
Use in combination with you favorite shell and a fuzzy finder like sk
or fzf
for even more fun.
Installation
The httm
project contains two components:
- The
httm
executable: To installgit clone
this repo, andcargo build
for right now. On MacOS, you will have to code-sign to use the remote capabilities. Sorry kids! - The several outdated example scripts: To install just place somewhere in your PATH. ~~ Depends upon
sk
or skim because that's my jam.~~ UPDATE: httm no longer depends onskim
, as it now calls skim as a library, in full interactive mode.
Look ma no hands -- no shell scripts needed for ZFS restore!
License
httm is licensed under the MPL 2.0 License - see the LICENSE file for more details.