table of contents
borgmatic() | borgmatic() |
It’s your data. Keep it that way.¶
borgmatic is simple, configuration-driven backup software for servers and workstations. Protect your files with client-side encryption. Backup your databases too. Monitor it all with integrated third-party services.
The canonical home of borgmatic is at https://torsion.org/borgmatic/
Here’s an example configuration file:
-
# List of source directories to backup. source_directories:
- /home
- /etc # Paths of local or remote repositories to backup to. repositories:
- path: ssh://k8pDxu32@k8pDxu32.repo.borgbase.com/./repo
label: borgbase
- path: /var/lib/backups/local.borg
label: local # Retention policy for how many backups to keep. keep_daily: 7 keep_weekly: 4 keep_monthly: 6 # List of checks to run to validate your backups. checks:
- name: repository
- name: archives
frequency: 2 weeks # Custom preparation scripts to run. before_backup:
- prepare-for-backup.sh # Databases to dump and include in backups. postgresql_databases:
- name: users # Third-party services to notify you if backups aren't happening. healthchecks: https://hc-ping.com/be067061-cf96-4412-8eae-62b0c50d6a8c
borgmatic is powered by Borg Backup (https://www.borgbackup.org/).
Integrations¶
Getting started¶
Your first step is to install and configure borgmatic (https://torsion.org/borgmatic/docs/how-to/set-up-backups/).
For additional documentation, check out the links above (left panel on wide screens) for borgmatic how-to and reference guides.
Hosting providers¶
Need somewhere to store your encrypted off-site backups? The following hosting providers include specific support for Borg/borgmatic—and fund borgmatic development and hosting when you use these referral links to sign up: BorgBase: Borg hosting service with support for monitoring, 2FA, and append-only repos Hetzner: A “storage box” that includes support for Borg
Additionally, rsync.net has a compatible storage offering, but does not fund borgmatic development or hosting.
Support and contributing¶
Issues¶
Are you experiencing an issue with borgmatic? Or do you have an idea for a feature enhancement? Head on over to our issue tracker (https://projects.torsion.org/borgmatic-collective/borgmatic/issues). In order to create a new issue or add a comment, you’ll need to register (https://projects.torsion.org/user/sign_up?invite_code=borgmatic) first. If you prefer to use an existing GitHub account, you can skip account creation and login directly (https://projects.torsion.org/user/login).
Also see the security policy (https://torsion.org/borgmatic/docs/security-policy/) for any security issues.
Social¶
Follow borgmatic on Mastodon (https://fosstodon.org/@borgmatic).
Chat¶
To chat with borgmatic developers or users, check out the #borgmatic IRC channel on Libera Chat, either via web chat or a native IRC client. If you don’t get a response right away, please hang around a while—or file a ticket instead.
Other¶
Other questions or comments? Contact <witten@torsion.org>.
Contributing¶
borgmatic source code is available (https://projects.torsion.org/borgmatic-collective/borgmatic) and is also mirrored on GitHub (https://github.com/borgmatic-collective/borgmatic) for convenience.
borgmatic is licensed under the GNU General Public License version 3 or any later version.
If you’d like to contribute to borgmatic development, please feel free to submit a Pull Request (https://projects.torsion.org/borgmatic-collective/borgmatic/pulls) or open an issue (https://projects.torsion.org/borgmatic-collective/borgmatic/issues) to discuss your idea. Note that you’ll need to register (https://projects.torsion.org/user/sign_up?invite_code=borgmatic) first. We also accept Pull Requests on GitHub, if that’s more your thing. In general, contributions are very welcome. We don’t bite!
Also, please check out the borgmatic development how-to (https://torsion.org/borgmatic/docs/how-to/develop-on-borgmatic/) for info on cloning source code, running tests, etc.
[IMAGE: Build Status (https://build.torsion.org/api/badges/borgmatic-collective/borgmatic/status.svg?ref=refs/heads/main)]