fix(fw): curb disk growth (14d gc retention, journald cap, qemu discard) #193
No reviewers
Labels
No labels
bug
enhancement
in-progress
needs-info
needs-triage
p0
ready-for-agent
ready-for-human
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Cloonar/nixos!193
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/fw-disk-reclaim"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
fw root (
/dev/nvme0n1p2, 468G) was at 85% — 377G used, 68G free. No single leak; the disk is dominated by VM images (~227G) and the nix store (93G). These three changes slow the recurring fill (the large one-time reclaim — orphaned 36G microvm-dev image, retired-container data, qcow2 compaction — is operational and done by hand on the host).What
nix.gc60d → 14d retention. The 60-day window pinned ~2769 system generations and kept/nix/storeat ~93G; the weekly gc was only freeing ~1.3G/run because almost everything was inside the window. 14d keeps ample rollback while letting gc actually reclaim.SystemMaxUse=500M. Archived journals had grown to ~4G. Alloy ships logs off-box, so a small on-host ring buffer is enough.discard=unmap,detect-zeroes=unmapon the disk drive. This is the root cause of qcow2 bloat — without it, freed guest blocks never return to the host and the image only ever grows to its high-water mark (dev-vm 95G/100G, openclaw-vm 34G). With discard, guestfstrim/-o discardshrinks the qcow2. Takes effect on the next deliberatesystemctl restart <name>-vm(units arerestartIfChanged = false).Test
Pre-commit dry-build passed for all hosts (amzebs-01, dev, fw, mail, nas, nb, web-arm).
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.