docs: btrbk

This commit is contained in:
Daniel Langbein 2024-02-23 16:42:46 +01:00
parent 71bdd9ecd9
commit 844e3b4126
Signed by: langfingaz
GPG Key ID: 6C47C753F0823002

View File

@ -17,22 +17,148 @@ Further resources:
subvolume: <subvolume-name>
snapshot: <snapshot-name>.<timestamp>[<N>]
snapshot: <snapshot-name>.<timestamp>\[<N>]
timestamp: Can be configured using the `timestamp_format` option.
N: If multiple snapshots are created at the same time, the increasing counter N differentiates them.
## Actions
## Actions and Informative Commands
`run [filter...]`: In multiple steps, perform snapshots and backups.
### run [filter...]
In multiple steps, perform snapshots and backups.
* Read Data: Perform sanity checks
* Create Snapshots
* Create Backups
* Delete Backups
* Delete Snapshots
`clean [filter...]`: Delete incomplete backups (network error, kill signal while send/receive was ongoing).
### clean [filter...]
Delete incomplete backups (network error, kill signal while send/receive was ongoing).
### stats [filter...]
Print statistics of snapshot and backup subvolumes.
```shell
sudo btrbk -c /etc/btrbk/local-backup-hdd.conf stats
```
```console
SOURCE_SUBVOLUME SNAPSHOT_SUBVOLUME TARGET_SUBVOLUME SNAPSHOTS BACKUPS
/mnt/data/jc-data/cloud.fykml.de /mnt/data/snap2/cloud.fykml.de.* /mnt/backup/snap2/cloud.fykml.de.* 77 17
/mnt/data/jc-data/cloud.privacy1st.de /mnt/data/snap2/cloud.privacy1st.de.* /mnt/backup/snap2/cloud.privacy1st.de.* 77 17
Total:
154 snapshots
34 backups (34 correlated)
```
### diff <from> <to>
List the modified files since generation (transid) of subvolume <from> in subvolume <to>.
Columns:
```
SIZE file was modified for a total of SIZE bytes
COUNT file was modified in COUNT generations
FLAGS "+" file accessed at offset 0 (at least once)
"c" COMPRESS flag is set (at least once)
"i" INLINE flag is set (at least once)
```
```shell
sudo btrbk -c /etc/btrbk/local-backup-hdd.conf diff cloud.privacy1st.de.20240222T2300 cloud.privacy1st.de.20240223T1400
```
```console
FLAGS COUNT SIZE FILE
+c. 1 2.36 MiB data/appdata_oc2uzw0ocw65/appstore/apps.json
+.. 1 12.00 KiB data/appdata_oc2uzw0ocw65/preview/a/3/f/c/b/b/7/5105712/256-256-crop.jpg
+.. 1 24.00 KiB data/appdata_oc2uzw0ocw65/preview/a/3/f/c/b/b/7/5105712/384-512-max.jpg
+.. 1 8.00 KiB data/appdata_oc2uzw0ocw65/preview/d/8/4/f/d/0/7/5105717/256-256-crop.jpg
+.. 1 20.00 KiB data/appdata_oc2uzw0ocw65/preview/d/8/4/f/d/0/7/5105717/384-512-max.jpg
+c. 1 208.00 KiB data/appdata_oc2uzw0ocw65/suspicious_login/models/527
... 18 324.00 KiB data/nextcloud.log
... 257 40.21 MiB db/binlog.000119
... 290 48.11 MiB db/ib_logfile0
+c. 5 5.59 MiB db/ibdata1
.c. 4 112.00 KiB db/mysql/innodb_index_stats.ibd
.c. 1 32.00 KiB db/mysql/innodb_table_stats.ibd
+.. 3 264.00 KiB db/nextcloud/oc_activity.ibd
.c. 1 32.00 KiB db/nextcloud/oc_activity_mq.ibd
... 2 16.00 KiB db/nextcloud/oc_appconfig.ibd
+.. 3 88.00 KiB db/nextcloud/oc_authtoken.ibd
... 4 40.00 KiB db/nextcloud/oc_calendar_reminders.ibd
... 3 40.00 KiB db/nextcloud/oc_calendarchanges.ibd
+.. 6 184.00 KiB db/nextcloud/oc_calendarobjects.ibd
+.. 4 232.00 KiB db/nextcloud/oc_calendarobjects_props.ibd
.c. 1 8.00 KiB db/nextcloud/oc_calendarsubscriptions.ibd
... 8 1.18 MiB db/nextcloud/oc_filecache.ibd
... 2 48.00 KiB db/nextcloud/oc_filecache_extended.ibd
... 1 32.00 KiB db/nextcloud/oc_gpodder_episode_action.ibd
... 2 48.00 KiB db/nextcloud/oc_jobs.ibd
+c. 1 48.00 KiB db/nextcloud/oc_login_address.ibd
... 3 64.00 KiB db/nextcloud/oc_login_ips_aggregated.ibd
... 1 40.00 KiB db/nextcloud/oc_maps_photos.ibd
... 1 24.00 KiB db/nextcloud/oc_news_feeds.ibd
+.. 9 4.98 MiB db/nextcloud/oc_news_items.ibd
... 4 64.00 KiB db/nextcloud/oc_notifications.ibd
.c. 2 24.00 KiB db/nextcloud/oc_notifications_settings.ibd
... 1 16.00 KiB db/nextcloud/oc_preferences.ibd
... 1 16.00 KiB db/nextcloud/oc_preview_generation.ibd
... 1 16.00 KiB db/nextcloud/oc_suspicious_login_model.ibd
Total size: 104.47 MiB
```
## Cleanup
First, perform a dryrun. Double-check the output. Then, replace `dryrun` with `run`.
```shell
sudo btrbk -c /etc/btrbk/local-backup-ssd.conf \
--override=snapshot_preserve=2d \
--override=snapshot_preserve_min=latest \
--override=snapshot_create=no \
--override=target_preserve=2d \
--override=target_preserve_min=latest \
--print-schedule \
dryrun
```
```console
SNAPSHOT SCHEDULE
-----------------
ACTION SUBVOLUME SCHEME REASON
delete /mnt/data/snap2/cloud.privacy1st.de.20230927T1827 2d (sunday, 00:00) -
...
delete /mnt/data/snap2/cloud.privacy1st.de.20240220T0000 2d (sunday, 00:00) -
- /mnt/data/snap2/cloud.privacy1st.de.20240221T0000 2d (sunday, 00:00) preserve daily: first of day, 2 days ago, at 00:00
delete /mnt/data/snap2/cloud.privacy1st.de.20240221T0100 2d (sunday, 00:00) -
...
delete /mnt/data/snap2/cloud.privacy1st.de.20240221T2300 2d (sunday, 00:00) -
- /mnt/data/snap2/cloud.privacy1st.de.20240222T0000 2d (sunday, 00:00) preserve daily: first of day, 1 days ago, at 00:00
delete /mnt/data/snap2/cloud.privacy1st.de.20240222T0100 2d (sunday, 00:00) -
...
delete /mnt/data/snap2/cloud.privacy1st.de.20240222T2300 2d (sunday, 00:00) -
- /mnt/data/snap2/cloud.privacy1st.de.20240223T0000 2d (sunday, 00:00) preserve daily: first of day, 0 days ago, at 00:00
delete /mnt/data/snap2/cloud.privacy1st.de.20240223T0100 2d (sunday, 00:00) -
...
delete /mnt/data/snap2/cloud.privacy1st.de.20240223T1500 2d (sunday, 00:00) -
- /mnt/data/snap2/cloud.privacy1st.de.20240223T1600 2d (sunday, 00:00) preserve min: latest
BACKUP SCHEDULE
---------------
ACTION SUBVOLUME SCHEME REASON
delete /mnt/backup/snap2/cloud.privacy1st.de.20230927T1827 2d (sunday, 00:00) -
...
delete /mnt/backup/snap2/cloud.privacy1st.de.20240220T0000 2d (sunday, 00:00) -
- /mnt/backup/snap2/cloud.privacy1st.de.20240221T0000 2d (sunday, 00:00) preserve daily: first of day, 2 days ago, at 00:00
- /mnt/backup/snap2/cloud.privacy1st.de.20240222T0000 2d (sunday, 00:00) preserve daily: first of day, 1 days ago, at 00:00
- /mnt/backup/snap2/cloud.privacy1st.de.20240223T0000 2d (sunday, 00:00) preserve daily: first of day, 0 days ago, at 00:00
- /mnt/backup/snap2/cloud.privacy1st.de.20240223T1600 2d (sunday, 00:00) preserve min: latest
```
## Configuration