是否可以创建一个在启动时运行服务的计时器,但频率不超过每周一次?
就我而言,在启动时对 SSD 磁盘运行 TRIM ( ) 会很有帮助fstrim
,但一旦发生这种情况,我想等待一周,以防当天我会重新启动系统几次。
内部逻辑是,启动时计时器将检查最后执行时间,当最后执行时间发生在过去 7 天内时,它不会执行它也不会更新最后执行时间。
答案1
以下定时器文件来自这里,但它基本上是许多系统的默认值。您的系统实际上可能包含一个,它可能位于下面/lib/systemd/system/fstrim.timer
,或者您可以检查systemctl status fstrim.timer
fstrim.timer
[Unit]
Description=Discard unused blocks once a week
Documentation=man:fstrim
[Timer]
OnCalendar=weekly
AccuracySec=1h
Persistent=true
[Install]
WantedBy=timers.target
如果您让电脑保持运行状态,此操作将每周运行一次 - 如果您错过了上次运行的时间(超过一周后将其重新打开),此操作将立即运行(另请参阅拱门维基:实时定时器):
激活后,如果错过了最后一次启动时间(选项 Persistent=true),例如由于系统关闭,它会立即触发服务