Zum Inhalt springen

Xrdp/Problembehebung

Aus Foxwiki

Xrdp/Problembehebung - Beschreibung

Beschreibung

Installation

< /syntaxhighlight>

== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line copy>
< /syntaxhighlight>

=== Optionen ===
{| class="wikitable sortable options gnu big"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
| || || || 
|-
|}

=== Parameter ===
=== Umgebungsvariablen ===
=== Exit-Status ===
{| class="wikitable options col1center big"
|-
! Wert !! Beschreibung
|-
| 0 || Erfolg
|-
| >0  || Fehler
|}

== Anwendung ==
<syntaxhighlight lang="bash" highlight="1" line copy>
< /syntaxhighlight>

<!-- output -->
<syntaxhighlight lang="bash" highlight="" line>
< /syntaxhighlight>

=== Problembehebung ===

== Konfiguration ==
=== Dateien ===
{| class="wikitable options big"
|-
! Datei !! Beschreibung
|-
| || 
|-
| || 
|}

<noinclude>

== Anhang ==
=== Siehe auch ===
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}

=== Dokumentation ===
<!--
; Man-Page 
# [https://manpages.debian.org/stable/procps/pgrep.1.de.html prep(1)]

; Info-Pages 
-->

=== Links ===
==== Projekt ====
==== Weblinks ====

<!--
{{DEFAULTSORT:new}}
{{DISPLAYTITLE:new}}
-->

[[Kategorie:new]]

</noinclude>

= TMP =
==== Der XRDP-Daemon startet nach einem Neustart nicht ====
; xrdp.service log
 [ERROR] trans_listen_address failed
 [ERROR] xrdp_listen_main_loop: xrdp_listen_get_port failed

* Dieser Fehler kann beim Systemstart auftreten, da XRDP versucht, sich an eine Netzwerkschnittstelle zu binden, die noch keine IP-Adresse erhalten hat

; Lösung
Es muss ein Hilfsdienst erstellt werden, der auf die Initialisierung der Schnittstelle wartet. Dazu wird ein Skript unter dem Pfad ''/usr/local/sbin/wait-enp8s0.sh'' erstellt:
<syntaxhighlight lang="bash" highlight="" copy line>
#!/bin/sh
IFACE="enp8s0"
ADDR="10.20.0.1"
TIMEOUT=60

i=0
while [ "$i" -lt "$TIMEOUT" ]; do
    if ip -4 addr show dev "$IFACE" | grep -q " $ADDR/"; then
        exit 0
    fi
    i=$((i+1))
    sleep 1
done

exit 1
  • Als nächstes muss die Datei ausführbar gemacht werden:
sudo chmod +x /usr/local/sbin/wait-enp8s0.sh
  • Erstellen einer Dienst-Unit /etc/systemd/system/wait-enp8s0.service:
[Unit]
Description=Wait for 10.20.0.1 on enp8s0
After=network.target
Wants=network.target

[Service]
Type=oneshot
ExecStart=/usr/local/sbin/wait-enp8s0.sh
RemainAfterExit=yes
sudo systemctl daemon-reload
  • Schaffung einer Abhängigkeit des Hauptdienstes vom Hilfsdienst:
sudo systemctl edit xrdp
  • Inhalt der Datei:
[Unit]
After=wait-enp8s0.service
Requires=wait-enp8s0.service
  • Neustart des Dienstes
sudo systemctl daemon-reload


Weblinks

  1. https://github.com/neutrinolabs/xrdp/issues/2297
  2. https://pastebin.com/Su2igSwn