¿El módulo vmhgfs no es compatible con VMware Tools 9.9.0 (Fusion7.1) después de la actualización del kernel de Ubuntu Linux a 3.13.0-46-generic?

12

El módulo vmhgfs no es compatible con VMware Tools 9.9.0 (Fusion7.1) y VMware Tools 9.9.2 (Fusion7.1.1 Build 2496486) después de la actualización del kernel de Ubuntu Linux a 3.13.0-46-generic (febrero de 2015) (Función de carpeta compartida de VMware Tools no funciona en Ubuntu 14.04 LTS (Invitado) en MacOSX Yosemite (Host))? 


Hola comunidad y el equipo de desarrolladores de VMware,


El 13 de febrero de 2015, perdimos la función de carpeta compartida entre Ubuntu y MacOSX. Probablemente, la actualización del kernel de Linux a 3.13.0-46-generic causó este problema (aunque la actualización del kernel de Linux no dañaría el módulo vmhgfs compilado de VMware Tools en Ubuntu). Utilizamos VMware Fusion 7.0.0 con Ubuntu 14.04 LTS y MacOSX durante un año sin problemas con los núcleos de Linux más antiguos. Actualizamos a VMware Fusion 7.1.0 y Fusion7.1.1 Build 2496486 con VMware Tools 9.9.2 con la esperanza de solucionar el problema de la función de carpeta compartida que ocurrió primero en vers. 7.0.0.

Podemos suponer que existe una incompatibilidad entre el módulo compilado vmhgfs y el nuevo kernel de Linux 3.13.0-46-generic.

Intentamos reinstalar las herramientas VMware 9.9.0 y vers. 9.9.2 pero el módulo vmhgfs no se pudo compilar y la función de carpeta compartida no funciona. Todas las demás funciones de la herramienta VMware funcionan bien.

En Ubuntu 14.04 LTS, el comando de terminal lsmod | grep "vm" no enumera ningún módulo vmhgfs

Durante la compilación del módulo vmhgfs hubo varios "errores" cerca de "/ vmhgfs-only /" y "make []:"


Aquí está uno de nuestros diarios terminales para usted: 


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'

Y / mnt / hgfs está vacío, pero el uso compartido de carpetas está habilitado para el directorio "Documentos" de Mac, por ejemplo. Si ejecutamos vmware-hgfsclient en un terminal, obtenemos la lista de carpetas compartidas pero / mnt / hgfs está vacío. 


¿Podría solucionar la incompatibilidad entre el módulo vmhgfs y el nuevo kernel de Linux 3.13.0-46-generic, por favor?

Atentamente,

Toni


Ecoplacehunter
fuente
Hola, bienvenido a askubuntu! Nos gustaría ayudarlo con este problema, sin embargo, esta pregunta es realmente difícil de leer. Intente formatear su pregunta para que sea más clara y más estructurada. Ayuda de formateo: askubuntu.com/help/formatting
Merlijn Sebrechts
Hola Comunidad, nuestro miembro "DJ" ya respondió mi publicación. Tiene el mismo problema con el módulo vmhgfs y la función de carpeta compartida en VMware Fusion y supone una incompatibilidad entre el módulo vmhgfs y el nuevo Linux Kernel 3.13.0-46-generic. "DJ" también hizo sugerencias para una versión de kernel de Linux compatible. ¿Alguien tiene experiencia con la última versión compatible de Kernel de Linux con respecto al módulo vmhgfs? "DJ", ¿podrías publicar tu comando de nuevo, por favor? Podríamos hacer que el módulo vmhgfs funcione con la degradación a la última versión compatible del kernel de Linux. Saludos cordiales, Toni
Ecoplacehunter
La actualización de VMware Fusion Pro a 7.1.1 Build 2496486 en Mac OS X Yosemite e intentando reinstalar las herramientas de VMware VMwareTools-9.9.2-2496486 para Ubuntu no pudo solucionar el problema del módulo vmhgfs. VMwareTools-9.9.2-2496486 también es incompatible con el nuevo kernel de Linux 3.13.0-46-generic
Ecoplacehunter

Respuestas:

13

Las herramientas se pueden parchear manualmente. En vmhgfs.tar, inode.c d_aliasdebe cambiarse a d_u.d_alias, volver al tar y luego volver a compilar las herramientas.

Un script que hace eso (probado en ubuntu 14.04 de 32 bits, estación de trabajo vmware 11.1 en un host de Windows) está aquí:

#!/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

NOTA: esto hace que las herramientas sean incompatibles con versiones anteriores del núcleo, es decir, 3.13.0-45.

Viljo Viitanen
fuente
Esta solución funcionó para mí con un host de Windows 8.1 y un invitado Ubuntu 14.04.2 LTS de 32 bits con VMware player 7.1.0 build-2496824. ¡Gracias!
Taylor T. Johnson
Hyvä Viljo !!! La corrección de parche más corta, limpia y fácil en comparación con todas las instrucciones extravagantes que existen: google.fi/…
Yordan Georgiev
Parece ser que lo han arreglado en vmware-tools-9.9.3
Didar_Uranov
Puedo confirmar que este parche funciona en Ubuntu 14.04.2 LTS kernel 3.13.0-48-generic, dirigido a VMwareTools-9.6.5-2700074 enviado con VMWare Workstation 10.0.7.
Ryan M