RECOMMEND

ハッカーと画家
ハッカーと画家
プログラマ必読。→感想


C言語ポインタ完全制覇
C言語ポインタ完全制覇
C言語 対ポインタ最強兵器。
感想

COUNTER

MONTHLY

CATEGORIES

RECENT ENTRIES

RECENT COMMENTS

RECENT TRACKBACKS

twitter

Twitterボタン

APPENDIX

sugarball

こまごまと、プログラミング関係のtipsを。

[スポンサー広告]スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[LINUX]VineLinux4.2でVNCを使う 

VNCをご存知でしょうか。一応、知らない人のために説明すると、『クロスプラットフォームで動作するリモートデスクトップみたいなもの』です。

まぁ、Linuxでも動作するリモートデスクトップ、と思っても差し支え無いかもしれません。で、僕の環境(VineLinux4.2)でVNCをインストールしてみたので、その方法を紹介します。

■0.概要
僕の環境というと、ノートPC(VineLinux)とデスクトップ(WindowsXP)がLANでつながっています。なので、WindowsXPからVineLinuxをVNC経由で操作する、ということです。
  [VineLinux]----(LAN)----[WindowsXP]

■1.LinuxにVNCのパッケージをインストール
ここは便利なapt-getコマンドを使いましょう。まずは、rootユーザでapt-getのパッケージリストをアップデートしてから、VNCをインストールしましょう。ちなみに、LinuxはVNCで操作される側なので、VNCサーバをインストールします。
# apt-get update

取得:1 http://updates.vinelinux.org 4.2/i386 release [2259B]
2259B を 0s 秒で取得しました (5961B/s)
取得:1 http://updates.vinelinux.org 4.2/i386/main pkglist [287kB]
取得:2 http://updates.vinelinux.org 4.2/i386/main release [158B]
取得:3 http://updates.vinelinux.org 4.2/i386/plus pkglist [482kB]
取得:4 http://updates.vinelinux.org 4.2/i386/plus release [166B]
取得:5 http://updates.vinelinux.org 4.2/i386/updates pkglist [168kB]
取得:6 http://updates.vinelinux.org 4.2/i386/updates release [171B]
取得:7 http://updates.vinelinux.org 4.2/i386/nonfree pkglist [6946B]
取得:8 http://updates.vinelinux.org 4.2/i386/nonfree release [169B]
取得:9 http://updates.vinelinux.org 4.2/i386/main srclist [119kB]
取得:10 http://updates.vinelinux.org 4.2/i386/plus srclist [203kB]
取得:11 http://updates.vinelinux.org 4.2/i386/updates srclist [35.8kB]
取得:12 http://updates.vinelinux.org 4.2/i386/nonfree srclist [13.0kB]
1314kB を 2s 秒で取得しました (561kB/s)
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
#
#
# apt-get install vnc-server
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージが新たにインストールされます:
vnc-server
アップグレード: 0 個, 新規インストール: 1 個, 削除: 0 個, 保留: 11 個
1307kB のアーカイブを取得する必要があります。
展開後に 2923kB のディスク容量が追加消費されます。
取得:1 http://updates.vinelinux.org 4.2/i386/plus vnc-server 4.1.2-0vl3 [1307kB]
1307kB を 0s 秒で取得しました (3103kB/s)
変更を適用しています...
準備中... ########################################### [100%]
1:vnc-server ########################################### [100%]
完了
#
これでLinuxにVNCサーバがインストールされました。

■2.LinuxのVNCサーバの設定を行う
インストールが終わったら、VNCサーバの設定を行いましょう。VNCでログインしたいユーザで行ってください。
$ vncserver

You will require a password to access your desktops.

Password:xxxxx  ←(VNCでログインするためのパスワードを入力)
Verify:xxxxx  ←(確認のためもう一度入力)

New 'VineLinux:1 (cube)' desktop is VineLinux:1

Creating default startup script /home/cube/.vnc/xstartup
Starting applications specified in /home/cube/.vnc/xstartup
Log file is /home/cube/.vnc/VineLinux:1.log

$
これでVNCサーバ自体の設定が完了です。

