Ubuntu 17.10 L'aggiornamento ha interrotto VMWare Workstation 12.5


10

Ciao dopo l'aggiornamento a Ubuntu 17.10, vmware ora non si avvia.

Ricevo il messaggio:

/usr/lib/vmware/bin/vmware-modconfig: Relink `/lib/x86_64-linux-gnu/libbsd.so.0' with `/lib/x86_64-linux-gnu/librt.so.1' for IFUNC symbol `clock_gettime'

Sono consapevole che sono disponibili patch e sto tentando di applicarle e ricompilare. Sono scappato dalla soluzione su https://communities.vmware.com/thread/571370 :

cd ~  
#Copy the vmmon source tar ball to your temporary location
cp /usr/lib/vmware/modules/source/vmmon.tar .   
#Extract the tar ball
tar xf vmmon.tar  

#Download the modified file that mkubecek posted and overwrite the one from the tar ball for VMware Workstation 12.5:
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c   

#Wrap up the newly modified files into a tar ball replacing the original one
sudo tar cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only  

#Rebuild the VMware kernel modules
sudo vmware-modconfig --console --install-all  
Failed to get gcc information. 
gcc --version
gcc (Ubuntu 7.2.0-8ubuntu3) 7.2.0 ...

Purtroppo, vmware-modconfig non riesce a causa di una dipendenza che sembra su una particolare versione di gcc. Sono sulla buona strada? Qualsiasi aiuto con questo problema sarebbe molto apprezzato.

EDIT Grazie Steve, il seguito è tornato vmware. Ho incluso una correzione minore. Testato e confermato che potrei eseguire una macchina virtuale.

sudo su
# do all below as root
cd /usr/lib/vmware/modules/source
tar xvf vmmon.tar 
tar xvf vmnet.tar
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
vim vmnet-only/bridge.c
cd vmmon-only/
make
cd ../vmnet-only/
make
cd ..
mkdir /lib/modules/4.13.0-16-generic/misc
cp *.o /lib/modules/4.13.0-16-generic/misc
insmod /lib/modules/4.13.0-16-generic/misc/vmmon.o
insmod /lib/modules/4.13.0-16-generic/misc/vmnet.o
rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1
vmware-networks --start
exit

# run vmware as normal user
/usr/lib/vmware/bin/vmware

2
In generale, la virtualizzazione di terze parti è leggermente in ritardo con nuovi kernel e nuove versioni. Questo sembra influenzare vmware più di virtualbox. Poiché vmware è a codice chiuso, dovrai chiederglielo. Come potenziale alternativa - è per questo che cerco il più possibile di usare KVM o LXC (anche se sento ancora che LXC non è pronto per i server di produzione). KVM + spice è molto veloce (FWIW). Con VMware la mia ipotesi è che ci sarà un lavoro in giro da 1 a 3 giorni o 3-4 settimane a seconda della complessità del problema.
Pantera,

La patch che si sta tentando di applicare è per la risoluzione di un bug con la gestione della memoria, non per il problema relativo al messaggio di errore menzionato. AFAIK non esiste ancora una soluzione per questo problema. C'è un bug report sul launchpad: bugs.launchpad.net/ubuntu/+source/linux/+bug/1715552
user749720

hai risolto il problema "Impossibile ottenere informazioni su gcc"?
Oğuzhan Topçu,

Incredibilmente no, attualmente eseguo uno script che sudo esegue insmode vmware-networkscomanda e quindi vmware binary come utente normale.
user1330734

Ho Lubuntu 18.04 - il metodo di Stephen Wassell non ha funzionato. La soluzione da tokam - l'aggiornamento a VMWare 14 non ha funzionato troppo - a causa della politica di VMWare solo per supportare l'hardware più recente. Il metodo di John ha funzionato, ma solo se avvio vmplayer come su. Altrimenti riceverò un messaggio affidabile: Riga 106: 29487 errore di memoria (dump della memoria scritto) "$ BINDIR" / vmware-modconfig --appname = "VMWaer Player! --Ivon =" vmware-player "
Tobias Trappe

Risposte:


12

Sono riuscito a far funzionare VMWare Workstation 12.5.7 su Kubuntu 17.10.

