Raspberry PiにXDMCPでログインする

前回VNCで接続できるようにしてみたが、これだと毎回sshでログインしてからvncserverを起動しないといけないので、今回はもう一歩進んでログイン画面からリモートで接続できるようにしてみる。

前準備(Macの場合)

今回のXDMCPによるログインは、前回のような「サーバへの接続」ではできないのでX11を利用する。
Mountain LionからはX11が同梱されなくなったので、XQuartzを入れる。
dmgパッケージなのでちゃちゃっと入れちゃおう。

XDMCPを有効にする

Raspbianには既にLightDMが入っているので設定を変更するだけ。

# 念のためバックアップを取ってから編集
sudo cp /etc/lightdm/lightdm.conf{,.orig}
sudo -e /etc/lightdm/lightdm.conf
  • [LightDM]にxserver-allow-tcp=trueを追加
  • [XDMCPServer]のenabledのコメントを外してtrueに変更

その他はデフォルトでもいいけど、興味があったら設定ファイル内のコメントを読んでみて。

[LightDM]
#start-default-seat=true
#greeter-user=lightdm
#minimum-display-number=0
#minimum-vt=7
#user-authority-in-system-dir=false
#guest-account-script=guest-account
#log-directory=/var/log/lightdm
#run-directory=/var/run/lightdm
#cache-directory=/var/cache/lightdm
#xsessions-directory=/usr/share/xsessions
#xgreeters-directory=/usr/share/xgreeters
xserver-allow-tcp=true                       ← これ追加

[XDMCPServer]
enabled=true                                 ← trueにする
#port=177
#key=

diffはこんな感じ。

--- lightdm.conf.orig	2012-12-27 01:37:34.031485019 +0900
+++ lightdm.conf	2012-12-27 02:47:16.140862964 +0900
@@ -25,6 +25,7 @@
 #cache-directory=/var/cache/lightdm
 #xsessions-directory=/usr/share/xsessions
 #xgreeters-directory=/usr/share/xgreeters
+xserver-allow-tcp=true
 
 #
 # Seat defaults
@@ -99,7 +100,7 @@
 # it can be a word and the first 7 characters are used as the key.
 #
 [XDMCPServer]
-#enabled=false
+enabled=true
 #port=177
 #key=

LightDMを起動する

runlevel 5*1で起動するか、lightdmを起動する。

sudo service lightdm start


OS起動時に自動的に起動させるならinittabでrunlevel 5とかにしておけばよさそう。試してないけど。
たぶんraspi-configでGUIブートにしてもいいんだろうけどやったことないのでよくわからない。
ここでやった設定上書きされちゃったりするのかな。

Macから接続してみる

ターミナルからXquartz -queryを実行する。

Xquartz -query IPアドレス

しばらくするとログイン画面が表示される。
どうもMacではルートウィンドウがないっぽいので*2、ダイアログと上のバー以外はMacのデスクトップが透けてるけど、ログインするとRaspberry Piのデスクトップが出てくる。


ルートウィンドウがある場合はlightdm-gtk-greeter.confで指定されてる背景色になるんだけど、これはMacの壁紙がそのまま見えてるw

なんか英語なんだけど

GDMからのログイン時は.profileとか.bashrcとかが読み込まれないので、.xsessionrcに書いておく。

export LANG=ja_JP.UTF-8

この辺いまいち知識が足りなくてよくわかってないんだが、.xprofileとか.xinitrcとか似たようなのいっぱいありすぎる。

*1:Debian系だと3とかでもGUI起動っぽいのね

*2:環境設定でフルスクリーンモードにするればルートウィンドウができるようだ。