我正在尝试在启动时在 systemd 服务上运行屏幕,以便我可以稍后在需要时在交互式 shell 上检查它,但会话不会保持运行,而且显然它甚至没有启动。
这是我的单位文件。
Description=MyService
After=network.target
[Service]
type=forking
User=<myuser>
Group=<myuser>
WorkingDirectory=/home/myuser
ExecStart=/usr/bin/screen -L -d -m -S myservice /home/myuser/runmycommands.sh
[Install]
WantedBy=multi-user.target
这是我的脚本
cd mysoftware
echo "This doesn't work" >> /home/myuser/log.log
./mysoftware
我得到的只是一个死屏:
737.myservice (02/23/2021 10:59:18 PM) (Dead ???)
如果我复制 ExecStart 行并直接运行它,它就可以起作用。
myuser@mymachine:~$ /usr/bin/screen -L -d -m -S myservice /home/myuser/runmycommands.sh
myuser@mymachine:~$ screen -wipe
There is a screen on:
1026.myservice (02/23/2021 11:14:46 PM) (Detached)
有任何想法吗?