Skip to main content

Selectively purge daily full backups

Project description

Lists files in that should be purged in a backup strategy where daily backups are kept for DAYS days, monthly backups for MONTHS months and yearly backups for YEARS years. Monthly and yearly backups are always the oldest possible daily backup (e.g. first of month and first of year that is available), and an option to keep RECENT most-recent backups is also available.

Files are expected to have their date embedded as YYYY-MM-DD somewhere in the filename, e.g. homedir-2013-03-31.tgz

For monthly and yearly backups, the first day available will be kept (e.g. January 1st for yearly, but if that is not available, January 2nd will be kept, etc..).

This program can be used together with xargs(1) from GNU findutils:

backuppurge --print0 /var/backups/ | xargs -r -0 rm

Only files directly in the specified DIRECTORY will be searched (in the above example, /var/backups/homedir-2013-03-31.tgz will be considered, but not /var/backups/etc/etc-2013-03-31.tgz). This prevents accidental deletion of files. If –include-directories (-D) is used, directories directly below the path will be included in the search (e.g. the directory /var/backups/etc-2015-07-24/ will be included in the purge search).

This script assumes daily backups are FULL backups, not incremental. For example, a full daily backup of your /etc can be created by adding (crontab -e) a command like the following to your crontab(5) file:

tar czf /var/backups/etc/etc-$(date +%F).tgz /etc

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

backuppurge-1.0.7.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

backuppurge-1.0.7-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file backuppurge-1.0.7.tar.gz.

File metadata

  • Download URL: backuppurge-1.0.7.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for backuppurge-1.0.7.tar.gz
Algorithm Hash digest
SHA256 d6f1583ab3b715fecf6224b8f8f74ea5b1f1d25ed69cee13ca664fbf38537d54
MD5 6fbef3de5b5dddc98011fa470dba8657
BLAKE2b-256 bf7f502c50b43b9978691221d2d59b585e55715e7ee651ce946c39a8cf8c41d3

See more details on using hashes here.

File details

Details for the file backuppurge-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: backuppurge-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for backuppurge-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 4f3cb64410b7f838b7400b8b4b4bef9e61ccc644dcb412efb90fee96818e0e26
MD5 13245493ef33773b9f208e9614ccaad1
BLAKE2b-256 4459023d04dab02e19fd457d20452cb7c9623031aea76af83e515f762250737e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page