Gli esempi della riga di comando seguenti funzionano in VMware Fusion. Ubuntu16 è la macchina virtuale di esempio per Linux e Win10 è la macchina virtuale di esempio per Windows.

riavviare la macchina virtuale.

vmrun reset Win10.vmwarevm/Win10.vmx soft

Creare uno snapshot di una macchina virtuale.

vmrun snapshot Ubuntu16.vmwarevm/Ubuntu16.vmx mySnapshot

Elencare gli snapshot nella macchina virtuale, mostrando lo snapshot creato nel comando precedente.

vmrun listSnapshots Ubuntu16.vmwarevm/Ubuntu16.vmx

Ripristinare lo snapshot creato, che consente di sospendere la macchina virtuale e riavviare il sistema per riprendere il funzionamento.

vmrun revertToSnapshot Ubuntu16.vmwarevm/Ubuntu16.vmx mySnapshot

vmrun start Ubuntu16.vmwarevm/Ubuntu16.vmx

Eliminare lo snapshot specificandone il nome.

vmrun deleteSnapshot Ubuntu16.vmwarevm/Ubuntu16.vmx mySnapshot

Elencare tutte le schede di rete in una macchina virtuale.

vmrun listNetworkAdapters Win10.vmwarevm/Win10.vmx

Aggiungere una scheda di rete NAT in una macchina virtuale.

vmrun addNetworkAdapter Win10.vmwarevm/Win10.vmx nat

Elencare tutte le reti nell'host.

vmrun listHostNetworks

Aggiungere un inoltro della porta in una rete host con gli esempi forniti di nome della rete host, protocollo, porta host, indirizzo IP guest, porta guest e descrizione.

sudo vmrun setPortForwarding vmnet2 tcp 8082 1.1.1.2 88 portforwarding-description

Per la maggior parte delle operazioni guest vmrun, è necessario che VMware Tools sia installato nel sistema operativo guest.

Avviare lo strumento di comando, ridotto a icona, in un guest Windows.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Win10.vmwarevm/Win10.vmx -interactive cmd.exe

Avviare lo strumento di comando come una finestra attiva sul desktop in un guest Windows.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Win10.vmwarevm/Win10.vmx -activeWindow -interactive cmd.exe

Eseguire uno script in un guest Windows, con Perl come interprete dello script. Di seguito vengono illustrati due esempi distinti.

vmrun -gu guestUser -gp guestPassword runScriptInGuest Win10.vmwarevm/Win10.vmx -interactive "C:\perl\bin\perl.exe" "system('notepad.exe');"

vmrun -gu guestUser -gp guestPassword runScriptInGuest Win10.vmwarevm/Win10.vmx -interactive "" "C:\perl\perl.exe C:\script.pl"

Eseguire uno script batch e mantenerlo in esecuzione in seguito. Per utilizzare cmd.exe in Windows, è necessario specificare l'interprete dello script come null.

vmrun -gu guestUser -gp guestPassword runScriptInGuest Win10.vmwarevm/Win10.vmx "" "cmd.exe /k \"C:\\Program Files\\Microsoft Visual Studio\\VC\\vcvarsall.bat\" x86"

Eseguire uno script Perl o un file di script della shell Bash in un guest Linux.

vmrun -gu guestUser -gp guestPassword runScriptInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx -interactive "" "/bin/bash myscript"

vmrun -gu guestUser -gp guestPassword runScriptInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx -interactive "/usr/bin/perl" "system('firefox');"

Avviare un xclock in un guest Linux, che richiede che l'opzione -display venga visualizzata nella console.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx /usr/bin/xclock -display :0

Eseguire lo stesso comando xclock, ma restituire immediatamente il controllo alla console.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx -noWait /usr/bin/xclock -display :0

Eseguire Firefox.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx /usr/bin/firefox --display=:0

L'impostazione dell'ambiente guest con il parametro guestEnv richiede l'autorizzazione root in Linux perché la modifica influisce sui comandi successivi eseguiti da altri utenti.

vmrun -gu guestUser -gp guestPassword writeVariable Ubuntu16.vmwarevm/Ubuntu16.vmx guestEnv SRC tmp.example.com:1666

Elencare i processi in un guest Linux e terminare il processo numero 8192.

vmrun -gu guestUser -gp guestPassword listProcessesInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx

vmrun -gu guestUser -gp guestPassword killProcessInGuest UUbuntu16.vmwarevm/Ubuntu16.vmx 8192

Eseguire uno script Perl in un guest Linux per rimuovere il ritorno a capo di tipo DOS da un file.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx /usr/bin/perl -e "open(FILE, '>/tmp/unix.txt'); while (<>) { s/\r\n/\n/ ; print FILE}" /tmp/dos.txt

