From 3de6d01b582ce33ab791fd1b709d08a271ff8c88 Mon Sep 17 00:00:00 2001 From: Julien Lutran Date: Tue, 25 Aug 2026 12:58:48 +0200 Subject: [PATCH] restic-backup: install upstream 0.19.1 (Debian's 0.18.0 misses needed fixes) Live-tree mid-walk deletion crash (0.18.1 #5421), faster index loading (0.19.0 #5713) and lower check memory (#5610), index repair robustness, clean exit codes, and the empty-snapshot-on-inaccessible- source fix (0.19.1 #5667). Upgrades via restic self-update. Co-Authored-By: Claude Fable 5 --- ks4/restic-backup.md | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/ks4/restic-backup.md b/ks4/restic-backup.md index 78aed25..f43a49f 100644 --- a/ks4/restic-backup.md +++ b/ks4/restic-backup.md @@ -57,9 +57,10 @@ property). ### Memory (the real constraint on this 23/31 GiB-used box) -- Index RAM ≈ 200–300 B/blob → ~0.3 GiB (nextcloud) and - ~0.6–1.2 GiB (seafile) per backup run; prune peaks 2–3×. Hence the - repo split (§1). +- Index RAM ≈ 200–300 B/blob → combined `restic-data` index + ~1–1.5 GiB per operation (nextcloud ~1 M blobs + seafile ~2–4 M); + prune peaks 2–3×. Accepted with the merged layout (§1) — measure + peak RSS during the evaluation week (`/usr/bin/time -v`). - `GOGC=20` trades CPU for a smaller Go heap — enable if the seafile prune ever pressures the box. @@ -106,8 +107,23 @@ repo (rustic ignores restic's locks); a clean switchover is fine. ## 3. Install + init (root on ks4) +Debian 13 ships restic **0.18.0**, which misses fixes we specifically +need (checked 2026-08-25 against upstream changelogs): the 0.18.1 +crash fix for directories deleted mid-walk (#5421 — our live trees do +that nightly), 0.19.0's much faster index loading (#5713 — the merged +restic-data repo loads its index every op) and lower check memory +(#5610), index-repair robustness (#21827/28), clean exit codes +(#4467/#5363 — our drivers key off rc), and 0.19.1's +skip-inaccessible-source fix (#5667 — an unmounted source must not +commit an empty "successful" snapshot). → install upstream **0.19.1**; +future upgrades via `restic self-update` (signature-verified). + ```sh -apt install restic sshfs # sshfs: needed by `incus file mount` (§6) +apt install sshfs bzip2 # sshfs: needed by `incus file mount` (§6) +curl -LO https://github.com/restic/restic/releases/download/v0.19.1/restic_0.19.1_linux_amd64.bz2 +bunzip2 restic_0.19.1_linux_amd64.bz2 +install -m755 restic_0.19.1_linux_amd64 /usr/local/bin/restic +restic version head -c 32 /dev/urandom | base64 > /root/.restic-passphrase && chmod 600 /root/.restic-passphrase # ⚠️ password manager, NOW.