Ubuntu 8.10上玩转VMware Server 2 (原创)

原创 2009年06月15日 11:38:00

VMware Server 2是VMware公司免费发布的一个虚拟机软件(不需要破解和SN),功能很强大,支持windows和linux平台,我们获取软件只需要到VMware注册一个帐号就可以下载了。

我们先来注册,打开:http://www.vmware.com/products/server/,点击download那个按钮,然后在右面栏中可以注册,注册好后马上会有两封邮件发到你的邮箱里,一封是你的用户名和密码,另一封是Active你的帐户。

用 你的帐户登入,到达下载页面,下载VMware Server 2 for Linux Operating Systems TAR image这个文件,我使用的是2.0.0 | 122956 - 10/29/08版本,文件名为VMware-server-2.0.0-122956.i386.tar.gz,下载好之后检查一下MD5对不对。然后 记下页面上方的VMware Server 2 for Linux的Licensing,安装的时候需要这个序列号。

我们下面开始正式安装VMware Server 2,首先安装编译需要的程序:
sudo apt-get install linux-headers-`uname -r` build-essential xinetd

将VMware-server-2.0.0-122956.i386.tar.gz解压到我的home目录/home/baiyu,大家可以选择自己的目录:
tar jxvf VMware-server-2.0.0-122956.i386.tar.gz -C /home/baiyu

开始安装:
cd /home/baiyu/vmware-server-distrib
sudo ./vmware-install.pl

安装过程会问很多问题,可以都用默认选项,我在这里只修改了安装目录在/usr/local下,默认的登录用户是root,所以你要为root添加口令:sudo passwd root。

安装过程中会出现vsock模块不能正确挂载的问题,这个问题我们会在后面解决。

安 装成功后,打开firefox,通过https://127.0.0.1:8333就可以访问VMware Server 2了,自动会安装一个插件Vmware Remote Console Plug-in,其他机器也可以通过8333端口访问VMware Server 2,不需要安装任何软件,很方便。

登录虚拟机之后就可以创建虚拟机,也可以直接运行防毒墙的虚拟机了,使用方法比较简单不再多说。

下 面我们来解决vsock模块不能挂载的问题,这个问题是由于vsock模块依赖vmci模块,而vmci模块在2.6.27内核有些符号没有被导出,导致 挂载的时候不能正确引用。VMware Server 2在安装之后把源码放在了/usr/local/lib/vmware/modules/source(我的默认安装目录是/usr/local)目录 下,看到那4个tar文件了吗,我们需要修改vmci和vsock的源码,修改的方法就是将tar解开(如tar xvf vmci.tar),修改代码,然后再创建压缩包(如tar cvf vmci.tar vmci-only/),源码修改参考下面的patch文件,主要是修改Makefile文件,注意Makefile的格式:

diff -dru /tmp/modules/open-vm/modules/linux/vmci/Makefile ./linux/vmci/Makefile
--- /tmp/modules/open-vm/modules/linux/vmci/Makefile 2008-08-08 00:01:44.000000000 -0700
+++ ./linux/vmci/Makefile 2008-11-25 16:47:19.000000000 -0800
@@ -97,8 +97,17 @@

MAKEOVERRIDES := $(filter-out CC=%,$(MAKEOVERRIDES))

-$(DRIVER_KO):
+#
+# Define a setup target that gets built before the actual driver.
+# This target may not be used at all, but if it is then it will be defined
+# in Makefile.kernel
+#
+prebuild:: ;
+postbuild:: ;
+
+$(DRIVER_KO): prebuild
make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) modules
+ make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) postbuild

else

diff -dru /tmp/modules/open-vm/modules/linux/vmci/Makefile.kernel ./linux/vmci/Makefile.kernel
--- /tmp/modules/open-vm/modules/linux/vmci/Makefile.kernel 2008-08-08 00:01:44.000000000 -0700
+++ ./linux/vmci/Makefile.kernel 2008-11-25 16:54:32.000000000 -0800
@@ -31,7 +31,21 @@

