VNCを使う


PCをリモート管理したいと思うことは良くある。
一人で複数台のPCを使うことがもはや当たり前となった現代において、離れたところでネットワーク接続されたマシンをコントロールするのに、一々そこまで行かなければいけないというのは馬鹿げている。
この点、サーバ・クライアントシステムが一般的なunixマシンであればTelnetやX Windowを使って管理することも出来るが、WindowsやMAC混在となると難しい。
Windows XPや2000でも相手のマシンの画面をリモートで見る(コントロールする)ソフトはMS標準であるが、Homeエディションのみでしか使用できない。
おそらくこれはセキュリティの関係があるのだろう。
IBMのDesktopOnCallはWindowsマシンのリモート制御を可能にするもので、たぶん今でも売られていると思う。
数年前にはこの手を使う以外にリモート制御が出来なかったこともあり、私も使用したことがある。
さて、Windows,unix混在環境の中で効率的にリモート制御を行うものとしてVNCがある。
これはフリーソフトでなかなか良く出来ている。
Windowsへのインストールは極めて簡単で、これを立ち上げておけば他のマシンから自由にコントロール出来る。
Windows XPや2000ならこちらが、それ以前のバージョンにはこちらの方が軽いかも知れない。
unix版もあり、こちらはインストールが少々面倒だがLinuxやFreeBSDならコンパイル済みのパッケージが用意されている。
FreeBSDにインストールした例を挙げると、/usr/ports/net/vn
から、make instal
で、大抵はインストール出来ると思う。
ダメならSourceを持ってきてコンパイルする事になるが、これがなかなか成功しない。
vnc server起動は/usr/local/bin/vncserverを使用する。
これはPerlで書かれているので、中を見れば画面解像度などの設定項目はすぐに解る。
unix版はVNCサーバ側でクライアントに提供する画面解像度などを自由に選べるので問題はないが、Windows版はその時に使用している解像度そのままとなる。
従ってVNC Server側が1200×1600にも関わらずクライアント側がSVGAだったりすると操作がやりにくくなってしまう。
実はこのVNCをインストールしてみたのは、携帯からWindowシステムを操作するiVNCの存在を知ったからだ。
残念ながらP901は大サイズ画面バッファを持っていないのでQVGA解像度でしか使用出来ない。
F901iだとXGA程度ならカバー出来るらしいので良いのだが、WindowsはQVGAでは操作出来ない。
試しにdisp32を使用してQVGAサイズのWIndows画面にしてみたが、そもそもこの解像度ではダイアログボックス自体が画面からはみ出してボタンが押せない。
従ってどうしてもリモート制御したければN/P以外の移動機を選ぶべきである。
unix版であれば解像度は自由なので、とりあえず240×320(320×240ではない)に設定して起動する。
携帯の画面で見るとこんな感じだ。

画面表示されるのは良いとして、キー入力が今のところ出来ない。
iVNCは携帯から送ったデータをクリップボードに送るそうなのだが、クリップボードから取り出すのってセンターボタンではなかったっけ。
現時点のiVNCは2ボタンマウス対応なので、センターボタンは押せない。
ちなみにVNCサーバはhttpにも対応しているのだが、今度は携帯のブラウザがjavaアプレットに対応しておらず制御出来ない。
そもそも携帯で制御しなければいけない時というのは緊急事態な訳で、だったらもっと単純に出来ないかと考えた。
で、メールを使ったシステムを作ってみた。
メールを特定のアカウント宛に送ると、その本文をコマンドとして出力する。
結果は又メールで送り返して来るというもの。
ps -a
と本文に書いて送ればプロセス一覧を返してくる。
ファイルを編集したければ、cat {filename} とやれば良く、編集したファイルをechoで書き出せばいい。