vmware error “Unable to change virtual machine power state: Failed to connect to peer process.”
Após um certo sacrifício para compilar o vmware na distro ArchLinux em ambiente 64 bit, acreditava que tudo estava pronto e funcional. Pois bem, eu me enganei.
O VMware, foi configurado com a ajuda do vmware-any-any baixado e instalado com a ótima ferramenta yaourt dos repositórios do AUR, desempenhou bem seu papel instalando a versão workstation 6.0.0-45731.x86_64 desta software de virtualização excepcional.
Scripting na inicialização, interface gráfica aberta, software rodando… criação de máquinas virtuais perfeitamente, mas na hora do “Start” – vmware error “Unable to change virtual machine power state: Failed to connect to peer process.”
Aqui começa a história!
Primeira opção, foi restartar o daemon do vmware, não adiantou muita coisa como o esperado.
Segunda alternativa, chamar o vmware do konsole e tentar iniciar uma vm para buscar alguma informação de debug. Bem, esta foi a qual descobri o ocorrido:
[memphyx@x64 ~]$ vmware
/usr/lib/vmware/bin-debug/vmware-vmx: error while loading shared libraries: libXtst.so.6: wrong ELF class: ELFCLASS64
Descoberto o problema! Ele precisa da libXtst.so.6 em um ambiente de 32 bits!
Pois bem, vamos verificar o que havia instalado de libxtst:
$ yaourt -Ss libxtst
current/libxtst 1.0.2-1.1 [installed]
X11 Testing — Resource extension library
aur/lib32-libxtst 1.0.1-3
X11 Testing — Resource extension library
então:
yaourt -S lib32-libxtst – …. mas….
Arquivo `libxtst-1.0.1-1.pkg.tar.gz’ não encontrado.
==> ERROR: Failure while downloading libxtst-1.0.1-1.pkg.tar.gz
==> Aborting…
Error: Makepkg was unable to build lib32-libxtst package
Então forcei uma instalação alterando o PKGBUILD que o yaourt chama para este:
pkgname=lib32-libxtst
pkgname32=${pkgname/lib32-/}
pkgver=1.0.2
pkgrel=1
pkgrel32=1
license=(‘GPL’)
pkgdesc=”X11 Testing — Resource extension library”
arch=(x86_64)
url=”http://xorg.freedesktop.org/”
groups=lib32
depends=lib32-libxext
source=(ftp://archlinux.c3sl.ufpr.br/archlinux/current/os/i686/${pkgname32}-${pkgver}-${pkgrel32}.pkg.tar.gz)
md5sums=(84f2134f1ed0f6585301abd3dda14bc3)
Antes de eu ter feito esta alteração, constatei que este arquivo estava buscando um pacote desatualizado, por isto, não consegui instalar na primeira tentativa, mas feito as alterações para estas, a instalação correu normalmente.
Mas mal sabia que este era o principio dos bugs e erros. Depois disto, outro erro:
[memphyx@x64 ~]$ vmware
NOT_IMPLEMENTED /build/mts/release/bora-45731/bora/lib/user/msg.c:203
Attempting to dump core…
Child process 8966 failed to dump core (status 0×6).
NOT_IMPLEMENTED /build/mts/release/bora-45731/bora/lib/user/msg.c:203
Panic loop
Penso eu que terei que reinstalar o bendito, então mãos as obras! Uma rápida procura no google e encontro este fórum de discussão sobre o VMware e alguém com o mesmo problema que eu. (djavu!?)
http://www.vmware.com/community/thread.jspa?messageID=643560
Solução real? Não, ainda não, mas ajudou!
Vamos a recompilação que parece ser o caminho mais curto ou idiota a se pensar sem pensar no momento!
Utilizando-se novamente do vmware-any-any, mas mesmo assim continuava acusando o mesmo erro. Desinstalei o vmware-workstation com vmware-uninstall-vix.pl e vmware-uninstall.pl !
Garimpando um pouco mais, me deparei com este tópico no BBS do Archlinux:
http://bbs.archlinux.org/viewtopic.php?pid=254640
Lá encontrei uma receita que utiliza de ebuilds gentoo do pacote emul32 em binários, que é uma outra implementação das lib32. Fiz como descrito no tópico para instalar emul32 a partir dos servidores do yaourt.
yaourt -Ss emul32
yaourt -S emul32-baselibs emul32-compat emul32-gtklibs emul32-qtlibs emul32-soundlibs emul32-xlibs
Lembre-se que ao pedir para editar o PKGBUILD, faça-o adicionando x86_64 na linha referente a arch, deixando-a desta forma – arch=(‘i686′ ‘x86_64′) - caso contrário, você não conseguirá instalá-las.
Instaladas, adicionei as seguintes linhas em /etc/ld.so.conf:
/emul/linux/x86/lib
/emul/linux/x86/usr/lib
/emul/linux/x86/usr/qt/3/lib
Já havia anteriormente adcionado as linhas apontando para /opt/lib32 ao qual pede o autor de uma das respostas do tópico.
#updatedb && ldconfig
$vmware
Reinstalei (rsrsrs) o Workstation e mesmo assim nada de iniciar uma VM já criada!
Após várias tentativas frustradas e com a paciência se esgotando, desisti do worstation, desinstalando-o novamente, tentei instalar o vmware-server. Tudo ocorreu dentro do esperado:
… bug no instalador
… ter que utilizar o vmware-any-any pra compilar
… e por fim, instalado e com daemons “start’e'ados” , vou chamar a GUI do software e outro erro pedindo bibliotecas em 32 bits. ahhhghrh!! E desta vez a biblioteca pedida não existe nos chamados pacotes lib32-alguma_coisa, mas existe nos repositórios i686 do arch.
[memphyx@x64 ~]$ vmware
/usr/lib/vmware/bin/vmware: error while loading shared libraries: libglade-2.0.so.0: wrong ELF class: ELFCLASS64
As Lib32 nos sistemas linux de 64 bit (x86_64), provê praticamente um ambiente completo e funcional em 32 bits para aplicativos que ainda não possuem binários totalmente funcionais ou não implantados em 64 bits… como exemplo cito alguns software que me fizeram pensar em alternativas para instalar as dependencias destes, como o: Gizmo (instalei, mas não funcionou… rsrsrs) , Cedega (parece-me que está funcionando, mas não testei ainda… pelo menos a GUI e os testes ele faz e passa com nota 10), outro que não me recordo e agora o Vmware.
Baixei a libglade em ftp://archlinux.c3sl.ufpr.br/archlinux/current/os/i686 e o glade, perl-glade em ftp://archlinux.c3sl.ufpr.br/archlinux/extra/os/i686. Agora vem o segredo:
Vá ao diretório onde baixou os pacotes glade-3.2.2-1.pkg.tar.gz, glade-perl-1.006-1.pkg.tar.gz e libglade-2.6.2-1.pkg.tar.gz e crie o diretório test:
… mkdir test
…
[memphyx@x64 Downloads]$ mv glade-3.2.2-1.pkg.tar.gz glade-perl-1.006-1.pkg.tar.gz libglade-2.6.2-1.pkg.tar.gz test/
[memphyx@x64 test]$ tar -zxvf libglade-2.6.2-1.pkg.tar.gz
Observando a extrutura criada vamos no diretório usr/lib recem criado e executamos como root o seguinte comando:
[root@x64 lib]# mv lib* /opt/lib32/usr/lib/
Feito… somente com este já podemos testar o funcionamento da GUI do vmware!
Chamei-a do terminal aberto com o yakuake mesmo, e agora as coisas pelo menos fluiram e funcionaram quase que perfeitamente como pode ser observado na imagem abaixo.

Um grande detalhe foi que as Maquinas Virtuais criadas anteriormente não abriram com o Server, e fui obrigado a criar uma outra maquina para fim de Testes.
Como utilizo o VmWare Server em Servidores de algumas empresas com as quais trabalho, resolvi ficar com ele mesmo, pois, além de ser Free, tenho uma melhor administração das VM’s que com o VmWare Workstation que é pago e possuo mais ferramentas que o VmWare Player (que também seria a minha terceira alternativa se o Server não funcionasse) para rodar minhas aplicações em ambientes virtualizados.
Esta experiência “quase traumática”, me fez recordar quando tive que instalar o Vmware Server no Slackware 10.2:
- Naquela época o Slackware não utilizava o PAM, e o responsável pela segurança na autenticação de usuários e serviços era o NSS (creio que hoje, ainda o seja com uma ajuda do PAM em sua versão 12). O Vmware Server me obrigou a instalar o PAM nesta ótima distro! Lembro-me que a gambiarra foi tão grande que acredito não conseguir repetir o feito para termos didáticos e de prova de conceito … ( rsrs! ), pois utilizei vários pacotes do Dropline Gnome e FreeRock Gnome, Fedora Core/Red Hat, SuSE e Mandrake, sempre gerando pacotes tar.gz com a ajuda do rpm2tgz e/ou alien e buscando arquivos destes pacotes para que o PAM funcionasse no Slackware… eita sofrimento!
Fica como lição de casa para vocês, acertarem as dependências para um melhor visual da interface do VmWare Server, porque agora eu estou cançado, mas posto em breve como comentário ou atualização deste post!
Antes de se irem, a mensagem de erro com o Vmware Server funcionando é esta:
[memphyx@x64 ~]$ vmware
/usr/lib/vmware/bin/vmware: error while loading shared libraries: libgnomecanvas-2.so.0: wrong ELF class: ELFCLASS64
/usr/lib/vmware/bin/vmware: /usr/lib/vmware/lib/libpng12.so.0/libpng12.so.0: no version information available (required by /opt/lib32/usr/lib/libcairo.so.2)
GLib: Cannot convert message: Conversão do conjunto de caracteres “UTF-8″ para “ISO-8859-1″ não é suportada
(vmware:12393): GdkPixbuf-WARNING **: Couldn’t convert text chunk value to UTF-8.
(vmware:12393): GdkPixbuf-CRITICAL **: file ../../gtk+-2.4.14/gdk-pixbuf/gdk-pixbuf.c: line 662 (gdk_pixbuf_set_option): assertion `key != NULL’ failed
———-
Apesar destes erros no “debug”, ele está funcionando muito e muito bem!