In /usr/lib/vmware/modules/source:

  1. Estrai vmmon.tarevmnet.tar

    sudo tar -xf vmmon.tar
    sudo tar -xf vmnet.tar
    

    Questo creerà vmmon-onlye vmnet-onlydirectory.

  2. Prendi la patch hostif.c

    sudo wget -O vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
    

    (nota: https://communities.vmware.com/thread/571370 - contiene anche una correzione simile per VMWare Workstation 14)

  3. Modifica vmnet-only/bridge.c:

    639c639
    <        atomic_inc(&clone->users);
    ---
    >        atomic_inc((atomic_t*)&clone->users);
    
  4. Correre

    make -C vmmon-only
    make -C vmnet-only
    cp -t /lib/modules/4.13.0-16-generic/misc *.ko
    modprobe -r vmmon
    insmod /lib/modules/4.13.0-16-generic/misc/vmmon.ko
    rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
    ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1  # see https://communities.vmware.com/thread/572259
    vmware-networks --start  # see https://forum.chakralinux.org/viewtopic.php?id=8579
    
  5. Come utente:

    /usr/lib/vmware/bin/vmware
    

    (per impedirne il funzionamento vmware-modconfig)


Fantastico, ottimo lavoro Stephen, la tua risposta è stata estremamente facile da seguire. Ho ripetuto i passaggi in modo esplicito, nonché aggiunto una correzione minore per il passaggio 8 nella modifica della domanda sopra. Saluti!
user1330734

Sono contento che abbia funzionato per te! Ho risolto anche il mio passaggio 8, grazie per la correzione. Spero che tutto persista per il riavvio ...
Stephen Wassell,

1
Grazie ancora Stephen, sto bene a condizione di iniziare /usr/lib/vmware/bin/vmware, altrimenti i rapporti vmware non sono in grado di trovare GCC.
user1330734,

Grazie mille per la pubblicazione! Questo mi ha fatto correre di nuovo. C'è un posto dove possiamo andare per vedere dove si trova VMWare fornendo una soluzione?
Eric

4
Workstation 14.1.0 è ora disponibile e risolve questo problema. my.vmware.com/group/vmware/…
Stephen Wassell il

6

Ho provato circa tutte le altre soluzioni ma nulla ha funzionato. Ma questi passaggi hanno funzionato per me su Ubuntu 18.04, VMware 12.5.9

git clone https://github.com/mkubecek/vmware-host-modules.git
cd vmware-host-modules
git checkout workstation-12.5.9 (change it to your version. it's important)
make && sudo make install
cd /usr/lib/vmware/lib/libz.so.1
sudo mv libz.so.1 libz.so.1.old
sudo ln -s /lib/x86_64-linux-gnu/libz.so.1 .
sudo depmod -a
sudo /etc/init.d/vmware restart

Riferimento:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1715552

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1715552/comments/29


2
funziona alla grande, grazie mille! Ho cercato una soluzione a questo per Ubuntu 18.04 da quando è uscito!
Stam Kaly,

1
Può confermare che funziona con Ubuntu 18.10, con VMWare Workstation Pro 12.5.9.
anonnoir

Questa soluzione ha funzionato per me su Linux Mint 19.2 64 bit con vmware workstation pro 12.5.9.
Lexib0y

2

Il bugfix descritto da: Stephen porta molti a un altro bug: "Impossibile ottenere informazioni gcc".

La soluzione più semplice è scaricare vmware player workstation 14.1 .

Installandolo al posto della versione 12.5 risolve i problemi sopra descritti.

Per farlo basta correre

chmod +x VMware-Player-14.1.1-7528167.x86_64.bundle
sudo ./VMware-Player-14.1.1-7528167.x86_64.bundle

E segui le istruzioni nel programma di installazione grafico.


2
che richiede un aggiornamento della licenza
shadowbq

avvia usando /usr/lib/vmware/bin/vmwareinvece per risolvere "Impossibile ottenere informazioni gcc"
shadowbq

2
Penso che non commerciale funzioni anche senza l'aggiornamento della licenza
tokam

2

Oltre alla risposta di Stephen Wassell , se stai ancora eseguendo la versione VM Workstation 12.5.x dovrai ricompilare la tua .koper ogni patch del kernel .. che è molto ..

È possibile che venga visualizzato questo errore: ( formato del modulo non valido )

# insmod /lib/modules/4.13.0-31-generic/misc/vmnet.ko 
insmod: ERROR: could not insert module /lib/modules/4.13.0-31-generic/misc/vmnet.ko: Invalid module format

Ecco uno strumento per mantenere aggiornati i moduli del kernel per ubuntu-flavour-distros dopo una patch del kernel.

https://gist.github.com/shadowbq/5897002b620b093ca7578b5f13c3f3a1

Ho anche incluso un semplice wrapper .shche puoi utilizzare in sostituzione per l'avvio di workstation vmware in modo da poter essere sicuro che carichi in modo appropriato i moduli kernel vm-network e vm-mon ogni volta.

Nota: questo script non espanderà 'tar' o 'patch' i file sorgente, questo serve per ricompilare automaticamente i moduli del kernel dopo una patch del kernel seguendo i passaggi originali di Stephen Wassell.

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.