Scripter l’arrêt ou le démarrage d’une machine virtuelle sur VMware Server

[Mise à jour : Le développement de VMware Server a été interrompu. Veuillez désormais utiliser VMware Player]

Je vous propose de voir  comment arrêter ou démarrer une ou plusieurs machines virtuelles en ligne de commande depuis un serveur VMware Server. C’est très simple mais surtout très pratique puisqu’il suffit de créer 2 fichiers .BAT afin de lancer en 1 seul clic l’arrêt ou le démarrage des VMs !

Nous allons pour cela utiliser la commande vmware-cmd que l’on trouve par défaut dans le répertoire C:\Program Files\VMware\VMware Server d’un serveur VMware.

Voici d’ailleurs toutes les options disponibles pour cette commande:

Voici une offre de notre annonceur


C:\Program Files\VMware\VMware Server>vmware-cmd /?
Usage:
 C:\Program Files\VMware\VMware Server\vmware-cmd <options> <vm-cfg-path><vm-action> <arguments>
 C:\Program Files\VMware\VMware Server\vmware-cmd -s <options> <server-action> <arguments>Options:
    Connection Options:       
       -H <host>       specifies an alternative host (if set, -U and -P must also be set)
       -O <port>       specifies an alternative port
       -U <username>   specifies a user
       -P <password>   specifies a password
    General Options:
       -h More detailed help.
       -q Quiet. Minimal output
       -v Verbose.
    Server Operations:
    C:\Program Files\VMware\VMware Server\vmware-cmd -l
    C:\Program Files\VMware\VMware Server\vmware-cmd -s register <config_file_path>
    C:\Program Files\VMware\VMware Server\vmware-cmd -s unregister <config_file_path>
    C:\Program Files\VMware\VMware Server\vmware-cmd -s getresource <variable>
    C:\Program Files\VMware\VMware Server\vmware-cmd -s setresource <variable> <value>
    VM Operations:
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getconnectedusers
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getstate
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> start <powerop_mode>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> stop <powerop_mode>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> reset <powerop_mode>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> suspend <powerop_mode>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> setconfig <variable><value>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getconfig <variable>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> setguestinfo <variable> <value>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getguestinfo <variable>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getid
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getpid
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getproductinfo <prodinfo>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> connectdevice <device_name>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> disconnectdevice <device_name>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getconfigfile
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getheartbeat
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getuptime
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getremoteconnections
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> gettoolslastactive
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getresource <variable>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> setresource <variable> <value>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> setrunasuser <username> <password>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getrunasuser    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> getcapabilities
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> addredo <disk_device_name>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> commit <disk_device_name> <level> <freeze> <wait>
    C:\Program Files\VMware\VMware Server\vmware-cmd <cfg> answer
C:\Program Files\VMware\VMware Server>

Démarrer une machine avec vmware-cmd

Je créé sur mon serveur VMware un nouveau fichier avec l’extension .BAT dans le quel je copie le code suivant:

C:
cd "\Program Files\VMWare\VMware Server"
call vmware-cmd "D:\Virtual Machines\W2000\Windows 2000.vmx" start
call vmware-cmd "D:\Virtual Machines\W2003\Windows 2003.vmx" start
call vmware-cmd "D:\Virtual Machines\W2008\Windows 2008.vmx" start
cd \

Il me suffit alors de lancer mon script .BAT pour démarrer les 3 machines virtuelles nommées respectivement : Windows 2000, Windows 2003 et Windows 2008.

Arrêter une machine avec vmware-cmd

De la même manière le script suivant me permet de stopper les 3 mêmes machines virtuelles:

C:
cd "\Program Files\VMWare\VMware Server"
call vmware-cmd "D:\Virtual Machines\W2000\Windows 2000.vmx" stop
call vmware-cmd "D:\Virtual Machines\W2003\Windows 2003.vmx" stop
call vmware-cmd "D:\Virtual Machines\W2008\Windows 2008.vmx" stop
cd \

Voici mon GPS pour faire du vélo ! Le Garmin Edge 830 est une vraie réussite avec une autonomie de plus de 15 heures cartographie activée et un écran tactile désormais absolument parfait qui réagit au doigt et à l'oeil, comme un smartphone.

Créez un itinéraire sur Strava ou sur Garmin Connect et il est aussitôt transmis à vote GPS. Si vous êtes pressé ou dans un lieu inconnu, le générateur de boucle vous guidera tout simplement. Si vous décidez de changer de prendre un autre chemin le recalcul est automatique et un nouvel itinéraire vous sera proposé.

Voir mon classement des meilleurs GPS pour en savoir plus !

GPS Vélo

Laissez un commentaire