首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >升级到linux-image-3.13.0-46后安装vmware-tools 9.9时出错

升级到linux-image-3.13.0-46后安装vmware-tools 9.9时出错
EN

Stack Overflow用户
提问于 2015-02-18 16:37:53
回答 4查看 4.3K关注 0票数 8

在将我的来宾ubuntu升级到linux-image-3.13.0-46之后,我得到了一个错误:安装vmware-tools,我不能再共享文件夹了。

我在Windows 8和Ubuntu 14.04 LTS主机上运行了vmware player 7.0.0 build-2305329,在安装过程中,我得到了以下错误注销:

代码语言:javascript
复制
                 from /tmp/modconfig-NVbKuD/vmhgfs-only/inode.c:29:
include/linux/kernel.h:793:27: error: ‘struct dentry’ has no member named ‘d_alias’
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                           ^

这个问题有什么解决方法吗?

谢谢

EN

回答 4

Stack Overflow用户

发布于 2015-02-27 22:48:21

vmware-tools-distrib-9.9.2-2496486:

我已经修复了这个问题,方法是转到vmhgfs.tar所在的目录(在我的示例中是/usr/lib/vmware-tools/modules/source),解压tar并手动编辑inode.c。

在第1925行(只需搜索"d_alias“以找到确切的行),您需要添加一个if。最后看起来是这样的:

代码语言:javascript
复制
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
                           d_alias) {
#else
                           d_u.d_alias) {
#endif

然后在1983行左右再次搜索(再次搜索"d_alias"):

代码语言:javascript
复制
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
         struct dentry *dentry = list_entry(pos, struct dentry, d_alias);
#else
         struct dentry *dentry = list_entry(pos, struct dentry, d_u.d_alias);
#endif

警告:不确定内核版本,但我已经通过我的Ubuntu报告设置了3,13,0:

代码语言:javascript
复制
# uname -a
Linux md-ubuntu 3.13.0-46-generic #76-Ubuntu SMP Thu Feb 26 18:52:13 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

这在3.13.0-45下工作得很好。

因此,如果你降级内核,上面的攻击可能不会正常工作。

然后,您需要再次打包tar归档文件(只需将旧归档文件移出:

代码语言:javascript
复制
# mv vmhgfs.tar vmhgfs.tar.orig

并再次打包该目录:

代码语言:javascript
复制
# tar cvf vmhgfs.tar vmhgfs-only

)

希望能有所帮助。

票数 11
EN

Stack Overflow用户

发布于 2015-02-18 16:49:33

This补丁应该可以解决这个问题。

编辑Working Gist patch

使用说明:

代码语言:javascript
复制
cd vmware-tools-distrib/lib/modules/source/
tar -xvf vmhgfs.tar
cd vmhgfs-only
patch inode.c < inode.patch
cd ..
mv vmhgfs.tar vmhgfs.tar.orig
tar cvf vmhgfs.tar vmhgfs-only
cd vmware-tools-distrib
sudo ./vmware-install.pl
票数 1
EN

Stack Overflow用户

发布于 2015-06-26 10:47:20

至于VMWare融合,该错误已在7.1.2版本1中修复。vmware-tools的版本为9.9.3。

1 VMware融合7.1.2发行说明https://www.vmware.com/support/fusion/doc/fusion-712-release-notes.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28579182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档