Backups #1

Open
opened 2022-12-28 14:24:51 +01:00 by tdpeuter · 9 comments
Owner

The following applications need backups:

  • Bazarr
  • Calibre
  • Calibre-web
  • FreshRSS
  • Gitea (PRIORITY) (incl. DB)
  • Jellyfin
  • Lidarr
  • Nextcloud (PRIORITY) (incl. DB)
  • Plex
  • Prowlarr
  • QBittorrent
  • Radarr
  • Sonarr
  • TrueNAS SCALE
  • Vaultwarden (PRIORITY) (incl. DB)

These datasets need backups (all PRIORITY):

  • BIG/MEDIA/HOMEVIDEO (Weekly)
  • BIG/MEDIA/PHOTO (Weekly)
  • SMALL/DATA/GIT
  • SMALL/DATA/HOME
  • SMALL/MEDIA/AUDIO (Weekly)
  • SMALL/MEDIA/BOOKS (Weekly)

All priority data should be backed up at least daily. Other data can be backed up weekly.


I use several categories:

Category Direction Transfer Mode Transfers Pre-script Post-script Description
App Push Sync 4 # Do nothing # Do nothing Regular apps to backup config files
AppDB Push Move 4 backup-database.sh # Do nothing Apps of which the database needs to be backed up
Data Push Move 4 backup-zfs-dataset.sh --incremental --compression_level 3 --tag 'INC' # Do nothing Regular dataset incremental
Data (BASE) Push Sync 4 backup-zfs-dataset.sh --base --compression_level 9 --tag 'BASE' rm -rf destination/* Regular dataset base
Data (PRIO) Push Copy 4 backup-zfs-dataset.sh --incremental --compression_level 8 --tag 'INC' # Do nothing Important datasets of which we want a backup on site
Data (PRIO+BASE) Push Copy 4 rm -rf destination/* && backup-zfs-dataset.sh --base --compression_level 9 --tag 'BASE' # Do nothing Important dataset base

(System tasks always happen at midnight instead of the defined timestamp.)

Daily at 01:30:

  • AppDB/Gitea
  • AppDB/Nextcloud
  • AppDB/Vaultwarden
  • Data/Git
  • Data/Home (PRIO)
  • System/S.M.A.R.T. SHORT
  • System/Periodic Snapshots

Weekly at 01:10:

  • Monday
    • Data/Homevideo
    • Data/Photo
  • Tuesday
    • System/Scrub ALL
    • App/*arr
  • Wednesday
    • App/Calibre
    • App/Calibre-web
    • App/FreshRSS
    • App/QBittorrent
    • App/TrueNAS-SCALE
  • Thursday
    • App/Jellyfin
    • App/Plex

On the first day of every month at 01:10:

  • System/S.M.A.R.T. LONG
  • Data/Audio
  • Data/Books
  • Data/Home (PRIO+BASE)

On the second day of every third month at 01:10:

  • Data/Homevideo (BASE)
  • Data/Photo (BASE)

On the third day of every year at 01:10:

  • Data/Audio (BASE)
  • Data/Books (BASE)
  • Data/Git (BASE)
The following applications need backups: - [x] Bazarr - [x] Calibre - [x] Calibre-web - [x] FreshRSS - [x] Gitea (PRIORITY) (incl. DB) - [x] Jellyfin - [x] Lidarr - [x] Nextcloud (PRIORITY) (incl. DB) - [x] Plex - [x] Prowlarr - [x] QBittorrent - [x] Radarr - [x] Sonarr - [x] TrueNAS SCALE - [x] Vaultwarden (PRIORITY) (incl. DB) These datasets need backups (all PRIORITY): - [x] BIG/MEDIA/HOMEVIDEO (Weekly) - [x] BIG/MEDIA/PHOTO (Weekly) - [x] SMALL/DATA/GIT - [x] SMALL/DATA/HOME - [x] SMALL/MEDIA/AUDIO (Weekly) - [x] SMALL/MEDIA/BOOKS (Weekly) All priority data should be backed up at least daily. Other data can be backed up weekly. --- I use several categories: | Category | Direction | Transfer Mode | Transfers | Pre-script | Post-script | Description | |----|----|----|----|----|----|----| | App | Push | Sync | 4 | `# Do nothing` | `# Do nothing` | Regular apps to backup config files | | AppDB | Push | Move | 4 | `backup-database.sh` | `# Do nothing` | Apps of which the database needs to be backed up | | Data | Push | Move | 4 | `backup-zfs-dataset.sh --incremental --compression_level 3 --tag 'INC'` | `# Do nothing` | Regular dataset incremental | | Data (BASE) | Push | Sync | 4 | `backup-zfs-dataset.sh --base --compression_level 9 --tag 'BASE'` | `rm -rf destination/*` | Regular dataset base | | Data (PRIO) | Push | Copy | 4 | `backup-zfs-dataset.sh --incremental --compression_level 8 --tag 'INC'` | `# Do nothing` | Important datasets of which we want a backup on site | | Data (PRIO+BASE) | Push | Copy | 4| `rm -rf destination/* && backup-zfs-dataset.sh --base --compression_level 9 --tag 'BASE'` | `# Do nothing` | Important dataset base | (System tasks always happen at midnight instead of the defined timestamp.) Daily at 01:30: - [x] AppDB/Gitea - [x] AppDB/Nextcloud - [x] AppDB/Vaultwarden - [x] Data/Git - [x] Data/Home (PRIO) - [x] System/S.M.A.R.T. SHORT - [x] System/Periodic Snapshots Weekly at 01:10: - Monday - [x] Data/Homevideo - [x] Data/Photo - Tuesday - [x] System/Scrub ALL - [x] App/*arr - Wednesday - [x] App/Calibre - [x] App/Calibre-web - [x] App/FreshRSS - [x] App/QBittorrent - [x] App/TrueNAS-SCALE - Thursday - [x] App/Jellyfin - [x] App/Plex On the first day of every month at 01:10: - [x] System/S.M.A.R.T. LONG - [x] Data/Audio - [x] Data/Books - [x] Data/Home (PRIO+BASE) On the second day of every third month at 01:10: - [x] Data/Homevideo (BASE) - [x] Data/Photo (BASE) On the third day of every year at 01:10: - [x] Data/Audio (BASE) - [x] Data/Books (BASE) - [x] Data/Git (BASE)
tdpeuter added the
urgent
label 2022-12-28 14:26:21 +01:00
Author
Owner

Nextcloud should not be too hard as they have guides for that. Use Nicole for this?

Nextcloud should not be too hard as they have guides for that. Use Nicole for this?
Author
Owner

TrueNAS provides a way to do this easily? Backup credentials

TrueNAS provides a way to do this easily? [Backup credentials](https://www.truenas.com/docs/scale/scaleuireference/credentials/backupcredentials/)
Author
Owner
[WOL packet](https://stackoverflow.com/questions/31588035/bash-one-line-command-to-send-wake-on-lan-magic-packet-without-specific-tool)
tdpeuter added this to the Server setup project 2023-01-15 11:50:07 +01:00
Author
Owner

Backup Vaultwarden

  • Database dump
  • attachments
  • sends
  • config.json
  • rsa_key
[Backup Vaultwarden](https://github.com/dani-garcia/vaultwarden/wiki/Backing-up-your-vault) - [x] Database dump - [x] `attachments` - [x] `sends` - [x] `config.json` - [x] `rsa_key`
Author
Owner
[Backup Calibre-Web](https://github.com/janeczku/calibre-web/wiki/FAQ#how-to-backup-calibre-web-settings) - [x] `app.db`
Author
Owner

Backup Calibre

  • Data such as plugins
Backup Calibre - [x] Data such as plugins
Author
Owner

Password retrieval

password=$( k3s kubectl get secret/dbcreds --namespace ix-hugit -o jsonpath='{.data.url}' | base64 -d | cut -d':' -f3 | cut -d'@' -f1 )
[Password retrieval](https://truecharts.org/manual/SCALE/guides/sql-export/) ``` password=$( k3s kubectl get secret/dbcreds --namespace ix-hugit -o jsonpath='{.data.url}' | base64 -d | cut -d':' -f3 | cut -d'@' -f1 ) ```
Author
Owner

Is it worthwhile to use specialised backup software such as Kopia or Duplicati?

Comparison of backup software

Is it worthwhile to use specialised backup software such as [Kopia](https://kopia.io/) or [Duplicati](https://www.duplicati.com/)? [Comparison of backup software](https://www.reddit.com/r/selfhosted/comments/u6l7al/comment/i5bo0lr/?context=3)
Author
Owner

Is it worthwhile to use specialised backup software such as Kopia or Duplicati?

I recently discovered ZFS's ability to send snapshots to another device. I think this is absolutely the way to go. It makes backups incremental, and you can keep rollbacks for two weeks for example.

> Is it worthwhile to use specialised backup software such as [Kopia](https://kopia.io/) or [Duplicati](https://www.duplicati.com/)? I recently discovered ZFS's ability to send snapshots to another device. I think this is absolutely the way to go. It makes backups incremental, and you can keep rollbacks for two weeks for example.
tdpeuter self-assigned this 2023-09-24 10:59:24 +02:00
tdpeuter added the
chore
label 2023-09-24 11:07:56 +02:00
tdpeuter added a new dependency 2023-09-24 11:09:06 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Depends on
Reference: Bos55/Hugo#1
No description provided.