← TechNotes

systemd-таймеры без граблей

12 октября 2026

Классика: timer «не работает», потому что смотрели не на тот юнит. Порядок диагностики:

systemctl --user list-timers
systemctl --user status my-task.timer
journalctl --user -u my-task.service -n 50

OnUnitActiveSec=70 считает от последнего завершения — для «прогрева раз в минуту» идеально, в отличие от OnCalendar, который ждёт календарной границы. AccuracySec=5 снижает системную гранулярность, иначе будильник приедет через минуту.

Вторые грабли — Persistent=true на ноутбуке с гиги-режимом: после пробуждения systemd догоняет все пропущенные запуски разом. Если догонять не надо — не включайте.

И третье: таймер в default.target живёт до logout. Для «дежурного» юзера — loginctl enable-linger.

← назад