5 Commits
Author SHA1 Message Date
Julien LutranandClaude Fable 5 a0e3a7dd86 doc: split per-host READMEs, gitea cross-repo links, consistency pass
- nuc/README.md and ks4/README.md carry the host sections (+ network
  flows) that lived in the top-level README; links rebased
- top README: repo links (doc/scripts on git.lutran.fr), index points
  at the new per-host pages
- cross-repo references now use https://git.lutran.fr/julien/scripts
  instead of relative ../scripts paths that resolve nowhere
- plakar-s3-data.md and plakar-incus-integration.md marked SUPERSEDED
  / RETIRED with pointers to restic-backup.md; their measurements and
  rationale kept
- install.md, local-backup-cron.md, incus-copy.md: crontab sections
  updated to the live schedule (01:00 replicas, 05:00 restic, Sun
  maintenance); retired legs labelled as such
- restic-backup.md: status live, cutover recorded, post-GC memory
  estimate, seed plan dated
- seafile-gc.md: online GC noted, stale 'crons commented out' removed
- ks2/: what-ks2-does-today rewritten (nothing writes to it any more),
  legs table and gates reflect restic, decommission steps updated
- db-exclude replaces the plakar-era config name (script keeps a
  fallback)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-28 16:04:07 +02:00
Julien LutranandClaude Fable 5 33b2a87d8f seafile-gc closure (515,842 inodes final); restic-backup: cron PATH gotcha
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-28 12:53:12 +02:00
Julien LutranandClaude Fable 5 26ae55163e seafile-gc: online-GC verified, recurring cron design, -r purge results (-277G total)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-27 16:54:50 +02:00
Julien LutranandClaude Fable 5 f6d488c1e9 seafile-gc: results — 24.9M->5.6M inodes, blocks -235G, 21h33 rm-fs
Documents library identified as commit-storm source (19M fs objects,
~4.9M commits for 2.9G of data); its commit store survives GC and is
retired by recreating the library after fixing the offending client.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-27 15:22:17 +02:00
Julien LutranandClaude Fable 5 6ebc93db2e seafile-gc: diagnose never-run GC (24.9M inodes) and the reclamation procedure
GC never ran in the server's life: 13 ghost libraries, unlimited
history on 16/17 repos, 867G blocks vs 710G live data, and an
fs/commits object swarm that makes per-file backup walks take days.
Procedure: pre-GC zfs snapshot, keep_days=90 default, offline
seaf-gc (+ --rm-deleted, --rm-fs), measure, quarterly GC schedule,
then re-decide the S3 backup mechanism and the 13.x upgrade.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-26 16:37:05 +02:00