Skip to content
/ acts Public
forked from alexjurkiewicz/acts

Another Calendar-based Tarsnap Script

Notifications You must be signed in to change notification settings

rosspf/acts

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ACTS 1.1

Another Calendar-based Tarsnap Script Modified by Squirrely (rosspf)

Introduction

acts is a minimal shell script that creates backups with Tarsnap. Some design goals:

  • Just backup, no restore.
  • Calendar-based (daily, monthly, yearly) backup schedule
  • Portable, small code footprint.

One Tarsnap archive is created per-target per-run. 31 daily, 12 monthly, and indefinite yearly backups are kept.

Download

You can use the development version of acts by cloning this repository, or download the latest stable release (.tar.gz).

Usage

  1. Take acts.conf and customise it for your environment. Put it in /etc or /usr/local/etc.
  2. Run acts daily from cron.

Notes on behaviour:

  • acts creates archives of the form <hostname>-<period>-yyyy-mm-dd_HH:MM:SS-target. If you have existing archives starting with hostname-(daily|monthly|yearly), they will confuse acts, so don't do that.
  • Archives are created using the following logic:
    • If no yearly backup for the current year exists, create a yearly backup.
    • If a yearly backup exists but no monthly backup, create a monthly backup.
    • Otherwise, create a daily backup.
  • Archives are deleted using the following logic:
    • If any backups failed, delete nothing.
    • Keep the most recent 31 daily backups, and delete any older ones.
    • Keep the most recent 12 monthly backups, and delete any older ones.
    • Do not delete any yearly backups.
  • Times in archive names use UTC, not the server's timezone.

TODO

  • Add per-directory excludes handling. (For now, add global excludes in your tarsnap.conf or .tarsnaprc file.)
  • Add some backup period configurability. (For now, you can edit the hardcoded values in the script.)

License

This is free and unencumbered software released into the public domain.

Help

Email me ([email protected]) or open a Github issue.

About

Another Calendar-based Tarsnap Script

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%