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