Hallo Stefan
On 11.07.2017 14:00, Stefan Majewsky wrote:
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.
leider nein, da ich den vncserver am Wochenende letztendlich nicht über "systemctl start vncserver.service" gestartet habe.
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?
Der Link ist dort abgelegt. Ob ich jedoch "systemctl enable vncserver.service" ausgeführt hatte, kann ich gar nicht sagen. Ich habe es nochmal nachgeholt. Geändert hat sich offensichtlich nichts.
[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.
systemd-analyze plot bootchart.svg erzeugt eine Datei, an der sich Gimp (Linux) und Inkscape (Windows) verschlucken. Die Zeitachse ist zu lang und damit die Anzahl der dargestellten Objekte scheinbar zu groß. Danke aber für den Hinweis von der Analysemöglichkeit. Die kannte ich nicht. Ich werde mir, wenn ich den Rechner neu gestartet habe, die Targets mal anschauen.
Morgen werde ich mal mit systemctl show ... und systemctl status ... die Targets abklopfen.
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.
Ja das muss ich mal angehen. Ich hatte bisher jedoch noch nie die Zeit dafür gefunden. In das Thema systemd muss ich mich erst tiefer einarbeiten.
Vielen Dank und viele Grüße Andreas