Есть юнит, который запускает файл, который запускает сервер в screen. Команда запуска работает хорошо. Команда stop нет.
Чтобы остановить сервер достаточно в screen написать команду 'stop'. Если команду '/usr/bin/screen -S serverRPG -X stuff 'stop^M'' я пропишу в терминале вручную, то сервер будет выполнять команды для завершения и в итоге screen закроется [screen is terminating]. Однако, если я попытаюсь остановить сервер командой systemctl stop юнит, то сервер получает команду stop(я вижу, что она пришла в терминале) и останавливается сразу, без выполнения команд по завершению. Я сразу получу [screen is terminating]. Что я делаю не так?
[Unit]
Description=Minecraft server RPG
After=multi-user.target
[Service]
ExitType=cgroup
Type=forking
User=home
#WorkingDirectory=/home/palka444/'Server minecraft'/'Server steampunk and RPG'
#ExecStart=/bin/bash '/home/palka444/'Server minecraft'/'Server steampunk and RPG'/start.sh'
ExecStart=/bin/bash '/usr/local/start.sh'
ExecStop=/usr/bin/screen -S serverRPG -X stuff 'stop^M'
ExecStop=/usr/bin/echo "Остановка сервера RPG"
TimeoutStopSec=10
[Install]
WantedBy=multi-user.target