【Ubuntu】起動時にVNCサーバが走るように設定する。
正確には「起動時」ではなく「ログインパネル表示時点」なのですが。
うちの満11歳になる Let'sNote CF-R3 です。最近は lubuntu を載せて運用しているのだけれど、流石の Let'sNote もかなりのご高齢。液晶モニタが少しヤバい。
「シャットダウンしたいのに画面がブラックアウトして操作できない」とか「どうしても立ち上げたいのにログインスクリーンが見えない」とかいう事態が起こりかねないので、リモートデスクトップサーバをインストールしておきましょ。
- メインディスプレイをミラーリングできること
- ログインスクリーンが表示される時点でリモート接続可能なこと
…という要件でちょっと調べてみると、x11vnc というのを導入・設定するのが一番楽そうな予感。
まずは x11vnc のインストール。Synaptic パッケージマネージャからインストールするか、コマンドラインで、
$ sudo apt-get install x11vnc
でOK。足りないライブラリがあるよ、と言われたらそれもインストール。
次に、まずはパスワードの設定。
$ x11vnc -storepasswd [パスワードファイル]
例えばパスワードファイルをホームディレクトリの .x11vnc ディレクトリに置くならば、
$ mkdir ~/.x11vnc/
$ x11vnc -storepasswd ~/.x11vnc/passwd
$ x11vnc -storepasswd ~/.x11vnc/passwd
/etc あたりに置くならば、ファイル作成操作には管理者権限が必要、且つパスワードファイルにユーザの読み取りアクセス権限が必要なので、こんな感じ。
$ sudo x11vnc -storepasswd /etc/x11vnc.passwd
$ sudo chmod 644 /etc/x11vnc.passwd
$ sudo chmod 644 /etc/x11vnc.passwd
次に、ログインセッション開始時に x11vnc が起動するように、/etc/init に以下の内容で x11vnc.conf という名前のファイルを作成して保存。
start on login-session-start
exec x11vnc -bg -loop -forever -auth /var/run/lightdm/root/:0 -rfbport 5900 -rfbauth [パスワードファイルへのパス]
exec x11vnc -bg -loop -forever -auth /var/run/lightdm/root/:0 -rfbport 5900 -rfbauth [パスワードファイルへのパス]
で、システムを再起動。
ログインスクリーンが表示されて、マシンがLANに繋がったら接続してみましょ。試しに iPhone から(ほんとは iPod touch だけどw VNC Viewer で繋いでみます。
はい、繋がった。
繋がらない場合は、
- x11vncがちゃんと自動起動しているかどうか。
- 接続するアドレス / ポート番号などが正しいかどうか。
- パスワードファイルのアクセス権限が適切かどうか。
…などなどをチェック。
コメント