modulo vmhgfs non compilabile per VMware Tools 9.9.0 (Fusion7.1) dopo l'aggiornamento del kernel Ubuntu Linux a 3.13.0-46-generico?


12

Modulo vmhgfs non compilabile per VMware Tools 9.9.0 (Fusion7.1) e VMware Tools 9.9.2 (Fusion7.1.1 Build 2496486) dopo l'aggiornamento del kernel Ubuntu Linux alla versione 3.13.0-46-generica (febbraio 2015) (Funzione cartella condivisa di VMware Tools non funziona in Ubuntu 14.04 LTS (Guest) su MacOSX Yosemite (Host))? 


Hello Community e il team di sviluppatori VMware,


Il 13 febbraio 2015 abbiamo perso la funzione Cartella condivisa tra Ubuntu e MacOSX. Probabilmente, l'aggiornamento del kernel Linux a 3.13.0-46-generico ha causato questo problema (sebbene il modulo vmhgfs compilato esistente di VMware Tools in Ubuntu non sia danneggiato dall'aggiornamento del kernel di Linux!). Utilizziamo VMware Fusion 7.0.0 con Ubuntu 14.04 LTS e MacOSX per un anno senza problemi con i kernel Linux più vecchi. Abbiamo aggiornato VMware Fusion 7.1.0 e Fusion7.1.1 Build 2496486 con VMware Tools 9.9.2 nella speranza di risolvere il problema della funzione di cartella condivisa che si è verificato per primo in vers. 7.0.0.

Possiamo supporre che ci sia un'incompatibilità tra il modulo compilato vmhgfs e il nuovo kernel Linux 3.13.0-46-generico.

Abbiamo provato a reinstallare gli strumenti VMware 9.9.0 e vers. 9.9.2 ma non è stato possibile compilare il modulo vmhgfs e la funzione Cartella condivisa non funziona. Tutte le altre funzionalità dello strumento VMware funzionano correttamente.

In Ubuntu 14.04 LTS il comando terminale lsmod | grep "vm." non elenca alcun modulo vmhgfs

Durante la compilazione del modulo vmhgfs c'erano diversi "errori" vicino a "/ vmhgfs-only /" e "make []:"


Ecco una delle nostre riviste terminal per te: 


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'

E / mnt / hgfs è vuoto ma la condivisione delle cartelle è abilitata per esempio nella directory "Documents" di Mac. Se eseguiamo vmware-hgfsclient in un terminale, otteniamo l'elenco delle cartelle condivise ma / mnt / hgfs è vuoto. 


Potresti correggere l'incompatibilità tra il modulo vmhgfs e il nuovo kernel Linux 3.13.0-46-generico, per favore?

I migliori saluti,

Toni



Ciao, benvenuto su askubuntu! Vorremmo aiutarti con questo problema, tuttavia, questa domanda è davvero difficile da leggere. Prova a formattare la tua domanda per renderla più chiara e strutturata. Aiuto per la
Merlijn Sebrechts,

Ciao Community, il nostro membro "DJ" ha già risposto al mio post. Ha lo stesso problema con il modulo vmhgfs e la funzione Cartella condivisa in VMware Fusion e presuppone un'incompatibilità tra il modulo vmhgfs e il nuovo kernel Linux 3.13.0-46-generico. "DJ" ha anche suggerito una versione del kernel Linux compatibile. Qualcuno ha esperienza con l'ultima versione compatibile del kernel Linux relativa al modulo vmhgfs? "DJ" potresti postare di nuovo il tuo comando, per favore? Potremmo far funzionare il modulo vmhgfs con il downgrade all'ultima versione compatibile del kernel Linux. Cordiali saluti, Toni
Ecoplacehunter,

L'aggiornamento di VMware Fusion Pro alla versione 7.1.1 Build 2496486 su Mac OS X Yosemite e il tentativo di reinstallare gli strumenti Vmware VMwareTools-9.9.2-2496486 per Ubuntu non sono stati in grado di risolvere il problema del modulo vmhgfs. VMwareTools-9.9.2-2496486 è anche incompatibile con il nuovo kernel Linux 3.13.0-46-generico
Ecoplacehunter

Risposte:


13

Gli strumenti possono essere patchati manualmente. In vmhgfs.tar, inode.c d_aliasdeve essere modificato in d_u.d_alias, rimesso nel tar e quindi ricompilare gli strumenti.

Uno script che lo fa (testato su Ubuntu 14.04 a 32 bit, vmware workstation 11.1 su un host Windows) è qui:

#!/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: questo rende gli strumenti incompatibili con le versioni del kernel precedenti, ovvero 3.13.0-45.


Questa soluzione ha funzionato per me con un host Windows 8.1 e un guest Ubuntu 14.04.2 LTS a 32 bit utilizzando VMware player 7.1.0 build-2496824. Grazie!
Taylor T. Johnson,

Hyvä Viljo !!! La correzione della patch più breve, più pulita e più semplice rispetto a tutte le istruzioni bizzarre
Yordan Georgiev

Sembra che lo abbiano risolto in vmware-tools-9.9.3
Didar_Uranov

Posso confermare che questa patch funziona con il kernel Ubuntu 14.04.2 LTS 3.13.0-48-generico, destinato a VMwareTools-9.6.5-2700074 fornito con VMWare Workstation 10.0.7.
Ryan M,


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.