O Vmware Server é a ferramenta correta para executar uma VM em segundo plano, não o VMware Player.
É possível executar o VMware Player como um serviço do Windows para que um usuário não precise estar logado para que o player seja executado?
O Vmware Server é a ferramenta correta para executar uma VM em segundo plano, não o VMware Player.
Desculpe pela resposta atrasada com isso. Eu estava tentando descobrir isso hoje. Eu me deparei com essa resposta, imaginei deixar SF saber.
Você pode realmente ...
Adicione isso ao seu arquivo de configuração do VMX para definir o VMWare Player e não mostrar a interface do usuário:
msg.noOk="TRUE"
Obtenha instsrv.exe de um Windows Server Resource Kit para criar o seu próprio serviço
Na inicialização, um arquivo de lote chama o serviço que você acabou de fazer
Instruções passo a passo podem ser encontradas aqui:
Eu sei que essa é uma pergunta antiga, mas procurei por toda a Internet uma solução para isso e não consegui encontrar nada tão abrangente quanto o que gostaria de compartilhar.
Sim, é possível usar o vmware player como um serviço para o Linux (há uma resposta separada para o Windows); é fácil e não há motivo para pensar em não fazer isso. É especialmente ótimo para hospedar um servidor sem cabeçalho de um servidor sem cabeçalho.
A outra escolha orientada para VMware, o VMware Server, está obsoleta e a única outra escolha de US $ 0 que eu conheço é o VirtualBox. Se você gosta disso melhor do que o VMWare Player, mais poder para você, mas eu conheço o VMWare Player e não vejo uma razão para não usar um caminho bem suportado para conseguir o que eu quero.
Provavelmente, você desejará que ele seja executado em uma conta não raiz e inicializado e encerrado nos tempos de inicialização / desligamento padrão do serviço. Se esse for o caso, então veja como configurá-lo:
Obtenha o pacote daemon (geralmente não instalado por padrão):
apt-get install daemon
Faça o download do VMware Player e do VMware VIX do vmware.com e instale-os para obter o mecanismo da VM e o binário vmrun (controle de linha de comando de execução vm) do VIX.
Adicione o serviço à inicialização criando /etc/init.d/<vm_server_name>
. Poderia ser algo assim:
#! /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
Torne o script executável:
chmod a+x /etc/init.d/vm_server_name
Adicione o script aos runlevels de inicialização / desligamento do serviço linux padrão. Os números asseguram que é uma das últimas coisas iniciadas e a primeira a ser encerrada:
update-rc.d vm_server_name defaults 99 01
Notas:
/etc/init.d/vm_server_name stop
e, em seguida, inicie-o localmente usando a GUI do player do VMware. Depois de terminar, suspenda-o e execute /etc/init.d/vm_server_name start
para iniciar novamente a instância sem cabeça. De SuperUser
É possível usar este wrapper de microsoft gratuito muito antigo (google para explicações sobre srvany): ftp://ftp.microsoft.com/bussys/winnt/winnt-public/reskit/nt40/i386/srvany_x86.exe
Ou há também ferramentas comerciais: link