Eseguire uno script Perl in un guest Windows per inserire il ritorno a capo di tipo DOS in un file.

vmrun -gu guestUser -gp guestPassword runProgramInGuest Win10.vmwarevm/Win10.vmx C:\cygwin\bin\perl.exe -e "open(FILE, ‘>C:\Users\user\dos.txt’); while (<>) { s/\n/\r\n/ ; print FILE}" C:\Users\guestUser\unix.txt

Per copiare un file dall'host a un guest, l'utente deve disporre dell'autorizzazione di scrittura nella destinazione.

vmrun -gu guestUser -gp guestPassword copyFileFromHostToGuest Ubuntu16.vmwarevm/Ubuntu16.vmx ~/img.db /tmp/img.db

Per copiare un file da un guest all'host, l'utente deve disporre dell'autorizzazione di lettura nel file di origine.

vmrun -gu guestUser -gp guestPassword copyFileFromGuestToHost Ubuntu16.vmwarevm/Ubuntu16.vmx /home/username/addr addr.txt

Per abilitare le cartelle condivise.

vmrun enableSharedFolders Ubuntu16.vmwarevm/Ubuntu16.vmx

Per condividere una cartella in un host Mac con un guest Linux specifico.

Nota

Prima di condividere le cartelle, è necessario abilitarle con l'opzione enabledSharedFolders o selezionando Abilita cartelle condivise nel pannello Impostazioni condivisione della macchina virtuale. Nei guest Linux, la directory /mnt/hgfs è disponibile per la condivisione, ma è possibile utilizzare un'altra directory per le cartelle condivise.

vmrun addSharedFolder Ubuntu16.vmwarevm/Ubuntu16.vmx sharedFolderName ~/Share

Per impostare una cartella condivisa come cartella di sola lettura o eliminare la cartella condivisa.

Nota

Le cartelle condivise sono scrivibili per impostazione predefinita.

vmrun setSharedFolderState Ubuntu16.vmwarevm/Ubuntu16.vmx sharedFolderName ~/Share readonly

vmrun removeSharedFolder Ubuntu16.vmwarevm/Ubuntu16.vmx sharedFolderName

Nota

Nei guest Windows Vista e Windows 7 o versioni successive, solo l'account dell'amministratore può utilizzare le opzioni copyFileFromHostToGuest e deleteFileInGuest per scrivere ed eliminare i file nelle cartelle C:\ e di sistema, oppure utilizzare le opzioni createDirectoryInGuest e deleteDirectoryInGuest per modificare le directory di sistema. Gli utenti standard, anche quelli con privilegi di amministratore, non possono eseguire queste operazioni.

Dall'host impostare un variabile guest nelle macchine virtuali.

vmrun writeVariable Win10.vmwarevm/Win10.vmx guestVar vmstartdate 21April2017

Nei sistemi operativi guest, leggere la variabile guest appena impostata.

> rpctool.exe "info-get guestinfo.vmstartdate"

$ vmware-rpctool "info-get guestinfo.vmstartdate"

Dall'host impostare un ambiente guest variabile in una macchina virtuale Linux e verificarlo scrivendo l'ambiente variabile in un file temporaneo.

vmrun writeVariable Ubuntu16.vmwarevm/Ubuntu16.vmx guestEnv LD_LIBRARY_PATH /usr/local/lib
Guest user: root
Guest password:
vmrun runScriptInGuest Ubuntu16.vmwarevm/Ubuntu16.vmx /bin/bash "/usr/bin/env > /tmp/env.out"
Guest user: root
Guest password:
Nota

Quando si utilizza l'opzione runScriptInGuest con il comando vmrun, all'host non viene inviato alcun output. Trovare l'output del comando nel file /tmp/env.out nel guest.

In un guest Linux, determinare l'indirizzo IP e impostarlo in una variabile guest.

$ ipaddr=`ifconfig eth0 | grep inet.addr`
$ vmware-rpctool "info-set guestinfo.theip $ipaddr"

Dall'host recuperare l'indirizzo IP appena impostato nel guest.

vmrun readVariable Ubuntu10/Ubuntu10.vmx guestVar theip

Elencare le macchine virtuali in esecuzione.

vmrun list
Total running VMs: 2
Absolute-path-to-virtual-machine.vmx

Absolute-path-to-virtual-machine.vmx

Preparare l'installazione di VMware Tools.

vmrun installTools Ubuntu16.vmwarevm/Ubuntu16.vmx

Scaricare una macchina virtuale con sistema operativo VMware Project Photon.

vmrun downloadPhotonVM ~