From d525e63050eadfa22c22e7d266ee8026ddbaf145 Mon Sep 17 00:00:00 2001 From: kurogeek Date: Thu, 24 Sep 2026 09:21:46 +0000 Subject: [PATCH] machines/stellio: persist the journal Storage=volatile left nothing behind for the 2026-09-23/24 reboots: the last persisted entry is journald stopping during the 2026-09-22 switch, and /sys/fs/pstore is empty too. Keep the eMMC-wear intent with a 256M cap and a 1 min sync interval matching the ext4 commit=60. --- machines/stellio/configuration.nix | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/machines/stellio/configuration.nix b/machines/stellio/configuration.nix index 5e9b2f07..3ba7f91c 100644 --- a/machines/stellio/configuration.nix +++ b/machines/stellio/configuration.nix @@ -35,20 +35,22 @@ clan.core.settings.machine.description = "Flint-2 router"; # Root is ext4 on the Flint 2's eMMC: keep steady-state writes off it. - # Logs live in RAM (64M; the router needs them for pppd/kea debugging, - # unlike sirius which drops them), /tmp is tmpfs, no core dumps, and - # ext4 skips atime updates and flushes its journal every 60 s instead - # of 5 s so the small periodic writes (Kea leases, timesyncd clock, - # speedtest textfile) coalesce. A power cut loses at most a minute of - # that state, none of which matters on a gateway. + # The journal is persistent but bounded (256M) and synced once a minute + # (the router needs logs for pppd/kea debugging and, after the Sep 2026 + # unlogged reboots, for post-mortem; volatile storage left nothing). + # /tmp is tmpfs, no core dumps, and ext4 skips atime updates and + # flushes its journal every 60 s instead of 5 s so the small periodic + # writes (Kea leases, timesyncd clock, speedtest textfile, journal) + # coalesce. A power cut loses at most a minute of that state. fileSystems."/".options = [ "noatime" "commit=60" ]; boot.tmp.useTmpfs = true; services.journald.settings.Journal = { - Storage = "volatile"; - RuntimeMaxUse = "64M"; + Storage = "persistent"; + SystemMaxUse = "256M"; + SyncIntervalSec = "1m"; }; systemd.coredump.enable = false;