So starten Sie den Teamspeak-Server beim Neustart als bestimmter Benutzer

So starten Sie den Teamspeak-Server beim Neustart als bestimmter Benutzer

Die Linux-Version auf dem Server ist Centos 7.0.

Der Teamspeak-Server wird mit diesem Befehl ausgeführt:

./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start

Mein Server ist nicht zu 100 % verfügbar. Daher möchte ich, dass das Serverprogramm automatisch mit einem Nicht-Root-Benutzer gestartet wird.

Antwort1

Habe diese Lösung gefunden:

crontab -e
i
@reboot /opt/teamspeak3-server_linux-x86/ts3server_startscript.sh restart
<esc>
:wq

Antwort2

Wenn Sie zum Starten des Servers überhaupt keine rootBerechtigungen benötigen, können Sie etwas wie

sudo -u <username> ./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start

um es als Benutzer zu starten <username>.

Diese Befehlszeile muss in einer Datei platziert werden, die beim Start ausgeführt wird.

Wenn ich mich richtig erinnere, gibt es eine Datei für lokale Sachen, die ungefähr so ​​heißt wie 99-localin /etc/init.d/. Falls nicht, können Sie selbst eine schreiben und dabei eine andere Startdatei als Vorlage verwenden. Um die Datei so zu planen, dass sie beim Start ausgeführt wird, verwenden Sie den folgenden Befehl:

chkconfig --level 345 <your file name> on

wobei <your file name>relativ zu ist /etc/init.d/.

Beachten Sie, dass Sie sudoden vollständigen Pfad angeben müssen (z. B. /usr/bin/sudo), um die Möglichkeit zu verhindern, dass eine andere Version von ausgeführt wird, die sudosich irgendwo im Suchpfad befindet. Außerdem sollten Sie das .in auflösen ./opt/...(bei Ausführung aus dem Stammverzeichnis wäre es /opt/...).

verwandte Informationen