Недавно я перенес свой сервер с виртуальной машины на новую машину.
С тех пор у меня иногда происходит необъяснимое событие: мой сервер Teamspeak останавливается (и автоматически перезапускается, потому что я так его настроил) при закрытии последнего открытого сеанса sftp / ssh, который был выполнен как пользователь, от имени которого запущена служба.
Так что в основном мой linux посылает сигнал kill на мой сервер TS3 при закрытии последнего открытого соединения ssh. Вот журнал logctl при сбое:
Jun 30 10:48:03 ubuntu-server ts3server_startscript.sh[7505]: Starting the TeamSpeak 3 server
Jun 30 10:51:30 ubuntu-server systemd[1]: teamspeak.service: Control process exited, code=exited status=203
Jun 30 10:51:30 ubuntu-server systemd[1]: teamspeak.service: Unit entered failed state.
Jun 30 10:51:30 ubuntu-server systemd[1]: teamspeak.service: Failed with result 'exit-code'.
Jun 30 10:51:33 ubuntu-server systemd[1]: teamspeak.service: Service hold-off time over, scheduling restart.
Я использую следующую конфигурацию SystemD:
[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak/teamspeak3-server_linux_amd64/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/home/teamspeak/teamspeak3-server_inux_amd64/ts3server_startscript.sh stop
PIDFile=/home/teamspeak/teamspeak3-server_linux_amd64/ts3server.pid
RestartSec=3
Restart=always
[Install]
WantedBy=multi-user.target
Есть идеи? Я не могу объяснить..