documentation/nackups.md

92 lines
1.6 KiB
Markdown

# Borgmatic
Borgmatic is used to manage backups.
```
apt-get install borgmatic
```
Generate default Borgmatic configuration:
```
generate-borgmatic-config
```
Create a file containing excludes `/etc/borgmatic/excludes`:
```
pp:usr/bin/
pp:usr/lib/
pp:usr/sbin/
pp:usr/share/
pp:var/cache/
fm:*/.gvfs
fm:*/.thumbnails
fm:*/.bkl-thumbnails
fm:*/Cache
fm:*/.cache
fm:*/cache
fm:*/cache2
fm:*/.davfs2
fm:*/.local/share/Trash
fm:*/VCache
fm:*/lost+found
fm:*/Sauvegardes
fm:*/kvm/images/*
fm:*/kvm/ISO/*
```
Documentation about pattern: https://borgbackup.readthedocs.io/en/stable/usage/help.html?highlight=pattern
Modify the Borgmatic configuration `/etc/borgmatic/config.yaml`:
```
location:
source_directories:
- /etc
- /home
- /opt
- /root
- /srv
- /usr
- /var
repositories:
- backuplogin@backupmachine:/path/to/backup/Borg.repo
exclude_from:
- /etc/borgmatic/excludes
storage:
ssh_command: ssh -p XXXXX
# archive_name_format: '{fqdn}-{now:%Y-%m-%dT%H:%M}'
archive_name_format: '{fqdn}-{now:%Y%m%d}'
retention:
prefix: '{fqdn}-'
output:
color: false
```
Check the Borgmatic configuration file:
```
validate-borgmatic-config
```
Define the borgbackup machine in `/etc/hosts`:
```
xxx.xxx.xxx.xxx backupmachine
```
Create local SSH keys:
```
ssh-keygen -o -a 100 -t rsa -b 5120 -C "root@fooland.fr"
```
## SSh timeout
Sometimes, there is broken pipe with ssh. Add the following to the `~/.ssh/config` file on the client:
```
Host *
ServerAliveInterval 120
```