VMware deja de andar luego de actualizar a Ubuntu 12.10

Gabolonte Blasfemus

No es extraño encontrarse frecuentemente con que los productos de VMware para escritorio, como Workstation y Player, sufran problemas de compatibilidad con los kernels Linux más recientes. Algunas veces se resuelve instalando la última versión e.x.p (que son betas de la próxima versión estable por venir), pero en esta ocasión no es posible solucionarlo de esta manera, y el problema se da al pasar al nuevo kernel 3.5.x que usa, por ejemplo, el nuevo Ubuntu 12.10 Quantal Quetzal; cuando abrimos VMware Workstation 9 ó VMware Player 5 (últimas versiones disponibles de ambos productos al momento de escribir esto) todo parece ir bien, pero al intentar encender una máquina virtual nos vamos a encontrar con el siguiente mensaje de error:

“Unable to change virtual machine power state: Failed to power on ‘ruta-de-máquina-virtual‘.Transport (VMDB) error -14: Pipe connection has been broken.”

Este problema se debe a cambios introducidos en la versión 3.5 del kernel Linux para los cuales estos productos aún no están preparados para funcionar. Afortunadamente existe una solución si no queremos quedarnos sin máquinas virtuales en nuestra distro Linux hasta que aparezcan nuevas versiones de estos productos, ya que uno de los miembros de su comunidad de usuarios identificado como An_tony es el autor de un parche, basado en otro creado por Artem S. Tashkinov, que restituye el normal funcionamiento de VMware Workstation 9 y VMware Player 5 bajo el kernel Linux 3.5.x. Para aplicarlo debemos bajar y descomprimir el archivo vmware9_kernel35_patch.tar.bz2 (click para descargar) en nuestro equipo. Al hacerlo nos encontraremos con dos archivos: vmware3.5.patchpatch-modules_3.5.0.sh. Este último es el que deberemos ejecutar, bajo derechos de superusuario por supuesto, para aplicar este parche de software a VMware. La forma más segura y a prueba de posibles errores que puedan salir es la siguiente:

Parándonos con la terminal en la ruta donde descomprimimos los dos archivos, primero nos aseguramos que el archivo patch-modules_3.5.0.sh posea derechos de ejecución en el sistema.

chmod +x patch-modules_3.5.0.sh

Antes de ejecutarlo, eliminamos todos los módulos de VMware presentes en el kernel actual, ya que pueden traer problemas a la hora de aplicar el parche.

sudo rm /lib/modules/$(uname -r)/misc/vm*

Luego reiniciamos el sistema, y finalmente ejecutamos el parche, siempre con derechos de superusuario:

sudo ./patch-modules_3.5.0.sh

Veremos unos cuantos mensajes en la consola y una vez finalizado leeremos el mensaje “All done, you can now run …” más el nombre del producto VMWare que encontró y parcheó en nuestra máquina. Luego de esto deberíamos poder correr nuestras máquinas virtuales sin problemas.

Por supuesto, en estos casos la famosa máxima your mileage may vary es más válida que nunca y puede que por algún motivo no funcione o incluso terminar con un kernel panic. Nunca está de más recordar que cada uno es responsable de lo que hace en su sistema.

El parche en sí, que se encuentra en el archivo vmware3.5.patch, está en código fuente, por lo que cualquiera con los conocimientos suficientes puede revisarlo para asegurarse que solo haga lo que dice hacer.


Comments are closed.