Backups and howto
This yunohost server is backed up onto two separate USB drives both of which are on-premise. Several attempts have been made to perform an off-premise backup using both Borg and Restic, but found to be more difficult than it’s worth!
Drive 1 (Drive label: YNHRECOVERY)
This backup uses the built-in Yunohost backup and recovery service. A simple cronjob is used detailing the time and what is to be backed up.
FULL BACK UP
- Time: Midnight every Wednesday and Sunday
- What: EVERYTHING. This is a full backup. Everything is checked off in the Yunohost back service.
OTHER
- Time: 4 AM EVERY day.
- What: User home folders and emails
Drive 2 (Drive label: DATARECOVERY)
This drive uses the Restic backup/recovery application, which is a third-party application. Again, a cronjob is used to detail the times and what items are to be backed up.
- Time: 3 AM EVERY day
- What: The following folders are incrementally backed up:
- /etc
- /home
- /var/www
- /opt
- /var/lib/mysql
- /usr/share/yunohost
- /etc
The difference between the two backups is that the Restic backup is incremental and the last three backups are kept. The Yunohost backup is not incremental; therefore, some administration must be done to prune the drive as it becomes full.
HOW TO USE THE RESTIC BACKUP SERVICE
Restic is a backup service that can be installed from the CLI or through the Yunohost application catalogue. On this server, it has been installed using the CLI.
Where is the Restic app? Type: which restic
Where is my Restic repository? The Restic repository can be found at media/datarecovery/restic. This is a symbolic link from the Restic directory on the main drive. The physical drive is a USB spinner labelled “datarecovery”.
What is the latest installed Restic version?
Type: restic version This will tell you the current version which right now is restic 0.17.3 compiled with go1.22.5 on linux/amd64
Can I update Restic? Type: restic self-update. If there is an update available it will be downloaded and installed.
Has the back up happened? Type: restic check -r /media/datarecovery/restic