Leerzeichen in server_args von xinetd.conf durchlaufen

578
Bergi

Ich versuche, ein kleines Java-Programm zu Demonstrationszwecken im Netzwerk verfügbar zu machen. Ich verwende die xinetdKonfiguration und erstelle einen Dienst und kann alles zum Laufen bringen. Außer wenn der Pfadname ein Leerzeichen enthält, das ich an Java weitergebe:

service demo { disable = no log_type = FILE /var/log/xinetd.log type = UNLISTED port = 8080 socket_type = stream protocol = tcp wait = no server = usr/bin/java server_args = -cp /home/demo/example name/bin DemoMain /home/demo/example name/log.txt # ^ ^ } 

Wenn ich es im Terminal starte, funktioniert es wie erwartet:

me@host:~/$ java -cp /home/demo/example\ name/bin DemoMain /home/demo/example\ name/log.txt 

(Beachten Sie die mit Backslash verlaufenden Leerzeichen). Ich kann es jedoch nicht zum Arbeiten bringen xinetd(ohne den Ordner in etwas ohne Leerzeichen umzubenennen). Ich habe Backslash-Escaping, Double-Backslash-Escaping versucht, den Pfad in Anführungszeichen gesetzt - nichts.

Die Manpage fürxinetd.conf Erwähnungen im Abschnitt BUGS, dass keine Leerzeichen in Umgebungsvariablen eingefügt werden können. Gibt es eine ähnliche Einschränkung für server_args?

0

0 Antworten auf die Frage