■3.ポートを開く
デフォルトのVineLinuxは、ファイアウォール機能のためにVNCで使うポートが閉じられています。(インストール時にファイアウォールをOFFにすることも可能ですが。。)そこで、VNCで使用するポートを開かないといけません。ポートを一時的に開く場合は、以下のコマンドを使用すると良いでしょう。今度はrootユーザでの実行が必要です。
# iptables -I INPUT -p tcp -m tcp --dport 5901 --syn -j ACCEPT
# iptables -L  ←設定が反映されたか確認する
… 中略 …
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:5901
… 後略 …
#
はい、このように5901番ポートが開いて使えるようになりました。この設定を恒久的に使いたい場合は、rcスクリプトなどに記述すると良いでしょう。VineLinux4.2の場合は、GUIでログインしてから、メニューバーの デスクトップ → システム管理 → セキュリティレベルとファイヤーウォールの設定 を選択し、「その他のポート」で5901番を追加してやると良いでしょう。
ちなみに、ポートは5901番でなくても良いのですが、まぁサンプルというわけでとりあえず5901を指定してください。それぞれの設定の意味が判りだしてから、自分の好きなように変更すると良いでしょう。
ファイアウォールの設定


■4.xstartupを細工する
初回のvncserverコマンドを実行したとき、ホームディレクトリに .vncディレクトリが作成され、 ~/.vnc/xstartup ファイルが作成されます。このxstartupがデフォルトのままだと、GUIとも呼べないようなショボい画面しか出てこないので、必要に応じて編集する必要があります。で、調べてみるとどうやら .xinitrcファイルと同じ内容で良いようです。VineLinuxの場合、/etc/X11/xinit/xinitrc のファイルがそのまま使えそうなので、シンボリックリンクを張って使うことにしました。
$ cd ~/.vnc
$ mv ./xstartup ./xstartup.org  ←念のためバックアップ
$ ln -s /etc/X11/xinit/xinitrc ./xstartup
$
これでまともなGUIがVNCで使えそうです。

■5.VNCサーバを起動する
いよいよ、Linux側でVNCサーバを起動します。「2.LinuxのVNCサーバの設定を行う」を実行したユーザで行ってください。
$ vncserver :1

New 'VineLinux:1 (cube)' desktop is VineLinux:1

Starting applications specified in /home/cube/.vnc/xstartup
Log file is /home/cube/.vnc/VineLinux:1.log

$
これでサーバ側の準備は完了です。

■6.VNC Viewer(RealVNC)をWindowsXPにインストールする
今度は、クライアント側(WindowsXP)にVNCをインストールします。WindowsXPは「操作する側」なのでVNC Viewerをインストールします。
RealVNCのサイトからダウンロードしてください。ここでは、無料のFree Editionを使います。ダウンロードが終われば、インストールしてください。デフォルトのままで問題ありまあせん。

■7.VNC Viewerを実行する
さて、インストールしたVNC Viewer(RealVNC)を実行します。スタートメニューから「Run VNC Viewer」を実行してください。
すると、小さいウィンドウが表示され、「Server:」と書かれた隣にIPアドレスを入力する箇所があります。そこに、「192.168.0.1:1」のように、「(IPアドレス):1」のようにいIPアドレスと:(コロン)と1を半角で入力して「OK」をクリックします。(追記:「192.168.0.1::5901」のような指定も可能なようです。)
VNC Viewer

すると。。おめでとうございます。VNCで接続されました。
VNCのサンプル


■8.その他、行った方がいいかもしれない設定
VNCサーバは毎回プロセスを起動・停止する必要があるので、rcスクリプトに記述しておくと良いかもしれません。VNCサーバを終了するときは、
$ vncserver -kill :1
のように記述してください。
毎回手動で実行する時などは、 ~/.bashrc などに

alias vncstart='vncserver :1'
alias vnckill='vncserver -kill :1'
のように記述すると、vncstartと実行するだけでVNCが起動します。まぁ、ちょっとだけ手間が軽減されます。

■9.ディスプレイ番号・ポート番号について
VNCサーバの開始時に、
$ vncserver :2
とした場合、VNC Viewerでの接続時には「192.168.0.1:2」のようにして接続する必要があります。さらに、そのとき使用されるポート番号は5902番です。この「:2」はディスプレイ番号ですね。
このように、ポート番号とディスプレイ番号には関係があるので、好みの設定を行うときには忘れてはいけません。

■10.最後に。。参考になったサイト
風晶さんのサイトより。
VNCの使い方・その2
http://homepage2.nifty.com/ssfu/others/computer/linux_vnc02.html (現在リンク切れのようです)
スポンサーサイト

[UNIX]コマンドの絶対パスを知る(whichコマンド) 

unixやlinuxを使っていると、たまに「このコマンドってどこのディレクトリにあったっけ?」というように、絶対パスがわからなくなる時があります。

まぁ、基本的にfindコマンドで検索すれば良いのですが、例えば2箇所以上にインストールされていて、どちらもパスが通っているコマンドだと、どちらのコマンドが使われているかわからなくなってしまいます。

そんな時は、whichコマンドで絶対パスを取得しましょう。
$ which gawk
/usr/bin/gawk  …コマンドの絶対パスが表示される

«  | HOME |  »

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。