[英]Ubuntu systemd custom service failing with python script
想在 Ubuntu 中获得有关 systemd 守护进程服务的一些帮助。我编写了一个 python 脚本来禁用 Dell XPS 上的触摸屏,这与其说是一个有用的功能,不如说是一个问题。 该脚本有效,但我不想一直启动它,这就是为什么我想到编写服务文件并让 systemd 在启动时为我启动它的想法。
我遇到的问题是“(code=exited,status=1/FAILURE)”。 这是我的第一次,在尝试之前我做了一些研究,但是,我现在无法弄清楚。 任何想法将不胜感激。
这是“systemctl status disable-ts.service output:
● disable-ts.service - Disable TouchScreen
Loaded: loaded (/etc/systemd/system/disable-ts.service; enabled; vendor
preset: enabled)
Active: failed (Result: exit-code) since Sat 2019-02-23 01:31:27 PST;
6min ago
Process: 2667 ExecStart=/usr/bin/python disable-ts.py
(code=exited,status=1/FAILURE)
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: disable-ts.service: Service
hold-off time over, schedul
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: disable-ts.service:
Scheduled restart job, restart coun
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: Stopped Disable TouchScreen.
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: disable-ts.service: Start
request repeated too quickly.
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: disable-ts.service: Failed
with result 'exit-code'.
Feb 23 01:31:27 roman-XPS-15-9560 systemd[1]: Failed to start Disable
TouchScreen.
这是服务文件本身:
[Unit]
Description=Disable TouchScreen
After=multi-user.target
[Service]
User=roman
Type=forking
WorkingDirectory=/home/roman/Python-Scripts/
ExecStart=/usr/bin/python disable-ts.py
Restart=always
[Install]
WantedBy=multi-user.target
创建这个之后,我确实运行了:
sudo systemctl daemon-reload
sudo systemctl enable disable-ts.service
sudo systemctl start disable-ts.service
我今天也遇到了完全相同的问题。 我到处搜索解决方案但没有任何效果,我在上面遇到了这个问题,就像上面的用户 Sean DiSanti 一样。 我在类型中放置了“简单”并指定了一个工作目录。 有效!
这是解决我的问题的完整服务文件。
[Unit]
Description=Upload Data
After=multi-user.target
[Service]
User=root
Type=simple
WorkingDirectory=/home/aws/webUpload/
ExecStart=/usr/bin/python3 upload_data.py
[Install]
WantedBy=multi-user.target
今天自己遇到了这个确切的问题,几乎完全相同的设置,除了我使用“简单”作为类型,并且没有指定用户或工作目录。 添加工作目录对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.