我写了一个名为/etc/systemd/system/mytest.service。然后我想启动一个新的终端窗口,并在新的终端控制台上打印一些命令。
文件 mytest.service 包含以下内容:
[Unit]
Description= Test
After= network.target
[Service]
ExecStart=/usr/bin/gnome-terminal -- "echo 'test' > /home/me/test.log; echo 'abcd';"
StandardOutput=journal+console
[Install]
WantedBy=default.target
运行sudo systemctl start mytest
并打印状态后我收到以下错误消息:
Sep 23 21:09:50 ub20 gnome-terminal[4205]: Unable to init server: Could not connect: Connection refused
Sep 23 21:09:50 ub20 gnome-terminal[4205]: # Failed to parse arguments: Cannot open display:
Sep 23 21:09:50 ub20 systemd[1]: ethminer.service: Main process exited, code=exited, status=1/FAILURE
这里有什么问题?
答案1
- 在 $HOME/.config/systemd/user 中创建 systemd 用户文件夹
- 创建或复制服务文件到文件夹,例如:我的测试服务
- 跑步
systemctl --user enable mytest.service