Showing posts with label VMware. Show all posts
Showing posts with label VMware. Show all posts

November 14, 2008

How to enable underscore on VMware Server 2

Underscore with jp106 keyboard worked on VMware Server 1.0.x after adding:

xkeymap.keycode.211 = 0x073

But it doesn't on VMware Server 2. $HOME/.vmware/preferences still seems to be alive to do something - just found a symbol in binaries. I don't know what it's for.
After some investigation, it could be enabled again with $HOME/.vmware/config, by adding same thing.

Enjoy,

May 20, 2008

Unable to connect to the MKS: Pipe: Write failed

vmware-serverで動作しているVMのタブを開こうとするとエラーが出て困った話。
とりあえず適当にぐぐってみたらこんなのを発見した。

http://communities.vmware.com/message/364243;jsessionid=70D3926DA3644A6E9ACDFEAAE15F9178


実際にはちょっと違うエラーだけど、注目したのはここ。

what 'ldd /usr/lib/vmware/bin/vmware-remotemks' says ?
見てみると…

% ldd /usr/lib/vmware-server-console/bin/vmware-remotemks
linux-gate.so.1 => (0x00110000)
libm.so.6 => /lib/libm.so.6 (0x00692000)
libdl.so.2 => /lib/libdl.so.2 (0x0068b000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00858000)
libXtst.so.6 => not found
libXext.so.6 => /usr/lib/libXext.so.6 (0x00c36000)
libXt.so.6 => /usr/lib/libXt.so.6 (0x00d34000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x00d18000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x00da0000)
libz.so.1 => /lib/libz.so.1 (0x00979000)
libpthread.so.0 => /lib/libpthread.so.0 (0x006bd000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00994000)
libc.so.6 => /lib/libc.so.6 (0x0051d000)
/lib/ld-linux.so.2 (0x004fd000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0x00ad7000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x0095b000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x0098f000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00a15000)
このマシン、x86_64マシンで、vmware-server-consoleはi386なので、libXtst.i386のパッケージをインストールして解決した。

July 26, 2007

host clock rate change request

kernel: /dev/vmmon[xxxx]: host clock rate change request yyyy -> zzzz

みたいなログがわんさかでてどうしたものかと思ってたが、解決方法を見つけたのでメモ。

kernel configを

CONFIG_HZ_1000=y
CONFIG_HZ=1000
でkernelをbuildするか、.vmxファイルに
host.useFastclock = FALSE
を追加することで収まる。CONFIG_HZ=1000は未確認。sidの吊るしkernel 2.6.22-1で確認。ソースはこちら

June 16, 2007

シリアルコンソールを仕込んでみる

最近どうも安定して動かない上に、CPU load食いまくってsshで入るのも難儀なことが多く、その度にvmware-server-consoleを起動させては、ごにょごにょとあれこれや るはめになる。また、セキュリティ上外から902番ポートへ繋げないようにしてるので、sshでport forwardしてとかまあなんつーか面倒くさいことこの上ない。そこで、vmware上のシリアルポートをhostのttyへマップさせ、シリアルコン ソール替わりに使うことにした。

まず、各VMの設定を変更する。シリアルポートをひとつずつ追加し、Use named pipeを選択、pipeの名前は後で識別しやすいように/tmp/serial-hostname portとした。また、今回このシリアルポートはhostから使うので、This end is the serverおよびThe other end is an applicationを選択。あとは、/etc/inittabにgetty経由でログインできるように修正。Debianの場合はすでにコメントアウトされた行があるので、それを有効にするだけでよい。

次にhost側。先ほど指定したnamed pipeはhost上に作られるけど、そのままだとよくあるterminal系のアプリでは使えないので、socatを使ってptyに変換した。ついでにそのまま接続しちゃうように次のようなスクリプトを書いた。

#! /bin/sh

set -e

if [ $# -eq 0 ]; then
echo "$0 "
exit 1
fi

PORT=$2
if [ "x$PORT" = "x" ]; then
PORT=0
fi

if [ ! -S /tmp/serial-$1$PORT ]; then
echo "Unknown hostname"
exit 1
fi

socat unix-connect:/tmp/serial-$1$PORT pty:link=/tmp/ttyv$1$PORT,raw,echo=0,waitslave &
SOPID=$!
if ls /proc/$SOPID > /dev/null 2>&1; then
while [ ! -h /tmp/ttyv$1$PORT ]; do sleep 1; done
cu -l /tmp/ttyv$1$PORT
else
echo failed.
fi