(gelöst)Daemon nicht als root ausführen

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Guyver
Beiträge: 16
Registriert: 03.08.2010 10:12:57

(gelöst)Daemon nicht als root ausführen

Beitrag von Guyver » 03.08.2010 10:17:40

Hallo,

ich hoffe Ihr könnt mir weiterhelfen. Ich möchte einen Teamspeak3 - Server als Daemon starten. Das Problem ist ich weiß nicht wie ich den Dienst nicht als root ausführen kann.
Ich nutze Debian 5.05 in Minimalkonfiguration.
Könnt Ihr mir evtl helfen?

Danke euch
Zuletzt geändert von Guyver am 31.12.2010 18:26:21, insgesamt 1-mal geändert.

diggerchen
Beiträge: 115
Registriert: 15.01.2005 22:35:26

Re: Daemon nicht als root ausführen

Beitrag von diggerchen » 03.08.2010 11:55:16

Ich verwende dafür folgendes kleine Script in /etc/init.d:

Code: Alles auswählen

#!/bin/bash
TSUSER="tsuser"
/bin/su ${TSUSER} -c "/home/tsuser/ts3/ts3server_startscript.sh $1"
Damit klappt der Autostart prima. In dem aufgerufenen Script "ts3server_startscript.sh" sollte die Varibale "BINARYPATH" korrekt belegt sein. Ist nicht schön aber es funktioniert :wink:
Zuletzt geändert von diggerchen am 03.08.2010 11:58:31, insgesamt 1-mal geändert.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Daemon nicht als root ausführen

Beitrag von rendegast » 03.08.2010 11:56:49

Aus teamspeak3-server_linux-x86-3.0.0-beta26.tar.gz, ts3server_startscript.sh :

Code: Alles auswählen

...
				export LD_LIBRARY_PATH="${LIBRARYPATH}:${LD_LIBRARY_PATH}"					
				"./${BINARYNAME}" ${COMMANDLINE_PARAMETERS} > /dev/null & 
...
Das Skript ist gedacht für direkte Ausführung durch einen nicht-root-Benutzer.
Das binary ts3server_linux_[x86|amd64] scheint keine Möglichkeit zu besitzen, selbst einen Benutzer einzustellen.

Daraus ein richtiges Startskript machen, und ala /etc/init.d/dbus:

Code: Alles auswählen

...
  log_daemon_msg "Starting $DESC" "$NAME"
  start-stop-daemon --start --quiet --pidfile $PIDFILE \
    --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS
  log_end_msg $?
...
Mit dem Konstrukt 'start-stop-daemon ... --user $TSSERVERUSER ...'?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

diggerchen
Beiträge: 115
Registriert: 15.01.2005 22:35:26

Re: Daemon nicht als root ausführen

Beitrag von diggerchen » 03.08.2010 12:14:48

rendegast hat geschrieben:[...]
Daraus ein richtiges Startskript machen, und ala /etc/init.d/dbus:
[...]
Das ist sicher die "schönere" Lösung :)

Benutzeravatar
Snoopy
Beiträge: 4297
Registriert: 17.11.2003 18:26:56
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Rh.- Pflz.

Re: Daemon nicht als root ausführen

Beitrag von Snoopy » 03.08.2010 12:15:57

diggerchen hat geschrieben:Das ist sicher die "schönere" Lösung :)
(auch wenn es nicht direkt zur Lösung der eigentlichen Frage geht, aber evtl. nicht so bekannt..)
Die beste Lösung wäre sicherlich auf Mumble [1] umzusteigen :mrgreen:

[1] http://mumble.sourceforge.net/

Guyver
Beiträge: 16
Registriert: 03.08.2010 10:12:57

Re: Daemon nicht als root ausführen

Beitrag von Guyver » 04.08.2010 00:10:34

@diggerchen: Super, Dein Skript hat einwandfrei funktioniert. Danke :hail:

@Snoopy: Mumble... kann man das Essen? :lol: . Jetz mal im ernst, Mumble schied leider aus.

Antworten