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.