Nach 15.2 upgrade -> xrdp startet mit falschem Bildschirm.

Hallo,

@Admin: Thema kann auch im Netzwerk forum plaziert werden.

Wie der Titel schon sagt. Nach Upgrade 15.1 -> 15.2 hat sich das Verhalten des xrdp geändert. Ich benutze ‘Remote Desktop Connection’ vom anderen OS für die Verbindung zum Laptop mit Leap 15.1 und jetzt 15.2. Bei 15.1 bekam ich unter RDP den selben Schirm zu sehen wie beim Laptop. Jetzt sieht der ganz anders aus.

Was ist passiert?
Und wie kriege ich den Schirm vom Laptop wieder im RDP zu sehen?

Schirm vom Laptop (So sah bei 15.1 auch der Schirm vom RDP aus):

http://skywatcher.space/download/laptop.jpg

Schirm vom RDP in 15.2:
http://skywatcher.space/download/xrdp.jpg

Vielen Dank & Grüße,
Gert

KDE vs Gnome?

@Sauerland

OK, ich verstehe Deinen Kommentar als Frage, ob ich gemerkt habe, dass ein Desktop KDE anzeigt, der andere Gnome. Ich hatte sowas vermutet. Aber das hilft mir im Moment nicht weiter. Wenn ich vor dem Laptop sitze und ich sehe einen Desktop ‘X’ und dann zu dem selben Laptop beim selben user Account, (selbe home Directory mit ‘erwartet’ selben Startinstruktionen für Desktop etc.) eine RDP Verbindung aufbaue, erwarte ich erstmal auch den Desktop ‘X’ zu sehen. Das das nicht der Fall ist, verwundert erstmal. (Oder??) Und daher meine Frage, was da los ist, und dann der Wunsch, dass das natürlich nicht so sein soll. Also, wo kann man hier den Debug ansetzen und die Sache korrigieren?

Vielen Dank & Grüße,
Gert

Ich hab keine Ahnung, warum das so ist, musst du mal in den Einstellungen nachschauen.

Oder wie du es aufrufst…

Hallo,

Das Problem hat sich gelöst. Beim XRDP Config in /etc/xrdp/startwm.sh kann man den Bildschirmmanager einstellen.

Zeile :

  SESSION="plasma"

Eigentlich schade, dass XRDP beim ersten Start / Installation nicht den Bildschirmtreiber des Users erbt und in seiner Config einträgt. Muss man halt selber erahnen und machen. Ich finde Software besser, die robust gegen ahnungslose User ist.

Fall es jemanded interessiert. Nach der minimalen Änderung sieht das startwm.sh jetzt so aus.

#!/usr/bin/env bash
#
# This script is an example. You might need to edit this script
# depending on your distro if it doesn't work for you.
#
# Uncomment the following line for debug:
# exec xterm


#start the window manager
wm_start()
{
  #To customize system-wise session, edit this file.
  #To customize user specific session, copy this file to $HOME and edit it.
  #Please refer to DefaultWindowManager and UserWindowManager in /etc/xrdp/sesman.ini for more details.

  #The default session is gnome (GNOME Session)
  #sle means SLE-Classic Session

  SESSION="plasma"

  case $SESSION in
    sle)
      if  -r /usr/bin/gnome-session ]; then
        export XDG_SESSION_TYPE=x11
        export GNOME_SHELL_SESSION_MODE=sle-classic
        /usr/bin/gnome-session --session gnome-classic
      elif  -r /usr/bin/icewm-session ]; then
        /usr/bin/icewm-session
      fi
      ;;
    gnome)
      if  -r /usr/bin/gnome-session ]; then
        export XDG_SESSION_TYPE=x11
        /usr/bin/gnome-session
      elif  -r /usr/bin/icewm-session ]; then
        /usr/bin/icewm-session
      fi
      ;;
    plasma)
      if  -r /usr/bin/startplasma-x11 ]; then
        export XDG_SESSION_TYPE=x11
        /usr/bin/startplasma-x11
      elif  -r /usr/bin/icewm-session ]; then
        /usr/bin/icewm-session
      fi
      ;;
    icewm)
      if  -r /usr/bin/icewm-session ]; then
        /usr/bin/icewm-session
      fi
      ;;
  esac
}

#Execution sequence for interactive login shell
#Following pseudo code explains the sequence of execution of these files.
#execute /etc/profile
#IF ~/.bash_profile exists THEN
#    execute ~/.bash_profile
#ELSE
#    IF ~/.bash_login exist THEN
#        execute ~/.bash_login
#    ELSE
#        IF ~/.profile exist THEN
#            execute ~/.profile
#        END IF
#    END IF
#END IF
pre_start()
{
  if  -f /etc/profile ]
  then
    . /etc/profile
  fi
  if  -f ~/.bash_profile ]
  then
    . ~/.bash_profile
  else
    if  -f ~/.bash_login ]
    then
      . ~/.bash_login
    else
      if  -f ~/.profile ]
      then
        . ~/.profile
      fi
    fi
  fi
  return 0
}

#When you logout of the interactive shell, following is the
#sequence of execution:
#IF ~/.bash_logout exists THEN
#    execute ~/.bash_logout
#END IF
post_start()
{
  if  -f ~/.bash_logout ]
  then
    . ~/.bash_logout
  fi
  return 0
}

#. /etc/environment
#export PATH=$PATH
#export LANG=$LANG

# change PATH to be what your environment needs usually what is in
# /etc/environment
#PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
#export PATH=$PATH

# for PATH and LANG from /etc/environment
# pam will auto process the environment file if /etc/pam.d/xrdp-sesman
# includes
# auth       required     pam_env.so readenv=1

pre_start
wm_start
post_start

exit 1


Beste Grüße,
Gert