Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101975100
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-11 15:02:22

作者: Ddrmail  出自:
目前XP下使用VMware workstation 6.0.2虚拟ubuntu后,即使安装了VMware Tools并设置了共享文件夹后,虽然可以看到/mnt/hgfs/但仍旧不能访问共享目录的解决方案。

问题:主要问题是在安装vmware tools时编译vmhgfs模块出错:

/tmp/vmware-config0/vmhgfs-only/filesystem.c: In function ‘HgfsInitFileSystem’:
/tmp/vmware-config0/vmhgfs-only/filesystem.c:582: error: too few arguments to function ‘kmem_cache_create’
/tmp/vmware-config0/vmhgfs-only/filesystem.c:593: error: too few arguments to function ‘kmem_cache_create’
make[2]: *** [/tmp/vmware-config0/vmhgfs-only/filesystem.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vmhgfs-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-14-generic'
make: *** [vmhgfs.ko] Error 2
make: Leaving directory `/tmp/vmware-config0/vmhgfs-only'
Unable to build the vmhgfs module.

解决:请将vmware tools的安装文件解压到用户目录下(~/vmware-tools-distrib)。

首先进入此目录:
$ cd ~/vmware-tools-distrib

把将要更改的文件分离出来备份:
$ mv lib/modules/source/vmhgfs.tar vmhgfs.tar.orig

解压缩此文件:
$ tar -xvf vmhgfs.tar.orig

编辑文件解压后生成的vmhgfs-only目录中的compat_slab.h:
$ vim vmhgfs-only/compat_slab.h

找到此行:
if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 22) || defined(VMW_KMEMCR_HAS_DTOR)

更改为:
if LINUX_VERSION_CODE <= KERNEL_VERSION(2, 6, 22) || defined(VMW_KMEMCR_HAS_DTOR)
就是把小于(<)改为小于等于(<=).

现在我们已基本完成了,仅需重新打包压缩更改的文件夹,并把它拷贝回去(lib/modules/source/vmhgfs.tar):
tar -cvf lib/modules/source/vmhgfs.tar vmhgfs-only

将此vmhgfs.tar文件复制到ubuntu系统的vmware-tools中(/usr/lib/vmware-tools/modules/source/):
$ sudo cp lib/modules/source/vmhgfs.tar /usr/lib/vmware-tools/modules/source/vmhgfs.tar

重新设置vmware tools:
$ sudo vmware-config-tools.pl

一路按回车键。
阅读(241) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~