めも


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

LinuxでVNCをやってみた。ってかやってる最中。

構成は、以下の通り。
  • VNCサーバ側:CentOS 5.3
  • VNCクライアント側:CentOS 5.3 + TightVNC 1.3.10
やってる奴の経験は以下の通り
  • 入社して以来、学生時代も含めて、Linuxなんか触ったことない。やっれつーから仕方なく。

1日目

とりあえず、CentOS5.3のisoイメージを焼いて、一台マシンをこしらえた。きちんとGUIで起動する。これはVNCサーバを入れる予定。
クライアント側はマシンがないので、仕方なく自分の執務PCにVMWareを入れて、仮想マシンの上にインストールした。
ここで早くも問題が。。。VMWareがisoイメージを焼いたDVDを認識してくれたのはいいが、簡易インストールにするよって言われた。
その通りにしたら、GUIの起動じゃない。なんかプロンプト出てるし。?????
なので、わけわからない状態になって、このインストールは破棄。新たにEasyVMXで仮想マシンを作成し、この上にインストールするようにした。
EasyVMXは以下。
http://www.easyvmx.com/
そうしたところ、サーバの方と同じく無事GUI起動するまでインストールできた。
でもまだ問題が・・・。
仮想マシン側のCentOSがネットワークに接続できない。NATにして、IPアドレスも固定で入れてあるのに(うちの会社は固定IP)。
で、とてもLinuxに詳しい方に聞いたところ、仮想マシン側はDHCPにしないといけないんだって。言われた通りDHCPにしたらネットワーク接続できた!

2日目

サーバ側はvncserverがGNOMEと共に入っているとかで、vncserverは何の苦労もなく起動。
クライアントは・・・どうすんだ?
TightVNCのパッケージがどこかに転がってのかと思ったらなかった。
http://www.tightvnc.com/download.php
↑からソースごと落としてビルドしないといけないらしい。マジですか・・・。ビルドなんてどうやんのよ・・・・。
Google先生に聞いたら以下のサイトを教えてくれた。
http://tsuredureto.blogspot.com/2010/05/tight-vnc.html

2日目 その2

Google先生に教えてもらったサイトに書いたとおりに以下を実施してみた。まずはビルド環境を整えないとね。
# yum install gcc libjpeg-devel libjpeg zlib-devel zlib
そしたら・・・。こんなエラーが出た。何これ?
error was [Errno 4] IOError: Error: Cannot find a valid baseurl for repo: base

上記の分そのままでGoogle先生に聞いたところ、プロキシを越えられなくてエラーになってるっぽい。
そこで、yum.confにプロキシの設定をした。
proxy=http://proxy.xxx.xxx.co.jp:8080
で、再度yumを実行したところ、プロキシ越えた!っぽい。

しかしまたしてもエラー。
Metadata file does not match checksum
何でちょっとっつしか進めないかな・・・。何でチェックサム壊れてるんだよ。

あ、そういえばyumで引っ張ってくるサイトを理化学研究所にしたんだった。
http://virtual.cocolog-nifty.com/virtualmachine/2010/06/yum-centos5532-.html
それが原因かな・・・。
そういうわけで、設定を再度もう一度Google先生に聞いたところ、以下のおまじないでなおるとの
ことだった。
# yum clean all
# yum update

でも上二つのコマンドを実施すると途中でMetadata file does not match checksumが出る。
何で?
yumで引っ張ってくるサイトを元に戻して再度clean allとupdateを実行。
すると、600個以上のパッケージをアップデートするけど宜しいかと聞かれた。
時間かかりそうだけどYesを選択。かなり待ちくたびれたけどclean allとupdateは無事終了。

再度実行。
# yum install gcc libjpeg-devel libjpeg zlib-devel zlib
# yum install xmkmf
# yum install libX11-devel
# yum install libXt-devel
# yum install libXaw-devel
# yum install libXext-devel
無事にビルドできた。
ここまできたらスイスイとTightVNCのビルドができた。これだけで一日潰れた。

ビルドできたらインストール。以下から適当なところにダウンロード。
wgetでうまく取得できなかったので、FireFoxでダウンロードした。
www.tightvnc.com

ダウンロードしたtarが置いてあるディレクトリまで移動して、
# tar zxvf ./tightvnc-1.3.10_unixsrc.tar.gz
# cd vnc_unixsrc

ビルド。
# xmkmf
# make World
# cd Xvnc
# ./configure
# make
# cd ..

インストール。これはsuで。
# mkdir /usr/local/man
# ./vncinstall /usr/local/bin/ /usr/local/man/
# mkdir -p /usr/local/vnc/classes
# cp ./classes/* /usr/local/vnc/classes

3日目

いよいよTightVNCを動かすことに。
まずはサーバ側
# vncserver :1
あっさりと起動。パスワードを聞かれるので適当に入力。これはクライアント側で必要になる。

では次はクライアント側。こちらはvncviewer。
# vncviewer xxx.xxx.xxx.xxx:1
最後の1はモニタ番号。vncserverの起動時に教えてくれる。
パスワードを聞かれたらサーバ側で入力したパスワードを入力。すると。。。

やった!起動した。でも何か変。
Twmってのしか画面にいない。GNOMEじゃない。何これ?
どうも、Unixは同時に何人も使う物なので、リモート接続には接続ごとにGUIのセッションを持つ
らしい。Yahoo知恵袋で見つけた。ふ~ん。

では、と思い、隣の娘のWindowsXPにTightVNCのサーバを入れて、これをvncviewerで見てみた。
そうしたら、vncviewerの画面内には、まさに隣で動いているWindowsXPの画面がそのまま表示されている。
Linuxの場合と挙動が違うんだ~。ふーん。

ついでに、WindowsのRDPも確かめてみた。
自分のPCから隣の娘のXPにリモートログイン。
したところ、隣の娘のXPはワークステーションロック状態になってしまった。
で、自分のPC上にデスクトップが展開された。どうやら一つのデスクトップをいじれるのは常に一台だけっぽい。
RDPでも違うのね。