VMware Player - In esecuzione come servizio


8

È possibile eseguire VMware Player come servizio Windows in modo che non sia necessario effettuare l'accesso per far funzionare il lettore?

Risposte:


14

Vmware Server è lo strumento corretto per eseguire una VM in background, non Vmware Player.


1
(ed è anche gratuito)
Chris_K,

2
Non proprio vero. Persone in tutta la rete eseguono VMWare Player come servizio.
JamesBarnett,

4
Le persone di @JamesBarnett fanno molte cose che non sono "ideali" - vai a fare un giro e guarda come si comportano gli altri sulle strade se non mi credi. Il fatto che sia possibile "bloccare" il player VMWare in esecuzione come servizio non modifica il fatto che il server VMWare sia lo strumento previsto per quel lavoro.
Rob Moir,

1
Forse dipende dal caso d'uso. Se si desidera eseguire una macchina virtuale incustodita perché si desidera un server VMWare economico, sono d'accordo con te. Tuttavia, l'istruzione "lo strumento corretto per l'esecuzione di una macchina virtuale in background" è eccessivamente ampia. Nel mio caso, volevo eseguire Linux fianco a fianco con Windows usando la modalità Unity e non dovrei preoccuparmi di vedere l'interfaccia utente di VMWare Player. Anche Windows si trova eccessivamente nelle GUI strettamente vincolanti con i processi in background. Una parte centrale della storia del computer è essere in grado di hackerare qualcosa per fare ciò che vuoi. Lo strumento non è sbagliato, devi solo sapere che sono limiti.
JamesBarnett,

6
il server vmware è obsoleto e ha una "versione vm hw"
bassa

5

Ci scusiamo per la risposta in ritardo con questo. Stavo cercando di capirlo oggi. Ho trovato questa risposta, ho pensato di far sapere a SF.

Puoi davvero ...

  • Aggiungi questo al tuo file di configurazione VMX per impostare VMWare Player in modo che non mostri l'interfaccia utente:

    msg.noOk = "TRUE"

  • Ottieni instsrv.exe da un Resource Kit di Windows Server per creare il tuo servizio

  • All'avvio un file batch chiama il servizio appena creato

Le istruzioni dettagliate sono disponibili qui:

http://research.stowers-institute.org/dct/docs/admin/VMwarePlayerService.htm


l'ultimo collegamento è interrotto
stimpy77

2

So che questa è una vecchia domanda, ma ho cercato su Internet una soluzione e non sono riuscito a trovare nulla di così completo come quello che vorrei condividere.

Sì, è possibile utilizzare vmware player come servizio per Linux (esiste una risposta separata per Windows); è facile e non c'è motivo per cui possa pensare di non farlo. È particolarmente utile per l'hosting di un server senza testa da un server senza testa.

L'altra scelta orientata a VMware, VMware Server, è obsoleta e l'unica altra scelta di $ 0 che conosco è VirtualBox. Se ti piace di più rispetto a VMWare Player, più potenza per te, ma conosco VMWare Player e non vedo un motivo per non utilizzare un percorso ben supportato per ottenere ciò che voglio.

Presumibilmente ti consigliamo di eseguirlo con un account non root e di avviarlo e spegnerlo ai tempi standard di avvio / arresto del servizio. In tal caso, ecco come configurarlo:

  • Ottieni il pacchetto daemon (di solito non installato per impostazione predefinita):

    apt-get install daemon
    
  • Scarica VMware Player e VMware VIX da vmware.com e installali per ottenere il motore VM e il file binario vmrun (controllo da riga di comando dell'esecuzione di vm) di VIX.

  • Aggiungi il servizio all'avvio creando /etc/init.d/<vm_server_name>. Potrebbe assomigliare a questo:

    #! /bin/bash
    ### BEGIN INIT INFO
    # Provides:          vm_server_name
    # Required-Start:    $named $remote_fs $syslog
    # Required-Stop:     $named $remote_fs $syslog
    # Default-Start:     2 3 4 5
    # Default-Stop:      0 1 6
    # Short-Description: My Server VM
    # Description:       Virtual Machine instance of My Server
    ### END INIT INFO
    
    PATH=/sbin:/usr/sbin:/bin:/usr/bin
    VM="/path/to/vmx_file.vmx"
    USER_TO_RUN_UNDER="username"
    
    if [[ "$USER" == "$USER_TO_RUN_UNDER" ]]; then
      USER_FLAG=""
    else
      USER_FLAG="--user=$USER_TO_RUN_UNDER"
    fi
    
    case "$1" in
        start)
            daemon $USER_FLAG -- vmrun -T player start "$VM" nogui &>/dev/null &
            ;;
        stop)
            vmrun -T player suspend "$VM" &>/dev/null
            while [[ "$(vmrun -T player list | grep -o "$VM")" == "$VM" ]]; do
              sleep 1
            done
            ;;
        *)
            echo "Usage: $0 start|stop" >&2
            exit 3
            ;;
    esac
    
  • Rendi eseguibile lo script:

    chmod a+x /etc/init.d/vm_server_name
    
  • Aggiungi lo script ai runlevel di avvio / arresto del servizio Linux standard. I numeri assicurano che sia una delle ultime cose iniziate e la prima a essere chiusa:

    update-rc.d vm_server_name defaults 99 01
    

Appunti:

  • Probabilmente dovrai "annullare" tutti i comandi mentre modifichi i file di proprietà di root.
  • Ho inserito un loop in modo che all'arresto lo script non ritorni sul sistema operativo fino a quando non ha completamente sospeso il sistema operativo guest. Non so se sia necessario o meno, ma mi è sembrata una buona idea. Sicuramente rallenterà l'arresto del sistema operativo host, ma secondo me ne vale la pena.
  • Se è necessario interagire con la GUI locale del sistema operativo guest, sospendere il server eseguendolo /etc/init.d/vm_server_name stope quindi avviarlo localmente utilizzando la GUI del lettore VMware. Al termine, sospenderlo ed eseguire /etc/init.d/vm_server_name startper avviare nuovamente l'istanza senza testa.

Se Vmware player e Virtual box sono l'unica cosa che ti è venuta in mente su Linux, allora non stai cercando molto. Oggi KVM e Xen sono gli strumenti preferiti.
Zoredache,

1
Una buona risposta per gli utenti Linux, ma la domanda era specificamente quella di eseguire VMWare Player come servizio Windows - Forse dovresti fare e rispondere a una domanda separata su come farlo su Linux :-)
voretaq7

Grazie per i suggerimenti ad altre soluzioni. Prova a cercare "vm as a service" in google e vedrai quello che ho visto. Penso che quello che stai veramente dicendo sia che credi che gli hypervisor siano il nuovo hotness. Penso che ci siano validi motivi per cui gli hobbisti scelgono un host Linux con altri VM come servizi, ma per la scalabilità sono sicuro che tu abbia ragione.
David Gladfelter,

Spiacenti, non ho visto la parola "Windows" nella domanda.
David Gladfelter,

hmm, ripensandoci penso che Windows non sia stato menzionato nella domanda quando ho risposto. Potrebbe essere sbagliato ...
David Gladfelter il

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.