-1
我试图通过systemd启动一个名为pigpiod.service
的服务。它用三个命令调用一个脚本。第二个被遗漏了。为什么是这样?系统服务在脚本中遗漏了命令
/etc/systemd/system/pigpiod.service:
[Unit]
Description=Starts pigpiod
Before=touchscreen.service
[Service]
ExecStart=/home/sysop/pigpiod.sh
[Install]
WantedBy=multi-user.target
/home/sysop/pigpiod.sh:
#!/bin/sh
touch /home/sysop/before_pigpiod
/usr/bin/pigpiod
touch /home/sysop/after_pigpiod
- 当重新启动两个文件获得创建的机器
/home/sysop/
,但pigpiod
未启动。 - 当通过
sudo systemctl start pigpiod
手动启动服务时,会发生同样的情况。 - 手动运行
sudo /home/sysop/pigpiod.sh
pigpiod
实际开始!
这是sudo systemctl status pigpiod -l
输出开机之后:
● pigpiod.service - Starts pigpiod
Loaded: loaded (/etc/systemd/system/pigpiod.service; enabled)
Active: inactive (dead) since Sat 2017-09-16 20:02:03 UTC; 2min 29s ago
Process: 440 ExecStart=/home/sysop/pigpiod.sh (code=exited, status=0/SUCCESS)
Main PID: 440 (code=exited, status=0/SUCCESS)
Sep 16 20:02:02 kivypie systemd[1]: Starting Starts pigpiod...
Sep 16 20:02:02 kivypie systemd[1]: Started Starts pigpiod.
为什么,那systemd跳过的/usr/bin/pigpiod
执行,但手动运行该脚本根不?
我的系统:覆盆子裨模型3B,Raspbian的GNU/Linux 8(杰西)
Stack Overflow是用于编程和发展问题的站点。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。 – jww