Instalando VMWare no Slackware

Publicado por Elvis Chinen da Silva em 30/06/2008

[ Hits: 6.909 ]

 


Instalando VMWare no Slackware



Primeiro crie as pastas /etc/rcSS e dentro dela crie as pastas init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d:

# mkdir /etc/rcSS
# cd /etc/rcSS
# mkdir init.d rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d


Depois descompacte o pacote VMWare e inicie o instalador dele:

# tar zxvf VMware-workstation-X.X.X-xxxxx.xxx.tar.gz
# cd vmware-distrib/
# ./vmware-install.pl


Nas respostas, mude os padrões das perguntas 2 e 3, respondendo respectivamente a /etc/rcSS e a /etc/rcSS/init.d.

Provavelmente se você estiver usando kernel 2.6.25.X dará erros nos módulos vmmon, vmblock e vmnet. Encontrei soluções na net para o vmmon e o vmnet. Primeiramente, vá à pasta /usr/lib/vmware/modules/source/ e descompacte os arquivos vmmon.tar e vmnet.tar.

No vmmon: Edite o aquivo vmmon-only/include/vcpuset.h e edite a linha 74 correspondente a:

#include "asm/bitops.h"

e deixe como:

#include "linux/bitops.h"

Salve e saia. Agora vamos compactar a pasta vmmon-only para vmmon.tar, lembrando que é sempre bom deixar criado um backup do original.

# cp vmmon.tar vmmon.tar.orig
# rm vmmon.tar
# tar cf vmmon.tar vmmon-only


Agora no vmnet: edite o arquivo /usr/src/linux-2.6.25.X/include/net/sock.h, onde X corresponde a sua versão, adicione as seguintes linhas:

static inline void sock_valbool_flag(struct sock *sk, int bit, int valbool)
{
if (valbool)
       sock_set_flag (sk, bit);
else
       sock_reset_flag (sk, bit);
}

Salve e saia. Descompacte o arquivo vmnet.tar e edite o arquivo /usr/local/lib/vmware/modules/source/vmnet-only/filter.c nas seguintes linhas: 48, 53 e 233. Deverá ficar assim:

static struct nf_hook_ops vmnet_nf_ops[] = {
{  .hook = VNetFilterHookFn,
compat_nf_hook_owner
.pf = PF_INET,
/*48---->>*/   .hooknum = 1,
.priority = NF_IP_PRI_FILTER - 1, },
{  .hook = VNetFilterHookFn,
compat_nf_hook_owner
.pf = PF_INET,
/*53----->>*/   .hooknum = 4,
.priority = NF_IP_PRI_FILTER - 1, }
};

/*233---->>*/   transmit = (hooknum == 4);

Salve e saia. Após isso compacte a pasta vmnet-only para vmnet.tar.

# tar -cvf vmnet.tar vmnet-only/

Agora execute novamente o comando:

# vmware-config.pl

Esse procedimento foi usado baseando-se no seguinte erro:

Building the vmnet module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config39/vmnet-only'
make -C /lib/modules/2.6.25.4/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.25.4'
CC [M] /tmp/vmware-config39/vmnet-only/driver.o
CC [M] /tmp/vmware-config39/vmnet-only/hub.o
CC [M] /tmp/vmware-config39/vmnet-only/userif.o
CC [M] /tmp/vmware-config39/vmnet-only/netif.o
CC [M] /tmp/vmware-config39/vmnet-only/bridge.o
/tmp/vmware-config39/vmnet-only/bridge.c: In function 'VNetBridgeUp':
/tmp/vmware-config39/vmnet-only/bridge.c:947: error: implicit declaration of function 'sock_valbool_flag'
/tmp/vmware-config39/vmnet-only/bridge.c:1478:2: error: #endif without #if
make[2]: *** [/tmp/vmware-config39/vmnet-only/bridge.o] Error 1
make[1]: *** [_module_/tmp/vmware-config39/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.25.4'
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config39/vmnet-only'
Unable to build the vmnet module.Building the vmnet module.


-----------------------------------------------------------

Building the vmnet module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config90/vmnet-only'
make -C /lib/modules/2.6.25.4/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.25.4'
CC [M] /tmp/vmware-config90/vmnet-only/driver.o
CC [M] /tmp/vmware-config90/vmnet-only/hub.o
CC [M] /tmp/vmware-config90/vmnet-only/userif.o
CC [M] /tmp/vmware-config90/vmnet-only/netif.o
CC [M] /tmp/vmware-config90/vmnet-only/bridge.o
CC [M] /tmp/vmware-config90/vmnet-only/filter.o
/tmp/vmware-config90/vmnet-only/filter.c:48: error: 'NF_IP_LOCAL_IN' undeclared here (not in a function)
/tmp/vmware-config90/vmnet-only/filter.c:53: error: 'NF_IP_POST_ROUTING' undeclared here (not in a function)
/tmp/vmware-config90/vmnet-only/filter.c: In function 'VNetFilterHookFn':
/tmp/vmware-config90/vmnet-only/filter.c:233: warning: comparison between pointer and integer
make[2]: *** [/tmp/vmware-config90/vmnet-only/filter.o] Error 1
make[1]: *** [_module_/tmp/vmware-config90/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.25.4'
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config90/vmnet-only'
Unable to build the vmnet module.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Exibindo arquivos OpenOffice sem ter o OpenOffice

Saiba que programa está passando na TV usando o FreeGuide no Linux

Ceni - aplicativo do sidux muito prático e fácil para configurar rede

Verificando o nível de tinta de sua impressora com Qink no Mandriva 2008.1

Suse Estúdio, construa um kit Linux!

  

Comentários
[1] Comentário enviado por removido em 01/07/2008 - 20:11h

Uso o Slackware 12.1 e o VMWare Workstation 6.0.4 e não precisei fazer nada disso. Na versão 6.0.3 do VMWare, tinha um problema que evitava que os módulos do kernel compilassem corretamente em kernels mais novos, mas tinha uma boa solução, no fórum do Ubuntu, se não me engano. O Slackware também implementou uma camada de compatibilidade com o sistema de inicialização SysV, e funciona muito bem com o VMWare.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts