gpt4 book ai didi

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

转载 作者:IT王子 更新时间:2023-10-29 00:18:44 26 4
gpt4 key购买 nike

将我的 guest ubuntu 升级到 linux-image-3.13.0-46 后,我在安装 vmware-tools 时遇到错误,我无法再共享文件夹。

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

                 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); \
^

这个问题有解决办法吗?

谢谢

最佳答案

vmware-tools-distrib-9.9.2-2496486:

我已通过转到 vmhgfs.tar 所在的目录(在我的例子中是/usr/lib/vmware-tools/modules/source)解决了这个问题,解压缩 tar 并手动编辑 inode.c。

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

#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
d_alias) {
#else
d_u.d_alias) {
#endif

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

#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

警告:不确定内核版本,但我已将 3,13,0 放在那里,尽管我的 Ubuntu 报告:

# 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 上运行良好。

因此,如果您将内核降级,上述 hack 可能无法正常工作。

然后您需要重新打包 tar 存档(只需将旧的移开即可:

# mv vmhgfs.tar vmhgfs.tar.orig

再次打包目录:

# tar cvf vmhgfs.tar vmhgfs-only

)

希望对您有所帮助。

关于linux - 升级到 linux-image-3.13.0-46 后安装 vmware-tools 9.9 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28579182/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com