我一直在试图弄清楚何时将我的脚本设置为启动以及将什么用作 After= 参数。
我需要的是尽可能晚地启动我的服务......有点像堆栈中的最后一个服务。我定义。需要安装 /home。我不能依赖 wpa_supplicant 或 mdns,因为它没有在设备上配置。
我还阅读了 systemd 文档,但无法弄清楚在服务文件中将什么服务设置为 After= 选项。
我一直在试图弄清楚何时将我的脚本设置为启动以及将什么用作 After= 参数。
我需要的是尽可能晚地启动我的服务......有点像堆栈中的最后一个服务。我定义。需要安装 /home。我不能依赖 wpa_supplicant 或 mdns,因为它没有在设备上配置。
我还阅读了 systemd 文档,但无法弄清楚在服务文件中将什么服务设置为 After= 选项。
After=ABC.service 表示你的服务会在 ABC.service 启动后启动,但并不保证,所以要确保你的服务只有在 ABC.service 后启动,使用 Requires=ABC.service
或者
您可以使用下面的脚本来实现这一点。安装家庭后,在设备的任何位置创建文件,然后启动您的服务
[Service]
Type=oneshot
ExecStart=/bin/ABC -c 'while [ ! -e /tmp/YOUR_FILE ]; do sleep 0.1 ; done'
ABC 是您的服务可执行文件,它会等到它没有在 /tmp/ 位置获得 YOUR_FILE。
希望这可以帮助。