Raspberry PIXELでリモートデスクトップ接続

はじめに

2017年1月、x86 PCで動作する Raspbian PIXEL for x86 にWindows10からリモートデスクトップ接続できるようにしました。

remote desktop

remote desktop

Raspberry PI2 PIXEL のリモートデスクトップ接続

xrdpサーバー をRaspberry PIにインストールすることにより、WindowsとRDPプロトコルでリモートデスクトップ接続できます。RDPは、マイクロソフト開発のリモートデスクトップ多重チャネルプロトコル(Remote Desktop Protocol)です。

sudo apt install xrdp

Windowsでリモートデスクトップ接続先をRaspberry PI2を指定して接続します。

  • Remote Desktop Connection を起動します
  • リモートデスクトップ接続先のコンピュータをRaspberry PI2のIPアドレスで指定します
  • Login to xrdpでusernameとpasswordを入力します

Raspbian PIXELのデスクトップが表示されます。

x86 PC PIXEL のリモートデスクトップ接続

Raspberry PI2と同様に、xrdpサーバーをインストールします。

sudo apt install xrdp

Windowsでリモートデスクトップ接続先をx86 PC PIXELにします。

Connection Error

Connection Error

 

Raspberry PI2 PIXELは正常に接続できましたが、x86 PC PIXELはポート5910で接続エラーが発生してしまいました。

xrdpについて

xrdpについて調べてみました。

XRDP概要

XRDP概要

PIXELデスクトップ環境やアプリケーションは、X Clientとして動作してXプロトコルで通信することによりX serverで描画されています。
PIXELのxrdpは、Windows PCとRDPプロトコルで通信します。xrdpは、バックエンドでX Clientに接続するための変換を行っています。

バックエンドとして、下記が使用可能です。

  • VNC — VNC Serverをバックエンドとして使用
  • X11RDP — 独自の X Serverをバックエンドとして使用
  • xorgxrdp — ドライバ経由でシステムの X Serverを使用

Raspberry PI2でリモートデスクトップ接続できて、x86 PCでリモートデスクトップ接続できないということは、このバックエンドのソフトウェアがインストールされていないことが原因ではないかと思います。

そこで、Raspberry PI2とx86 PCのソフトウェアパッケージを比較してみました。

x86 PC VNC関係

dpkg -l vnc*

要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
| 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
|/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
||/ 名前 バージョン アーキテクチ 説明
+++-==============-============-
un vnc-server <なし> <なし> (説明 (description) がありません)
un vnc4server <なし> <なし> (説明 (description) がありません)

Raspberry PI2 VNC関係

dpkg -l vnc*

要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
| 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
|/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
||/ 名前 バージョン アーキテクチ 説明
+++-================-=============-
un vnc-java <なし> <なし> (説明 (description) がありません)
un vnc-server <なし> <なし> (説明 (description) がありません)
un vnc4-common <なし> <なし> (説明 (description) がありません)
ii vnc4server 4.1.1+X4.3.0- armhf Virtual network computing server soft

バックエンドの差異

x86 PC PIXEL には、vnc4serverがインストールされていませんでした。

vnc4server をインストールします。

sudo apt install vnc4server

Windowsからリモートデスクトップ接続できるようになりました。

最後に

Windows10から、Raspberry PI(192.168.0.41)とx86 PC(192.168.0.39)にリモートデスクトップ接続してみました。

どちらもPIEXLデスクトップ環境なので、Raspberry PIと x86 PCはほぼ同じ環境です。
「uname -a」コマンドで動作しているアーキテクチャが異なっていることがわかります。