Buscar

VMWare: Workstation vmrun

Con VMWare Workstation se incluye la herramienta de linea de comandos: vmrun.exe

Encontraremos le herramienta vmrun.exe en el directorio donde se encuentra instalado VMWare Workstation, por defecto: 

C:\Program Files (x86)\VMware\VMware Workstation

Si ejecutamos vmrun.exe sin parámetros, podremos ver todas las opciones disponibles.

VMWare: Workstation vmrun


¿Qué utilidad tiene vmrun?


Con vmrun.exe podemos automatizar cualquier operación que haríamos desde GUI.

Es habitual utilizar VMWare Workstation para montar laboratorios con VMs para realizar todo tipo de pruebas.

Imaginemos que queremos iniciar todas las VMs con un cierto orden o bien detenerlas o bien realizar un snapshot de cada una de ellas, con vmrun.exe, podremos automatizar el proceso.


Veamos el funcionamiento de vmrun:


En primer lugar hemos de tener en cuenta tres cosas: 

1) Por defecto, la ruta C:\Program Files (x86)\VMware\VMware Workstation no se encuentra dentro del path del sistema, por lo tanto, o bien la añadimos o bien nos situamos en el directorio para ejecutar vmrun.exe o bien ejecutamos vmrun.exe indicando la ruta completa.

2) Para indicar que se trata de VMs de VMWare Workstation, deberemos indicar los parámetros: -T ws

3) Para indicar la VM sobre la que queremos realizar la operación: inicio, apagado, etc... nos referiremos a la misma indicando la ubicación de su fichero de configuración VMX.


Veamos algunos ejemplos de funcionamiento:


Ver VMs en marcha:

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws list

Total running VMs: 4
F:\VMWare\VMW-Work\VM4 - (SAN-NAS)\VM4 - (SAN-NAS).vmx
F:\VMWare\VMW-Work\VM1 - (ESX1)\VM1 - (ESX1).vmx
F:\VMWare\VMW-Work\VM2 - (ESX2)\VM2 - (ESX2).vmx
F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx


Detener una VM:

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws stop "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx"

Iniciar una VM:

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws start "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" 

Ver snapshots de la VM:

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws listSnapshots "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" 

Total snapshots: 0

Crear un snapshot (se llamará SNAP01):

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws Snapshot "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" SNAP01

Eliminar un snapshot (se llamará SNAP01):

cd "C:\Program Files (x86)\VMware\VMware Workstation"

vmrun -T ws DeleteSnapshot "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" SNAP01

Iniciar procesos en el interior de la VM:

Es necesario: 

1) La VM ha de disponer de VMWare Tools instaladas.
2) Es necesario conectividad a nivel de TCP/IP entre equipo donde está instalado VMWare Workstation y la VM.
3) Es necesario conocer las credenciales del sistema operativo de la VM.

cd "C:\Program Files (x86)\VMware\VMware Workstation" 

vmrun -T ws -gu XXXX -gp YYYY runProgramInGuest "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" cmd.exe

Para iniciar el proceso en la sesión iniciada:
 

vmrun -T ws -gu XXXX -gp YYYY runProgramInGuest "F:\VMWare\VMW-Work\VM3 - (VCenter)\S1.vmx" -activeWindow cmd.exe

2 comentarios:

  1. Hola Xavi,
    muy buen aporte como siempre! +1000

    Saludos
    Ramon

    ResponderEliminar
    Respuestas
    1. Gracias a ti Ramón.

      ¡Me alegro que te haya gustado!

      ¡Un saludo!

      Xavi.

      Eliminar