xrdp + LXDEを設定し、別のPC(WindowsやMac)などからリモートデスクトップで接続したところ、ローカルのLXDMでログインしたときとは異なる状態になっており、どのように解決したらよいか困っています。
起きている現象は確認している範囲では以下になります。
・ログイン時に"No session for pid xxx"とメッセージダイアログが表示される
(ps -aux | grep xxxでlxpolkitのpidであることを確認)
・タスクバーの右下にキーボードのアイコンが表示されない(fcitxが起動していない?)
・fcitxの設定を開くと入力メソッドの欄が空
xrdpは以下の手順で設定し、リモートデスクトップのログインはsession Xvncを選択した上でログインしています。
※ startwm.shで/etc/lxdm/Xsessionをたたいていますが、最初はprofile等を読んだ上でstartlxdeを実行していました。
$ yaourt -S xrdp
$ sudo groupadd xrdp
$ sudo gpasswd -a {ユーザ} xrdp
$ vim ~/startwm.sh
#!/bin/sh
. /etc/lxdm/Xsession
$ vim ~/.xprofile
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export DefaultIMModule=fcitx
$ echo "lxsession -s LXDE -e LXDE" > ~/.xsession
$ sudo vim /etc/xrdp/xrdp.ini
# 以下を一番上に移動
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
#xserverbpp=24
#delay_ms=2000
$ sudo vim /etc/X11/xorg.conf.d/00-keyboard.conf
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "XkbModel" "pc104"
Option "XkbLayout" "jp"
EndSection
$ systemctl start xrdp
上記とは別に、"No session for pid xxx"に関して以下の対策を行いましたが、動作に変化はありませんでした。
(ググった結果をそのまま対応しただけで、この対策が何をしているかは理解していません)
$ sudo vim /etc/xdg/autostart/lxpolkit.desktop
以下の行にLXDEを追加
NotShowIn=GNOME;KDE;MATE;LXDE
お世話になります。
投稿後、いろいろ試した結果、起動後にLXDMサービスとxrdpサービスを起動すると本現象が発生することを確認しましました。
以下の通り、LXDMサービスとxrdpサービスを有効にした状態で再起動した場合は、fcitxが動作し、テーマの変更も反映されることを確認しました。
$ sudo systemctl enable lxdm
$ sudo systemctl enable xrdp
$ sudo reboot
ただし、この状態でもログイン時に"No session for pid xxx"のメッセージボックスが出る状態です。
お世話になります。
"No session for pid xxx"のメッセージボックスが出る状態については、以下の対応で出なくなりました。