我在桌面上使用 ZFS。我希望zed(8)
(ZFS 事件守护进程) 持续运行,以便记录诸如清理、修剪和问题之类的内容。
由于某种原因,当我从挂起状态恢复桌面后,zed 会退出。以下是 systemd 日志的片段:
Dec 14 08:29:06 host kernel: PM: suspend exit
Dec 14 08:29:06 host systemd-resolved[22015]: Clock change detected. Flushing caches.
Dec 14 08:29:06 host zed[22320]: Exiting
Dec 14 08:29:06 host systemd-sleep[54610]: System returned from sleep state.
Dec 14 08:29:06 host systemd[1]: zfs-zed.service: Deactivated successfully.
有人知道为什么 zed 在恢复后退出吗?
我搜索了一堆内容,但没有找到任何代码/配置可以在恢复后故意杀死/停用 zed。
我的解决方法是手动修补服务,如下所示:
--- /tmp/zfs-zed.service 2023-12-14 10:45:58.730118213 -0800
+++ /lib/systemd/system/zfs-zed.service 2023-12-14 10:46:34.765996601 -0800
@@ -5,7 +5,7 @@
[Service]
ExecStart=/usr/sbin/zed -F
-Restart=on-abort
+Restart=always
[Install]
Alias=zed.service
然后运行:
sudo systemctl daemon-reload
sudo systemctl enable zfs-zed.service --now
答案1
在 OpenZFS 2.2 中,zedrestart
设置从 更改为on-abort
。always
https://github.com/openzfs/zfs/commit/bd9dc5a1dcc1d2ec88477af3f6f0bc8c9bdef286
我确认我有zfs-zed
版本2.1.5-1ubuntu6~22.04.2
,所以我现在需要使用解决方法。