Ich habe meinen Server vor Kurzem von einer virtuellen Maschine auf eine neue Maschine verschoben.
Seitdem tritt bei mir manchmal das unerklärliche Ereignis auf, dass mein Teamspeak-Server stoppt (und automatisch neu startet, weil ich ihn so konfiguriert habe), wenn die letzte offene Sitzung von SFTP/SSH geschlossen wird, bei der ich als der Benutzer angemeldet war, unter dem der Dienst ausgeführt wird.
Mein Linux sendet also grundsätzlich ein Kill-Signal an meinen TS3-Server, wenn die letzte offene SSH-Verbindung geschlossen wird. Hier das Journalctl-Protokoll beim Absturz:
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.
Ich verwende die folgende SystemD-Konfiguration:
[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
Irgendwelche Ideen? Ich kann es nicht erklären.
Antwort1
Wahrscheinlich mit dem Verweilen zu tun, wie beschriebenHier.
Lösung:
sudo loginctl enable-linger <username>