メイン

VNC アーカイブ

2007年09月04日

VNCでLinuxを操作する その1起動確認

SSHがあるからGUIなんて遅くて使ってられるか!という信条に基づきいままでほとんどXwindowは入れてなかったのだが、最近Linuxデスクトップをよく利用するようになって俄然Xの利用頻度が多くなってきた。

それに伴い本来GUI不要のサーバー用途のマシンにもXを入れておいてそれをVNC経由で(ディスプレイがないので)操作することにした。LinuxのVNCはXプロトコルを利用しているので、WindowsマシンをVNCで操作するときと違い同一LAN内部であれば直接操作しているのと変わらないほどのレスポンスのよさがあるのも採用の大きな決め手である。ただし暗号化はされていないので外のネットワークに公開するのはやめておいたほうがいいだろう。余談ではあるがWindowsをリモートコントロールするならVNCよりも、素直にリモートデスクトップを使ったほうが早いし多彩な操作ができるだろう。

最近のディストリビューションにはすでにvncが入っていることが多い。CentOSでは最小インストールでも入っていた。なければパッケージでいれればよい。ここではインストールが終わっている前提で話を進める。

まずはVNCのパスワードの設定。これはVNC接続の時に必要になる。

# vncpassword

そしてvncの起動

# vncserver :1

デフォルトではtwmという古いwindowマネージャとなるので一瞬面食らうがこれで動作確認は取れる。

後はデフォルトであれば5901ポートに対してvncviewerで接続してみること。なおhttp://vncサーバー:5801/でJavaアプレットによるVNCViewerも立ち上がる(重いのでお勧めしないが)

なお接続できない場合はたいていファイヤーウォールが邪魔をしているので該当ポートを空けること。

VNCでLinuxを操作する その2 GNOMEデスクトップに変更

さて前回のエントリーでVNCViewerからの接続に成功しただろうか?

しかし接続に成功したとはいえデジタルRGB(こんな例えでわかる奴おるか!)みたいな画面で途方にくれた人もしくはVNCはこんなものかとあきらめに入る人もいるがまだ早い。

次はこのあまりにしょぼいtwmというウィンドマネージャーを(おそらく大多数にとっては)見慣れたGNOMEに変更する方法である。

VNCサービスの再起動が伴うので、ここからはsshでの操作になる。

まずはvncを立ち上げているユーザのホームディレクトリに移動し

.vnc/xstartupを以下の内容で置き換える。

#!/bin/sh

# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

このままでは設定変更が反映されないのでvncセッションを再起動(すでに接続が確立されている場合は強制切断される)

vncserver -kill :1
vncserver :1

VNCViewerで再接続してみれば見事GNOMEデスクトップの画面が出てくるはずである。

なおVNCViewerからログアウトしてしまった場合は何も操作できず一見ハマリになるが、sshでログインして上記のvncセッションを再起動してやれば元に戻る(逆を言うとsshなり、コンソールなりでログインできる環境ではない場合は本当のハマリ)

2007年09月25日

VNCViewerとVNCServer間でクリップボード共有

そんなのデフォルトでできるようにしてくれと叫びたいが、その手順がなかなかWebページ上でヒットしなかったのでここにまとめておく。

VNC間でクリップボードの共有を実現するためにはvncconfigというアプリケーションをVNCServer側で走らせておかねばならない。

# vncconfig &

とするとXのアプリケーションが立ち上がる。それが立ち上がっている間のみVNCViewer Server間のクリップボードの共有ができる。

2007年09月26日

VNCで接続用パスワードを忘れたときは

vncではセッションを立ち上げるユーザー毎にパスワードを設定することができる。

どこに格納されるかというと~/.vnc/passwdファイルである。

なので忘れてしまった場合はこのファイルを削除すると次回セッション起動時にパスワード設定要求ダイアログが出現するので設定しなおせばよい。

About VNC

ブログ「技術メモ」のカテゴリ「VNC」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリはVBAです。

次のカテゴリはWebAppです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。