背景
我正在编写一个要在 Raspberry Pi 2 上的 Raspbain 中运行的简单脚本,只需打开一个 LED 以指示我已准备好从台式计算机连接 SSH。
脚本在这里并不重要,只提一下,因为我使用频率控制,所以脚本运行无限循环,频繁地打开和关闭 LED。所以这是一个简单服务的例子。但是,至少这个问题的公认答案建议我将类型设置为空闲。所以我的服务文件看起来像
[Unit]
Description=Turn on LED after SSH is ready
[Service]
Type=idle
ExecStart=/usr/bin/sshready.py
[Install]
Wants=network-online.target
After=network-online.target
Run Code Online (Sandbox Code Playgroud)
影响
该服务按预期运行。但是,我注意到在 LED 亮起后立即在台式计算机中启动 Putty 时,登录提示不会立即出现。所以我检查了
$ systemd-analyze plot > output.svg
Run Code Online (Sandbox Code Playgroud)
结果显示
题
看起来我的服务没有在 之后启动network-online.target,这里有什么问题,我该如何解决?