hotch-potch, Note to self

いろいろ作業記録

JETSON NANOでRDP(リモートデスクトップ)

1.はじめに

JETSON NANOをヘッドレスで使いたいので、リモートデスクトップ(RDP)経由で使う方法を探ってみました。
幾つかのサイトを参考に、漸く導入出来たので、その手順をカンタンにまとめます。

進め方

  1. xrdpをインストール
  2. ubuntuのxrdpに対応している)xfce4をインストール
  3. xfce4に対応しているターミナルをインストール
  4. ~/.xsessionと、/etc/xrdp/startwm.shの修正
  5. xrdpデーモンを起動

3番目を忘れると、RDP上でターミナルを開くことが出来ません。
(DISPLAY :0の上で、GNOME Terminalが開いてしまいます)

2.インストール

$ sudo apt install xrdp -y
$ sudo apt install xfce4 xfce4-terminal -y

3.設定

$ cp -p ~/.xsession ~/.xsession.org
$ echo xfce4-session >~/.xsession
$ sudo cp -p /etc/xrdp/startwm.sh /etc/xrdp/startwm.sh.org
$ sudo nano /etc/xrdp/startwm.sh

startwm.shを修正

ファイルの内容のうち、最後の二行をコメントアウトして、その後の行に`startxfce4`を追記します。

(・・・省略)
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
startxfce4

xrdp を起動

$ sudo service xrdp restart

ここまでの手順で、Windows上のRDPクライアントから、JETSON NANOのX環境にアクセスすることが出来ます。

f:id:hotch-potch:20200320214048p:plain
RDPで接続しているところ

ターミナルが起動しない場合

gnome-terminal(ローカル)とxfce-terminal(リモートデスクトップ)の混在の環境で、xfceから起動しない場合があります。

update-alternativesコマンドでデフォルトで立ち上がるターミナルを切り替えることで、開くようになる場合があります。

$ sudo LANG=C update-alternatives --config x-terminal-emulator
There are 2 choices for the alternative x-terminal-emulator (providing /usr/bin/x-terminal-emulator).

  Selection    Path                             Priority   Status
------------------------------------------------------------
* 0            /usr/bin/xfce4-terminal.wrapper   40        auto mode
  1            /usr/bin/gnome-terminal.wrapper   40        manual mode
  2            /usr/bin/xfce4-terminal.wrapper   40        manual mode

Press <enter> to keep the current choice[*], or type selection number: 

「2」を入力して切り替えます。