3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援→開発戻り浦島太郎状態の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。

(Linux)PuppyにVNCサーバを入れる

PuppyLinux4.31 にはVNCサーバが入ってないので入れてみました。

まず、RealVNCフリー版ののソースをhttp://www.realvnc.com/products/download.htmlからダウンロードします。

そして、ビルドしテスト起動してみます。

# tar xzvf vnc-4_1_3-x86_linux.tar.gz

# cd vnc-4_1_3-x86_linux

# ./vncinstall /usr/local/bin

# vncserver

You will require a password to access your desktops.

vncpasswd: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory

どうやら C++ のライブラリが無いとか言っています。

ライブラリは /usr/lib 内に大抵入ってるんですが、たしかに必要と言われているファイルは有りません。

Puppyは deb パッケージが扱えるので、Ubuntu のページより libstdc++2.10-glibc2.2 パッケージをダウンロードし、インストールします。

これで、/usr/lib/libstdc++libc6.2-2.so.3 のファイルができました。(実際は libstdc++-3-libc6.2-2-2.10.0.so へのシンボリックリンクですが...)

再度 vncserver の起動に挑戦してみます。

# vncserver

You will require a password to access your desktops.

Password:

Verifi:

xauth: creating new authority file /root/.Xauthority

xauth: (arg):1: bad display name "puppypc:1" in "add" command

xauth: creating new authority file /root/.Xauthority

New 'puppypc:1(root)' desktop is puppypc:1

Creating default startup script /root/.vnc/xstartup

Starting applications specified in /root/.vnc/xstartup

Log file is /root/.vnc/puppypc:1.log

今度はちゃんとVNCパスワードが設定でき、起動もできしました。(スタートアップスクリプト xstartup も作成されています)

これで、Windowsクライアントから、VNC Viewer でアクセスしたんですが、画面がソリッド模様とコンソールしか映っていません。

どうやら既定のウィンドウマネージャ twm で立ちあがっているようです。

jwm のウィンドウマネージャで立ちあがってほしいので、下記のように /root/.vnc/xstartup ファイルを修正しました。

# vi /root/.vnc/xstartup

#!/bin/sh

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic &

xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &

#twm & ←コメントアウト

jwm & ←追加

これで、vncserver を立ち上げ繋いでみたんですが、メニューや立ち上げたアプリケーションのウィンドウはちゃんとJWMで表示されます。

しかし、デスクトップだけソリッド模様になってしまっています。

これ、なんとかなりませんかね。。。

また、vnc を終了するときは -kill:デスクトップ番号 とするんですが、どうもちゃんと切れないことがあるようです。

# vncserver -kill :1

Killing Xvnc process ID 21755

kill: cannot kill pid 21755: No such process

次回 vncserver 起動時に下記のようなメッセージが表示されてしまいます。

Warning: puppypc:1 is taken because of /tmp/.X1-lock

Remove this file if there is no X server puppypc:1

New 'puppypc:2(root)' desktop is puppypc:2

Starting applications specified in /root/.vnc/xstartup

Log file is /root/.vnc/puppypc:2.log

この場合はロックファイルを削除すればいいようです。

# rm /tmp/.X1-lock

# rm /tmp/.X11-unix/X1

参考:

Hot Linux - VNCのインストール/設定(Redhat7.1,Redhat7.3,Redhat9,WhiteBoxEL4,Fedora8)

Puppy Linux 4.3.1 VNC Serverのインストール: ペンギンの壺 有志によりPETパッケージにまとめたVNCも有るようです。こっち使えばすんなりとできたかもしれませんね。