On Dienstag, 11. Juli 2017 13:17:41 CEST Andreas Oettel wrote:
die daemon.log
Schau mal bitte in `sudo journalctl -u vncserver.service`, ob da noch mehr als das steht. Ich weiß nicht genau, wie das Syslog-Forwarding funktioniert. Normalerweise schreibt systemd auch ins Journal, wenn er die Unit starten will, aber nicht kann.
Ansonsten gehe ich mal davon aus, dass du natürlich `systemctl enable vncserver.service` gemacht hast? Liegt der richtige Symlink in /etc/systemd/ system/multi-user.target.wants?
[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target Wants=network-online.target ... [Install] WantedBy=multi-user.target
WantedBy sieht erstmal gut aus, denn multi-user.target entspricht Runlevel 2 (laut `man 7 systemd.special`). Mach mal `systemd-analyze plot > bootchart.svg` und schau dir das Bild an, ob die Targets aus `After=` und `Wants=` beim Booten gestartet werden, bzw. ob der vncserver.service dort erwähnt wird.
Ansonsten kannst du das Bild auch gerne mal als Antwort schicken (sofern da nix geheimes drauf ist), dann schau ich mal genauer.
das zweite ist das eigentliche Startscript
Nicht das ursprüngliche Problem, aber da wir schon mal bei dem Thema sind: Das kannst du eigentlich alles in die systemd-Unit selber packen. Die Variablen (GEOMETRY etc.) kannst du in einer separaten Datei lassen und über das Feld EnvironmentFile= laden, siehe `man 7 systemd.exec` unter "EnvironmentFile=". Die Variablen dort können dann in ExecStart= und ExecStop= verwendet werden, also z.B. `ExecStart=/usr/bin/tightvncserver $OPTIONS`, siehe `man 7 systemd.service` unter "COMMAND LINES". ExecRestart= kannst du wegwerfen, systemctl ist schlau genug, dann selber `stop && start` zu machen.
Schöne Grüße Stefan