在VMware装完Solaris9(Win2000+VMware4.0.2+Solaris9 for x86)后,总觉得按Ctrl+Alt 释放鼠标很麻烦,
可VMware Tools又不支持Solaris。
Google了一阵,在[url=http://members.at.infoseek.co.jp/chitchat/vmware/index.html#top]VMware's back[/url]
找到了一个解决办法,就是借助lxrun在Solaris下运行VMware Tools for Linux。
首先安装lxrun,从[url]http://www.ugcs.caltech.edu/~steven/lxrun/[/url]下载源代码
[url=ftp://ftp.ugcs.caltech.edu/pub/steven/lxrun/lxrun-0.9.6pre1.tar.gz]lxrun-0.9.6pre1.tar.gz[/url]
为了编译lxrun,又到[url=http://www.sunfreeware.com]Sunfreeware.com[/url]下载了make-3.80-sol9-intel-local.gz
和gcc-3.3-sol9-intel-local.gz,分别安装
#gunzip make-3.80-sol9-intel-local.gz
#pkgadd -d make-3.80-sol9-intel-local
#gunzip gcc-3.3-sol9-intel-local.gz
#pkgadd -d gcc-3.3-sol9-intel-local
修改PATH环境变量
PATH=$PATH:/usr/local/bin:/usr/ccs/bin; export PATH
编译lxrun
#gunzip -c lxrun-0.9.6pre1.tar.gz | tar xvf -
#cd lxrun-0.9.6
#vi Makefile
修改Makefile,打开注释掉的关于gcc的选项,有以下几处
# gcc:
# WARN =
WARN = -v
改为
# gcc:
WARN =
# WARN = -v
# gcc:
# SOL_CC = gcc
# CC_SHARED = gcc -G
SOL_CC = cc
CC_SHARED = cc -G
改为
# gcc:
SOL_CC = gcc
CC_SHARED = gcc -G
# SOL_CC = cc
# CC_SHARED = cc -G
# gcc:
# PICFLAGS= -fpic
PICFLAGS= -Kpic
# OPTFLAGS=
OPTFLAGS= -DOLD_PROCFS
改为
# gcc:
PICFLAGS= -fpic
# PICFLAGS= -Kpic
OPTFLAGS=
# OPTFLAGS= -DOLD_PROCFS
改好后,
#make
编译成功后,将生成的lxrun二进制文件拷到/usr/local/bin(默认位置)下
下一步要构建Linux运行环境,有三种方法
第一种需要局域网内有一台Linux机器,将其根分区通过NFS让Solaris系统来Mount
第二种需要同时装有Solaris和Linux的系统,还需要Solaris安装ext2fs驱动来Mount Linux的分区
第三种是运行INSTALL-RH6脚本从Redhat6.x安装盘上复制所需的文件
采用第三种方法。先建目录/usr/local/lxrun(INSTALL-RH6脚本要在其中创建PATHMAP文件)
INSTALL-RH6脚本运行过程中要问几个问题:
1. Linux的根目录,用/usr/local/linux(lxrun默认)
2. CDROM的设备节点,将Solaris虚拟机的光驱修改为使用ISO文件zoot-i386.iso后,Solaris自动Mount,
需要先Umount(因为INSTALL-RH6脚本后面要自己Mount)
3. lxrun的位置(/usr/local/bin/lxrun)
有了Linux运行环境,将Solaris虚拟机的光驱修改为使用ISO文件linux.iso(在VMware安装目录)
从vmware-linux-tools.tar.gz解出vmware-toolbox 和 vmware-guestd 放到Linux根目录中的任意目录
如/usr/local/linux/usr/local/bin
让Solaris每次启动自动运行vmware-guestd
1.在/etc/init.d/下创建脚本vmware-guestd
#!/sbin/sh
# vmware-guestd
case "$1" in
'start')
LINUX_ROOT=/usr/local/linux
LINUX_PATHMAP=/usr/local/linux/PATHMAP
export LINUX_ROOT LINUX_PATHMAP
cd /usr/local/linux/usr/local/bin
/usr/local/bin/lxrun /usr/local/linux/usr/local/bin/vmware-guestd --background /var/run/vmware-guestd.pid
;;
'stop')
/usr/bin/kill -TERM `cat /usr/local/linux/var/run/vmware-guestd.pid`
;;
*)
echo "Usage: $0 { start | stop }"
;;
esac
exit 0
在/etc/rc2.d/建一个链接S100vmware-guestd到这个脚本
ln -s /etc/init.d/vmware-guestd /etc/rc2.d/S100vmware-guestd
让X Server启动后自动运行vmware-toolbox
1.将/usr/dt/config下的Xconfig和Xsetup拷贝到/etc/dt/config 目录
2.修改Xconfig
取消Dtlogin*grabServer: False一句前的注释
在Xsetup文件中加入:
# launch vmware-toolbox
$XDIR/xhost localhost
LINUX_ROOT=/usr/local/linux
LINUX_PATHMAP=/usr/local/linux/PATHMAP
export LINUX_ROOT LINUX_PATHMAP
/usr/local/bin/lxrun /usr/local/linux/usr/local/bin/vmware-toolbox --minimize &
重新启动Solaris,桌面左上角多了一个VMware的图标,VMware-Tools运行了,试一下鼠标,
终于可以不用Ctrl+Alt了。
但似乎有点问题,不能在虚拟机和主机之间拷贝粘贴,而且启动vmware-guestd,会报错
Waring: Unable to start hgfs.
sh: ifconfig: command not found
sh: grep : command not found
希望大家指点。
|