Eu desenvolvo muito software como hobby e, para testar alterações, reproduzir bugs, etc., descubro que frequentemente preciso de um ambiente Windows limpo para executar meus testes.
Posso iniciar uma VM para fazer isso, mas isso normalmente requer encontrar o ISO do Windows 8.1, criar uma nova VM, inicializá-la, fazer a instalação completa (para procurar minha chave MSDN "VM descartável"), instalar todo o meu software, etc. Francamente, é muito trabalhoso para qualquer problema, exceto os mais significativos.
Não posso simplesmente manter um instantâneo limpo da minha VM porque tenho tendência a deixá-la desativada (é o que acontece por padrão, e é o conselho da Microsoft para gerenciar VMs de teste descartáveis em chaves do MSDN) e na próxima vez que eu usar isso, o período de carência de ativação expirou.
O que pensei em fazer foi criar um script automatizado para construir uma nova VM, incluindo todos os meus principais softwares, sob demanda. Mas a maioria dos tutoriais de automação de implantação que encontrei (usando MDT ou sysprep) parecem ser direcionados a implantações em larga escala. Eu tentei o MDT, mas parece muito difícil instalar software personalizado na imagem (por exemplo, o Virtualbox Guest Additions). Também tentei o sysprep, mas seja o que for que tenha feito, ainda preciso executar manualmente algumas etapas de instalação.
Qual é uma boa maneira de configurar (e manter) um disco de instalação personalizado e scripts que me permitirão executar uma implantação autônoma de VMs de teste de forma razoavelmente rápida?
(Atualmente uso o VirtualBox como meu software - tenho acesso ao Hyper-V e estou pensando em experimentá-lo, mas não tenho certeza se isso vai ajudar. Os problemas que tenho parecem ser mais sobre a instalação autônoma lado das coisas do que sobre a criação da VM).
AtualizarUm ano depois, nunca cheguei mais perto de uma solução. Tentei o sysprep, mas não consegui encontrar uma maneira de manter a imagem atualizada com a atualização do Windows, etc. (você só pode executar novamente o sysprep um determinado número de vezes, AIUI). Tentei o MDT, mas é muito complicado para minhas necessidades.
Uma opção alternativa, que realmente não mencionei na pergunta original: eu poderia usar uma das minhas chaves do MSDN para ativar minha imagem base e clonar conforme necessário. Isso funciona? Especificamente, posso clonar cópias da minha máquina base “sob demanda” sem invalidar minha ativação? Se eu puder, apenas manter uma máquina base ativada para cada versão do Windows que desejo usar pode ser uma abordagem melhor. Há alguma armadilha nessa abordagem que não considerei? Eu odiaria acabar invalidando minhas chaves tentando isso.
Responder1
Você pode evitar o MDT (é muito complexo para suas necessidades) usando algum outro servidor PXE mais simples (ou seja,Serva) então use ImgMgr.exe para criar/manter o script autônomo correspondenteAutônomo.xml. (Estou relacionado ao desenvolvimento do Serva, mas você pode fazer isso usando algum outro servidor PXE alternativo, se desejar)
Responder2
Acho que criar um modelo com sysprep é sua melhor opção, mas será necessário algum trabalho adicional para criar uma instalação totalmente autônoma.
Você pode usar o Gerenciador de Imagem de Sistema do Windows (parte doKit de avaliação e implantação do Windowsque pode ser baixado gratuitamente da Microsoft) para criar um unattend.xml que pode conter muitas das opções que você normalmente precisa inserir manualmente após um sysprep sem o uso de um unattend.xml personalizado. Você pode até ingressar automaticamente em um domínio do Active Directory dessa forma, se necessário
No unattend.xml você também pode especificar um script que será executado no final, que pode lidar com todas as outras ações que não podem ser definidas no unattend.xml.
A experiência me diz que quase sempre será necessário um script adicional no final. Acho que o PowerShell é uma ferramenta muito poderosa para realizar esta tarefa
Da mesma forma que criei várias instalações autônomas do Windows que precisam apenas de alguns cliques para serem concluídas. Para tornar a imagem sysprepped um pouco mais flexível para alterações futuras você pode dividir o script no final em duas partes
- Primeira parte dentro da imagem sysprepped e chamada pelo unattend.xml que define o acesso necessário à rede
- Uma segunda parte que é baixada da rede e executada pela primeira parte. Esta segunda parte pode ser editada, alterada e ampliada conforme necessário para atender às suas necessidades sem a necessidade de recriar sua imagem.
Responder3
Na época do XP, havia uma ótima ferramenta para isso chamada nlite. Ele foi atualizado e transformado em ntlite, o que tornará essas isos integradas para você com o mínimo de esforço.https://www.ntlite.com
Responder4
Se você não estiver preocupado com atualizações ou testes em diversas configurações de aplicativos, basta generalizar com o Sysprep e criar um instantâneo ou clone da máquina desligada. Você pode então criar um novo clone ou restaurar esse instantâneo sempre que desejar um ambiente novo.
O MDT é mais complexo, certamente, mas permite implantar ambientes atualizados para teste e manter uma biblioteca de aplicativos que você pode selecionar durante a implantação. Por exemplo, se alguém me disser que está tendo um erro com o Acrobat Reader 9, Java 1.6u17 e Office 2007, posso selecioná-los em uma biblioteca e instalá-los, junto com as atualizações do Windows, quando fizer login no sistema para o primeira vez para testar.