Ubuntu 17.10 Upgrade quebrou o VMWare Workstation 12.5

7

Oi depois de atualizar para o Ubuntu 17.10, o VMware agora não está sendo iniciado.

Eu recebo a mensagem:

/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'

Estou ciente de que há patches disponíveis e estou tentando aplicá-los e recompilar. Corri da solução no link :

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 ...

Unforunately, o vmware-modconfig está falhando por causa de uma dependência que parece em uma versão particular do gcc. Estou no caminho certo? Qualquer ajuda com esta questão seria muito apreciada.

EDITAR Obrigado Steve, o abaixo obteve o vmware novamente. Eu incluí correção menor. Testado e confirmado eu poderia rodar uma máquina virtual.

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
    
por user1330734 20.10.2017 / 06:38

3 respostas

11

Eu consegui trabalhar com o VMWare Workstation 12.5.7 no Kubuntu 17.10.

Em /usr/lib/vmware/modules/source :

  1. Extrair vmmon.tar e vmnet.tar

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

    Isso criará os diretórios vmmon-only e vmnet-only .

  2. Buscar o hostif.c corrigido

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

    (nota: link - também contém uma correção semelhante para o VMWare Workstation 14)

  3. Edite o vmnet-only/bridge.c :

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

    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. Como usuário:

    /usr/lib/vmware/bin/vmware
    

    (para evitar que seja executado vmware-modconfig )

por Stephen Wassell 24.10.2017 / 09:45
2

O bugfix descrito por: Stephen leva muitos a um outro bug: "Falha ao obter informações do gcc".

A solução mais simples é para faz download da estação de trabalho do vmware player 14.1 .

A instalação em vez da versão 12.5 resolve os problemas descritos acima.

Para isso, basta executar

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

E siga as instruções no instalador gráfico.

    
por tokam 30.01.2018 / 21:11
2

Além da resposta de Stephen Wassell , se você ainda estiver executando a versão da VM Workstation 12.5.x, você precisará recompilar seu .ko para cada correção do kernel. muito ..

Você pode ver este erro: ( Formato de módulo inválido )

# 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

Aqui está uma ferramenta para manter atualizados os módulos do kernel para o Ubuntu-flavor-distros após um patch de kernel.

link

Eu também incluí um wrapper simples .sh que você pode usar um substituto para iniciar a estação de trabalho vmware para que você possa ter certeza de que carrega adequadamente os módulos vm-network e vm-mon do kernel toda vez.

Nota: este script não expandirá os arquivos de origem 'tar' ou 'patch', isto é para recompilar automaticamente os módulos do kernel após um patch de kernel seguindo as etapas originais por Stephen Wassell.

    
por shadowbq 26.01.2018 / 02:47