Azure上のUbuntuにRemote Desktopで接続する

Microsoft Azure上にインストールしたUbuntuにRemote Desktopで接続する手順を記しておきます。
実は普通のパソコンにインストールしたUbuntuであれば、Remote Desktopで接続できるように設定を変更するのは難しくありません。以下のコマンドを実行するだけです。

sudo apt install ubuntu-desktop
sudo apt install xrdp

ところがMicrosoft Azure上ではこれだけではRemote Desktopで接続することができません。Remote Desktopから接続してログインしても白黒チェックの背景に、×のマウスカーソルが表示された状態・・・素のX-Serverに接続された状態のまま、グラフィカルシェルが起動しません。
これはMicrosoft Azure上の仮想マシンにはビデオアクセラレータボードが提供されていない事が原因です。Ubuntuの標準グラフィカルシェルのUnityは3Dアクセラレータボードが必須となるために、そのままでは上手く機能しないのです。Unityは3Dアクセラレータがない場合には、OpenGLをソフトウェアでエミュレーションして起動するのですが、2Dのアクセラレータすら提供されてませんので起動しません。ではgnomeならどうかというと、フォントのレンダリングエンジンがアクセラレータボードを必要としてしまうために、やはりそのままでは起動しないのです。
これを回避するにはMicrosoft Azure上のUbuntuにxfceやlubuntuといった軽量グラフィカルシェルをインストールする必要があります。ここではUbuntu用の軽量グラフィカルシェルのlubuntuを使って設定したいと思います。

sudo apt install lubuntu-desktop
sudo apt install xrdp

のようにして必要なパッケージをインストールした後、次のコマンドを実行して.xsessionを作成しlubuntuをグラフィカルシェルとして設定します。

echo lxsession -s Lubuntu -e LXDE > ~/.xsession

Microsoft Azureの管理ポータルから仮想マシンを選択して、エンドポイントにRemote Desktopを追加し、通信を許可します。
以上でRemote Desktopによる接続が可能な状態になります。Windows上でRemote Desktopを起動してURLを入力し接続してログインしてみてください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です