我在将python脚本作为systemd服务运行时遇到问题

我有一个提醒应用程序,我想将其作为服务运行。我在“ / lib / systemd / system”下创建了一个名为“ reminder_py.service”的服务文件。 'reminder_py.service'中的命令:

[Unit]
Description=Dummy Service
After=multi-user.target
[email protected]

[Service]
Type=simple
Username=hrx
Groupname=hrx
ExecStart=/usr/bin/python3 /home/hrx/reminder/reminder.py
StandardInput=tty-force

[Install]
WantedBy=multi-user.target

我尝试使用以下命令启动它:

sudo systemctl daemon-reload
sudo systemctl enable reminder_py.service
sudo systemctl start reminder_py.service

但是sudo systemctl status reminder_py.service命令说:

hrx@X230:/lib/systemd/system$ sudo systemctl status reminder_py.service
● reminder_py.service - Dummy Service
     Loaded: loaded (/lib/systemd/system/reminder_py.service; enabled; vendor p>
     Active: Failed (Result: exit-code) since Sat 2020-08-15 23:59:06 +03; 2min>
    Process: 13952 ExecStart=/usr/bin/python3 /home/hrx/reminder/reminder.py (c>
   Main PID: 13952 (code=exited,status=2)

Aug 15 23:59:06 X230 systemd[1]: Started Dummy Service.
Aug 15 23:59:06 X230 systemd[1]: reminder_py.service: Main process exited,code>
Aug 15 23:59:06 X230 systemd[1]: reminder_py.service: Failed with result 'exit->

我该如何解决这个问题?

以下内容可能会有所帮助:

hrx@X230:/lib/systemd/system$ users
hrx

hrx@X230:/lib/systemd/system$ groups
hrx adm cdrom sudo dip plugdev lpadmin sambashare


hrx@X230:/lib/systemd/system$ ls -al | grep reminder_py.service 
-rwxrwxrwx  1 root root   256 Aug 15 23:55 reminder_py.service

我发现另一个站点评论可能对我有帮助。但是我不太明白他在说什么。

一个简单易用的教程。我要加一些警告-将.service文件编写为python脚本将以root身份运行,这可能会带来意想不到的后果。环境也将与普通用户不同。要修复,请在User=username行之前添加Group=groupnameExecStart。要添加脚本期望的环境变量,请在Environment=”variable_name=variable_value”行之前添加ExecStart行。

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...