$(DRIVER)-y := $(subst $(SRCROOT)/, , $(patsubst %.c, %.o, $(wildcard $(SRCROOT)/*.c)))

+T := /tmp
+MODPOST_VMCI_SYMVERS := $(T)/VMwareVMCIModule.symvers
+
clean:
rm -rf $(wildcard $(DRIVER).mod.c $(DRIVER).ko /
.tmp_versions Module.symvers Modules.symvers /
+ $(MODPOST_VMCI_SYMVERS) /
$(foreach dir,./,$(addprefix $(dir),.*.cmd .*.o.flags *.o)))
+
+#
+# If this build generated a Module.symvers, copy it to a public place where
+# the VMCI Sockets build will be able to find it.
+#
+postbuild::
+ifeq ($(call vm_check_file,$(SRCROOT)/Module.symvers), yes)
+ cp -f $(SRCROOT)/Module.symvers $(MODPOST_VMCI_SYMVERS)
+endif
+
diff -dru /tmp/modules/open-vm/modules/linux/vsock/Makefile ./linux/vsock/Makefile
--- /tmp/modules/open-vm/modules/linux/vsock/Makefile 2008-08-08 00:01:43.000000000 -0700
+++ ./linux/vsock/Makefile 2008-11-25 16:57:00.000000000 -0800
@@ -97,8 +97,17 @@

MAKEOVERRIDES := $(filter-out CC=%,$(MAKEOVERRIDES))

-$(DRIVER_KO):
+#
+# Define a setup target that gets built before the actual driver.
+# This target may not be used at all, but if it is then it will be defined
+# in Makefile.kernel
+#
+prebuild:: ;
+postbuild:: ;
+
+$(DRIVER_KO): prebuild
make -C $(BUILD_DIR) SUBDIRS=$$PWD SRCROOT=$$PWD/$(SRCROOT) modules
+ make -C $$PWD SRCROOT=$$PWD/$(SRCROOT) postbuild

else

diff -dru /tmp/modules/open-vm/modules/linux/vsock/Makefile.kernel ./linux/vsock/Makefile.kernel
--- /tmp/modules/open-vm/modules/linux/vsock/Makefile.kernel 2008-08-08 00:01:43.000000000 -0700
+++ ./linux/vsock/Makefile.kernel 2008-11-25 16:55:22.000000000 -0800
@@ -32,6 +32,9 @@
# This test is inverted.
EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/autoconf/sk_filter.c,, -DVMW_HAVE_NEW_SKFILTER )

+T := /tmp
+MODPOST_VMCI_SYMVERS := $(wildcard $(T)/VMwareVMCIModule.symvers)
+
obj-m += $(DRIVER).o

$(DRIVER)-y := $(subst $(SRCROOT)/, , $(patsubst %.c, %.o, $(wildcard $(SRCROOT)/linux/*.c)))
@@ -41,3 +44,16 @@
.tmp_versions Module.symvers Modules.symvers /
$(foreach dir,./ linux/ /
,$(addprefix $(dir),.*.cmd .*.o.flags *.o)))
+
+#
+# The VSock kernel module uses symbols from the VMCI kernel module. Copy the
+# Module.symvers file here so that the Vsock module knows about the VMCI version.
+#
+prebuild::
+ifeq ($(MODPOST_VMCI_SYMVERS),)
+ $(shell echo >&2 "Building VMCI Sockets without VMCI module symbols.")
+else
+ $(shell echo >&2 "Building VMCI Sockets with VMCI module symbols.")
+ cp -f $(MODPOST_VMCI_SYMVERS) $(SRCROOT)/Module.symvers
+endif
+

然后我们重新安装VMware Server 2,运行sudo vmware-config.pl,选项按上次安装的即可,这次vsock可以被正确挂载了。

如果在虚拟机中安装linux出现方向键不能用的情况,可以创建~/.vmware/config文件,其中增加一行:
xkeymap.nokeycodeMap = true
问题就解决了。

我们基本上大功告成了,可以关机休息一会儿了,这时突然发现不能关机了,停到关闭VMware服务那里不动了,实际上没有死机,只是服务没有响应了,大概要等20-30分钟,所有服务才能停掉。

我试过在关机之前手动停止服务是正常的,这说明有某个服务先于VMware服务停止导致了VMware服务停止的时候出现异常(不清楚是哪个服务导致的,网卡的服务有重大嫌疑)。

解决的办法也很简单,我们把/etc/rc2.d和/etc/rc6.d下面的K**vmware改为K01vmware即可,但是如果再用vmware-config.pl安装还需要修改,我们做事要求简捷,于是修改vmware-config.pl。

先给文件加入写权限:sudo chmod 755 /usr/local/bin/vmware-config.pl
打开文件:sudo vi /usr/local/bin/vmware-config.pl
修改link-services函数:
#my $K_level = shift;
my $K_level = "01";
这样再次安装的时候就变为K01vmware了,现在关机、重启都没有问题了,速度很快。

到这里我们的VMware Server 2就安装好了,VMware Server 2和linux配合起来还有很多神奇的用法,当然最神奇的地方就是everything is free and everything is open。

使用VMware虚拟机安装Ubuntu14.04.3-server系统

使用VMware虚拟机安装Ubuntu14.04.3-server系统   0. 准备工作: 安装VMware 下载Linux系统的光盘映像文件(iso) 1. 点击 文件 >> 新建虚拟机,打开...
  • codeman_cdb
  • codeman_cdb
  • 2016年03月26日 11:08
  • 3629

在vmware中安装ubuntu server后,无法显示共享目录的解决方案

环境介绍:vmware workstation(10.0.2 build-1744117), 
  • jjjssskkk
  • jjjssskkk
  • 2014年11月02日 22:01
  • 3667

在VMware上安装ubuntu server版本的虚拟机

VMware上安装ubuntuserver版服务器 在云计算和大数据的冲击下,Linux系统现在越来越被大众所认知。Linux系统中又有很多版本,目前桌面版系统发展最大的有两大阵营,Red hat和U...
  • cloud_510
  • cloud_510
  • 2016年04月23日 08:12
  • 2899

VMware Ubuntu安装详细过程

不是每一个程序员都必须玩过Linux,只是博主觉得现在的很多服务器都是linux系统的,而自己属于那种前端也搞,后台也搞,对框架搭建也感兴趣,但是很多生产上的框架和工具都是安装在服务器上的,而且有不少...
  • tututototo
  • tututototo
  • 2017年06月12日 10:19
  • 691

ubuntu16.04安装教程及VMware Tools工具安装

下面是安装ubuntu16.04的教程,话不多说,看图操作吧,首先创建虚拟机, ...
  • tiamo_hl
  • tiamo_hl
  • 2017年03月18日 11:11
  • 485

为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址

1.安装环境 VMware 10.0.4 build-2249910 Ubuntu 16.04 x86_64 2.在VMware中,配置网络环境 VMware在默认安装完成之后,会创建三个虚...
  • qq_26819733
  • qq_26819733
  • 2016年10月15日 01:58
  • 4212

解决ubuntu 12.04.2 无法进入图形界面、无法全屏,安装VMware tools

vmware中安装kali linux https://www.pentestingshop.com/how-to-install-kali-linux-in-vmware-player/ ubun...
  • catchingSun
  • catchingSun
  • 2016年03月15日 19:20
  • 1962

ubuntu 虚拟机 完全分布式 hadoop集群搭建 hive搭建 ha搭建

针对分布式hadoop集群搭建,已经在四台虚拟机上,完全搭建好,这里针对整个搭建过程以及遇到的问题做个总结,按照下面的做法应该能够比较顺畅的搭建一套高可用的分布式hadoop集群。 这一系列分布式组件...
  • u013676711
  • u013676711
  • 2016年11月16日 12:00
  • 571

Linux学习笔记——vmware plarer中安装ubuntu

学习了很长时间ubuntu,在旧笔记中安装过lubuntu,也使用过他人安装好的ubuntu虚拟机(contiki2.6和contiki2.7)。熟悉了ubuntu之后,决定自己尝试通过vmware ...
  • xukai871105
  • xukai871105
  • 2014年05月05日 20:55
  • 3921

Ubuntu中Vmware Tools的安装与卸载 <一>

Vmware Tools是VMware提供的一套非常人性化的程序,可以用来解决虚拟机的分辨率问题,鼠标的性能,以及Ubuntu和宿主机文件的交换问题。必须在虚拟机已经开启且已安装操作系统的前提下才能安...
  • IOT_AI
  • IOT_AI
  • 2017年03月10日 11:27
  • 3247
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ubuntu 8.10上玩转VMware Server 2 (原创)
举报原因:
原因补充:

(最多只允许输入30个字)