Eco*_*ter 12 vmware compiling kernel 14.04
在 Ubuntu Linux 内核更新到 3.13.0-46-generic(2015 年 2 月)(共享文件夹功能)后,vmhgfs 模块无法为 VMware Tools 9.9.0 (Fusion7.1) 和 VMware Tools 9.9.2(Fusion7.1.1 Build 2496486)编译的 VMware Tools 在 MacOSX Yosemite(主机)上的 Ubuntu 14.04 LTS(来宾)中不起作用??
您好社区和 VMware 开发人员团队,?
2015 年 2 月 13 日,我们失去了 Ubuntu 和 MacOSX 之间的共享文件夹功能。可能是将 Linux 内核更新为 3.13.0-46-generic 导致了这个问题(尽管 Linux 内核更新不会损坏 Ubuntu 中 VMware Tools 的现有编译 vmhgfs 模块!)。我们在 Ubuntu 14.04 LTS 和 MacOSX 上使用 VMware Fusion 7.0.0 一年,旧的 Linux 内核没有问题。我们使用 VMware Tools 9.9.2 更新到 VMware Fusion 7.1.0 和 Fusion7.1.1 Build 2496486,希望能修复版本中首先出现的共享文件夹功能问题。7.0.0。
我们可以假设编译的 vmhgfs 模块与新的 Linux 内核 3.13.0-46-generic 之间存在不兼容。
我们尝试重新安装 VMware 工具 9.9.0 和版本。9.9.2 但无法编译 vmhgfs 模块并且共享文件夹功能不起作用。所有其他 VMware 工具功能都运行良好。
在 Ubuntu 14.04 LTS 中,终端命令 lsmod | grep“虚拟机”。没有列出 vmhgfs 模块
在 vmhgfs 模块编译期间,在“/vmhgfs-only/”和“make[]:”附近有几个“错误”?
这是我们为您准备的终端期刊之一: ?
include/linux/compiler-gcc4.h:14:34: error: ‘struct dentry’ has no member named ‘d_alias’
#define __compiler_offsetof(a,b) __builtin_offsetof(a,b)
^
include/linux/stddef.h:17:31: note: in expansion of macro ‘__compiler_offsetof’
#define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)
^
include/linux/kernel.h:794:29: note: in expansion of macro ‘offsetof’
(type *)( (char *)__mptr - offsetof(type,member) );})
^
include/linux/list.h:687:40: note: in expansion of macro ‘container_of’
#define hlist_entry(ptr, type, member) container_of(ptr,type,member)
^
include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’
____ptr ? hlist_entry(____ptr, type, member) : NULL; \
^
include/linux/list.h:710:13: note: in expansion of macro ‘hlist_entry_safe’
pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
^
/tmp/modconfig-h4Zwi0/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’
hlist_for_each_entry(dentry,
^
make[2]: *** [/tmp/modconfig-h4Zwi0/vmhgfs-only/inode.o] Error 1
make[1]: *** [_module_/tmp/modconfig-h4Zwi0/vmhgfs-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-46-generic'
make: *** [vmhgfs.ko] Error 2
make: Leaving directory `/tmp/modconfig-h4Zwi0/vmhgfs-only'
Run Code Online (Sandbox Code Playgroud)
?
并且 /mnt/hgfs 为空,但例如为 Mac 的“文档”目录启用了文件夹共享。如果我们在终端中运行 vmware-hgfsclient,我们会得到共享文件夹列表,但 /mnt/hgfs 是空的。?
你能修复 vmhgfs 模块和新的 Linux 内核 3.13.0-46-generic 之间的不兼容吗?
此致,
托尼?
小智 13
这些工具可以手动修补。在vmhgfs.tar中,inode.cd_alias
必须改成d_u.d_alias
,放回tar然后重新编译工具。
执行此操作的脚本(在 Windows 主机上的 32 位 ubuntu 14.04、vmware 工作站 11.1 上测试)在这里:
#!/bin/sh -x
cd /usr/lib/vmware-tools/modules/source
tar xf vmhgfs.tar
grep -q d_u.d_alias vmhgfs-only/inode.c && echo "already patched" && exit 0
sed -i -e s/d_alias/d_u.d_alias/ vmhgfs-only/inode.c
cp -p vmhgfs.tar vmhgfs.tar.orig
tar cf vmhgfs.tar vmhgfs-only
vmware-config-tools.pl -d -m
Run Code Online (Sandbox Code Playgroud)
注意:这使得这些工具与较旧的内核版本(即 3.13.0-45)不兼容。
小智 1
更新到内核 3.13.0-46 后我也有同样的经历。根据vmware-tools-patches,没有可用的补丁。
这些补丁尚未成功应用于以下 Linux 内核:
3.13.x
我vmhgfs
通过以下方式修复:
归档时间: |
|
查看次数: |
12155 次 |
最近记录: |