我使用的是 Raspberry Pi B,带有 Raspbian。升级到 Jessie 后,看门狗守护进程不再在启动时启动。使用“sudo service watchdog start”手动启动它确实有效。我试过:
- 清除并重新安装看门狗
update-rc.d watchdog defaults && update-rc.d watchdog enable
systemctl enable watchdog
产生这个错误:
单元文件没有 [Install] 部分。它们不应该使用 systemctl 来启用。
我检查了
- syslog 与 systemd 详细调试,没有结果。除了看门狗设备之外,没有提及任何内容。
systemctl list-units | grep -i watchdog
是空的(除非我手动启动它)- 我的默认运行级别是5,看门狗的优先级
/etc/rc5.d/
也是5。
我还能尝试什么?
答案1
打开
/lib/systemd/system/watchdog.service
并添加
[Install]
WantedBy=multi-user.target
Systemd 需要单元的 [Install] 部分来了解如何启用/禁用该单元。
答案2
系统上安装的服务附带存储在该/usr/lib/systemd/system/
目录中的默认单元文件。系统管理员不应直接修改这些文件,因此任何自定义都必须仅限于该/etc/systemd/system/
目录中的配置文件。
更新:
只需将默认配置 /lib/systemd/system/[service name].service 链接到 /etc/systemd/system/multi-user.target.wants/[service name].service,又名:
# ln /lib/systemd/system/watchdog.service /etc/systemd/system/multi-user.target.wants/watchdog.service
然后重新启动系统:
# reboot
并检查自动启动的服务:
# systemctl status watchdog.service