2018-09-02 07:45:13 +02:00
---
title: borgmatic
2019-05-20 20:41:39 +02:00
permalink: index.html
2018-09-02 07:38:17 +02:00
---
2019-06-24 01:53:33 +02:00
< a href = "https://build.torsion.org/witten/borgmatic" alt = "build status" > ![Build Status](https://build.torsion.org/api/badges/witten/borgmatic/status.svg?ref=refs/heads/master)< / a >
2019-05-13 22:56:49 +02:00
2014-11-27 18:29:31 +01:00
## Overview
2014-10-31 06:34:03 +01:00
2019-05-14 07:33:28 +02:00
< img src = "https://projects.torsion.org/witten/borgmatic/raw/branch/master/static/borgmatic.png" alt = "borgmatic logo" width = "150px" style = "float: right; padding-left: 1em;" >
2018-08-30 07:44:12 +02:00
2019-05-26 22:35:51 +02:00
borgmatic is simple, configuration-driven backup software for servers and
workstations. Backup all of your machines from the command-line or scheduled
jobs. No GUI required. Built atop [Borg Backup ](https://www.borgbackup.org/ ),
borgmatic initiates a backup, prunes any old backups according to a retention
policy, and validates backups for consistency. borgmatic supports specifying
your settings in a declarative configuration file, rather than having to put
them all on the command-line, and handles common errors.
2014-10-31 06:34:03 +01:00
2014-11-26 01:01:59 +01:00
Here's an example config file:
2017-07-05 03:23:59 +02:00
```yaml
location:
# List of source directories to backup. Globs are expanded.
source_directories:
- /home
- /etc
- /var/log/syslog*
2017-07-23 07:56:46 +02:00
# Paths to local or remote repositories.
repositories:
- user@backupserver:sourcehostname.borg
2017-07-05 03:23:59 +02:00
2017-07-10 20:06:28 +02:00
# Any paths matching these patterns are excluded from backups.
exclude_patterns:
- /home/*/.cache
2017-07-05 03:23:59 +02:00
retention:
# Retention policy for how many backups to keep in each category.
keep_daily: 7
keep_weekly: 4
keep_monthly: 6
consistency:
2019-10-23 01:28:42 +02:00
# List of consistency checks to run: "repository", "archives", etc.
2017-07-05 03:23:59 +02:00
checks:
- repository
- archives
2019-10-23 01:28:42 +02:00
hooks:
# Preparation scripts to run, databases to dump, and monitoring to perform.
before_backup:
- prepare-for-backup.sh
postgresql_databases:
- name: users
healthchecks: https://hc-ping.com/be067061-cf96-4412-8eae-62b0c50d6a8c
2016-01-20 13:11:15 +01:00
```
2015-05-11 07:00:31 +02:00
2016-06-10 20:21:53 +02:00
borgmatic is hosted at < https: / / torsion . org / borgmatic > with [source code
2017-10-28 06:55:08 +02:00
available](https://projects.torsion.org/witten/borgmatic). It's also mirrored
2017-10-28 07:27:28 +02:00
on [GitHub ](https://github.com/witten/borgmatic ) for convenience.
2014-11-19 03:32:16 +01:00
2018-09-30 20:11:07 +02:00
Want to see borgmatic in action? Check out the < a
href="https://asciinema.org/a/203761" target="_blank">screencast< / a > .
2018-09-30 06:38:38 +02:00
< script src = "https://asciinema.org/a/203761.js" id = "asciicast-203761" async > < / script >
2018-02-20 02:44:20 +01:00
2014-10-31 06:34:03 +01:00
2019-02-04 07:20:59 +01:00
## How-to guides
2014-10-31 06:34:03 +01:00
2019-05-26 06:48:05 +02:00
* [Set up backups with borgmatic ](https://torsion.org/borgmatic/docs/how-to/set-up-backups/ ) ⬅ *Start here!*
* [Make per-application backups ](https://torsion.org/borgmatic/docs/how-to/make-per-application-backups/ )
* [Deal with very large backups ](https://torsion.org/borgmatic/docs/how-to/deal-with-very-large-backups/ )
* [Inspect your backups ](https://torsion.org/borgmatic/docs/how-to/inspect-your-backups/ )
2019-10-15 19:49:14 +02:00
* [Monitor your backups ](https://torsion.org/borgmatic/docs/how-to/monitor-your-backups/ )
2019-05-26 06:48:05 +02:00
* [Restore a backup ](https://torsion.org/borgmatic/docs/how-to/restore-a-backup/ )
2019-10-24 00:35:37 +02:00
* [Backup your databases ](https://torsion.org/borgmatic/docs/how-to/backup-your-databases/ )
2019-07-05 18:03:08 +02:00
* [Add preparation and cleanup steps to backups ](https://torsion.org/borgmatic/docs/how-to/add-preparation-and-cleanup-steps-to-backups/ )
2019-05-26 06:48:05 +02:00
* [Upgrade borgmatic ](https://torsion.org/borgmatic/docs/how-to/upgrade/ )
* [Develop on borgmatic ](https://torsion.org/borgmatic/docs/how-to/develop-on-borgmatic/ )
2016-06-10 20:53:45 +02:00
2017-07-10 20:06:28 +02:00
2019-02-05 07:12:33 +01:00
## Reference guides
2019-05-26 06:48:05 +02:00
* [borgmatic configuration reference ](https://torsion.org/borgmatic/docs/reference/configuration/ )
* [borgmatic command-line reference ](https://torsion.org/borgmatic/docs/reference/command-line/ )
2019-02-05 07:12:33 +01:00
2019-05-19 05:59:50 +02:00
## Hosting providers
Need somewhere to store your encrypted offsite backups? The following hosting
providers include specific support for Borg/borgmatic. Using these links and
services helps support borgmatic development and hosting. (These are referral
links, but without any tracking scripts or cookies.)
2019-05-30 00:35:04 +02:00
< ul >
< li class = "referral" > < a href = "https://www.rsync.net/cgi-bin/borg.cgi?campaign=borg&adgroup=borgmatic" > rsync.net< / a > : Cloud Storage provider with full support for borg and any other SSH/SFTP tool< / li >
< li class = "referral" > < a href = "https://www.borgbase.com/?utm_source=borgmatic" > BorgBase< / a > : Borg hosting service with support for monitoring, 2FA, and append-only repos< / li >
< / ul >
2019-05-19 05:59:50 +02:00
2018-06-17 23:55:57 +02:00
## Support and contributing
2014-11-18 06:57:44 +01:00
2018-06-17 23:55:57 +02:00
### Issues
You've got issues? Or an idea for a feature enhancement? We've got an [issue
tracker](https://projects.torsion.org/witten/borgmatic/issues). In order to
create a new issue or comment on an issue, you'll need to [login
first](https://projects.torsion.org/user/login). Note that you can login with
an existing GitHub account if you prefer.
2019-05-20 00:01:03 +02:00
If you'd like to chat with borgmatic developers or users, head on over to the
`#borgmatic` IRC channel on Freenode, either via < a
2019-05-20 00:04:01 +02:00
href="https://webchat.freenode.net/?channels=borgmatic">web chat< / a > or a
native < a href = "irc://chat.freenode.net:6697" > IRC client< / a > .
2019-05-20 00:01:03 +02:00
2018-06-17 23:55:57 +02:00
Other questions or comments? Contact < mailto:witten @ torsion . org > .
### Contributing
If you'd like to contribute to borgmatic development, please feel free to
submit a [Pull Request ](https://projects.torsion.org/witten/borgmatic/pulls )
or open an [issue ](https://projects.torsion.org/witten/borgmatic/issues ) first
to discuss your idea. We also accept Pull Requests on GitHub, if that's more
your thing. In general, contributions are very welcome. We don't bite!
2019-02-04 07:20:59 +01:00
Also, please check out the [borgmatic development
2019-05-26 06:48:05 +02:00
how-to](https://torsion.org/borgmatic/docs/how-to/develop-on-borgmatic/) for
info on cloning source code, running tests, etc.