--/--/-- (--)
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
2010/04/27 (火)
VNCがこれほどまでに素晴らしいものだとは知らなかった。

まず、何といっても速い!

sshを圧縮してvncも圧縮すると驚くほど高速。

実際に、家から職場のLinuxにvnc接続すると、実用に十分耐える。
ssh -X で接続してたときの遅さと言ったら本当にヒドいものだった。

それにセキュリティ的にもポートフォワーディングをうまく使えばsshで掘ったトンネル中でもVNC接続できる。
それも、グローバルIPが振られてないローカルPCに対してもVNC接続できる。

さらに便利なのがブラウザ接続。
これさえあれば、USBにポートフォワーディングできるソフトをインストールしておいて、
ポータブルFireFoxがあれば、どこからでも自分のマシンに接続できる。

もう職場に行かなくてもいいじゃん!笑
スポンサーサイト
2010/04/27 (火)
すごくハマった。

デフォルトの機能だと、vnc4serverってブラウザから接続できない。例えば、

sudo apt-get install vnc4server

とかやってvncserverをインストールしたとする。で、そのマシンで

vncserver :1

とかやるとディスプレイ番号1でvncserverが起動する。
この状態で他マシンから5800+ディスプレイ番号のポートでブラウザから接続する。 例えばサーバが192.168.10.5だとすると、クライアントのブラウザのアドレスバーに

http://192.168.10.5:5801/

と打つと、ブラウザでvnc接続ができるというのは超便利で有名な機能。
ところが、vnc4serverはこれができない。

sudo apt-get install tightvncserver tightvnc-java

でインストールしたtightvncだとうまくいく。
でも、tightvncとgnomeの相性が非常に悪いのはこれまた有名な話で、具体的にはキーボードが完全にイカれる。
だから、tightvncは使いたくない。

vnc4serverでもvnc-javaを

apt-get install vnc-java

でインストールするとうまくいくのかと思い、やってみるが駄目だった。

調べまくった。

まず、

nmap 192.168.10.5

で、vncserver側のポートスキャンをしてみた。
tightvncの場合5801番ポートが開いているのに、vnc4serverは5801番ポートが閉じていることがわかった。
つまりファイアウォールとかのポートの問題ではないということ。
vnc4serverがhttpで5801を使うように設定されていないということ。

あれ、vnc4serverがhttp接続に対応していないのかなとも思ったが、tightvncのほかにもx11vncとかvinoとか 他のvncには全てついてる機能なのでそれはアヤシイと考える。

でついにわかった。
vnc4serverコマンドにhttp接続をするオプションがあった。マニュアルには書いてねぇ。

vnc4server -httpport 5801 -httpd /usr/share/vnc-java :1

とかするとうまくつながる。
何というオプション…

あ、もちろんvnc-javaをインストールした状態でです。
2010/04/05 (月)
GNU screen ってたくあん分割して作業しててもデタッチ→アタッチするともとにもどってる。

実は、最新版のGNU screenは分割の状態(レイアウト)も保存してデタッチ&アタッチできる。
最新版つってもUbuntu9.10とか使ってるならすでに最新版が入ってるはず。

screenを起動して、適当に分割して

prefix :layout new

って入力するだけ。
これで、レイアウトのセーブファイルができて次回アタッチしてもレイアウトが保存されるようになる。

GNU screenって便利だね
2010/04/05 (月)
今更screenの便利さに気づいた。
ログインするマシンが用途によってたくさんある環境だと激便利。

.screenrcに最低限

defencoding eudJP
escape ^t^t

を書いておく。
でも、押しにくいけど^tより^zのほうがいいのかな。

%screen
で起動

新規画面の作成
^t^c (または^t c)

画面の切り替え
^t^[np]

画面リストの表示
^t^w

画面リストの番号を指定して切り替え
^t 番号

・分割
横分割 ^t S
縦分割 ^t |
移動 ^t ^TAB
フォーカスされているウィンドウ以外の破棄 ^t Q
フォーカスされているウィンドウの破棄 ^t X

・アタッチ・デタッチ いったん、シェルに戻る(デタッチ)
^t^d

screenのセッションリストの表示
%screen -ls

screenに戻る(アタッチ)
%screen -r {プロセス番号}

他の端末からデタッチも可能(リモートでタッチ)
%screen -d {プロセス番号}

複数端末からアタッチも可能(マルチアタッチ)
%screen -x {プロセス番号}
2010/04/04 (日)
現在公開されてるemacs-w3mの安定版(1.4.4)はemacs23上では動作しない。
この問題は、w3mの開発版をインストールすることで解決できる。

emacs23 と w3m の開発版 + 開発版での動作となって、超不安定になると思われるが、そこは気にしない。

emacs-w3mの開発版をインストールするには、
まず、公式サイトに書いてあるとおりcvsでソースを持ってくる。

適当なディレクトリで、
% cvs -d :pserver:anonymous@cvs.namazu.org:/storage/cvsroot login
CVS password:
# パスワードは設定されていません.単に Enter/Return キーを押して下さい.
% cvs -d :pserver:anonymous@cvs.namazu.org:/storage/cvsroot co emacs-w3m

で、emacs-w3m-1.4.4.tar.gzを公式サイトからDLして解凍して、そこに開発版の内容を上書きする。
↓こんな感じで
wget http://emacs-w3m.namazu.org/emacs-w3m-1.4.4.tar.gz
tar zxvf emacs-w3m-1.4.4.tar.gz
cp emacs-w3m/* emacs-w3m-1.4.4

でemacs-w3m-1.4.4のディレクトリに移動して
./configure --prefix=~/local/elisp/emacs-w3m/
make
make install

いや、prefixオプションは個人的な趣味の問題。

ちなみに、Ubuntuだとautoconfがインストールされてなかったので、make途中でエラーが出た。
そんな人は、sudo apt-get install autoconfすれば幸せになれる。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。