Xrdp/Problembehebung: Unterschied zwischen den Versionen
Erscheinungsbild
K Textersetzung - „wikitable“ durch „table table-striped table-hover“ |
|||
| (5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
''' | '''Xrdp/Problembehebung''' | ||
== Beschreibung == | == Beschreibung == | ||
| Zeile 8: | Zeile 8: | ||
[ERROR] xrdp_listen_main_loop: xrdp_listen_get_port 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 | ; Lösung | ||
| Zeile 14: | Zeile 14: | ||
* Auf Initialisierung der Schnittstelle warteen | * Auf Initialisierung der Schnittstelle warteen | ||
Skript | Skript | ||
''/usr/local/sbin/wait-enp8s0.sh'' | |||
<syntaxhighlight lang="bash" highlight="" copy line> | <syntaxhighlight lang="bash" highlight="" copy line> | ||
#!/bin/sh | #!/bin/sh | ||
| Zeile 23: | Zeile 25: | ||
i=0 | i=0 | ||
while [ "$i" -lt "$TIMEOUT" ]; do | 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 | done | ||
| Zeile 81: | Zeile 83: | ||
=== Optionen === | === Optionen === | ||
{| class=" | {| class="table table-striped table-hover sortable options gnu big" | ||
|- | |- | ||
! Unix !! GNU !! Parameter !! Beschreibung | ! Unix !! GNU !! Parameter !! Beschreibung | ||
| Zeile 92: | Zeile 94: | ||
=== Umgebungsvariablen === | === Umgebungsvariablen === | ||
=== Exit-Status === | === Exit-Status === | ||
{| class=" | {| class="table table-striped table-hover options col1center big" | ||
|- | |- | ||
! Wert !! Beschreibung | ! Wert !! Beschreibung | ||
| Zeile 98: | Zeile 100: | ||
| 0 || Erfolg | | 0 || Erfolg | ||
|- | |- | ||
| >0 | | >0 || Fehler | ||
|} | |} | ||
| Zeile 113: | Zeile 115: | ||
== Konfiguration == | == Konfiguration == | ||
=== Dateien === | === Dateien === | ||
{| class=" | {| class="table table-striped table-hover options big" | ||
|- | |- | ||
! Datei !! Beschreibung | ! Datei !! Beschreibung | ||
| Zeile 143: | Zeile 145: | ||
==== Projekt ==== | ==== Projekt ==== | ||
==== Weblinks ==== | ==== Weblinks ==== | ||
<!-- | <!-- | ||
{{DEFAULTSORT:new}} | {{DEFAULTSORT:new}} | ||
{{DISPLAYTITLE:new}} | {{DISPLAYTITLE:new}} | ||
--> | --> | ||
</noinclude> | </noinclude> | ||
Aktuelle Version vom 29. Juli 2026, 11:03 Uhr
Xrdp/Problembehebung
Beschreibung
XRDP-Daemon startet nach Systemneustart 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
Hilfsdienst erstellen
- Auf Initialisierung der Schnittstelle warteen
Skript
/usr/local/sbin/wait-enp8s0.sh
#!/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
Installation
Aufruf
Optionen
| Unix | GNU | Parameter | Beschreibung |
|---|---|---|---|
Parameter
Umgebungsvariablen
Exit-Status
| Wert | Beschreibung |
|---|---|
| 0 | Erfolg |
| >0 | Fehler |
Anwendung
Problembehebung
Konfiguration
Dateien
| Datei | Beschreibung |
|---|---|
Anhang
Siehe auch