Ich beschäftige mich in meiner Freizeit viel mit der Softwareentwicklung und stelle fest, dass ich zum Testen von Änderungen, Reproduzieren von Fehlern usw. häufig eine saubere Windows-Umgebung zum Ausführen meiner Tests benötige.
Ich kann dazu eine VM starten, aber dazu muss ich normalerweise das Windows 8.1 ISO suchen, eine neue VM erstellen, sie booten, die vollständige Installation durchführen (ich gehe gleich meinen MSDN-Schlüssel für die „Wegwerf-VM“ nachschlagen), meine gesamte Software installieren usw. Ehrlich gesagt ist das für alles außer den wichtigsten Problemen zu viel Arbeit.
Ich kann nicht einfach einen sauberen Snapshot meiner VM behalten, da ich dazu neige, die VM unaktiviert zu lassen (das passiert jedenfalls standardmäßig und ist die Empfehlung von Microsoft für die Verwaltung von Wegwerf-Test-VMs auf MSDN-Schlüsseln) und wenn ich sie das nächste Mal verwende, ist die Aktivierungsfrist abgelaufen.
Ich habe überlegt, ein automatisiertes Skript zu erstellen, um bei Bedarf eine neue VM mit all meiner Schlüsselsoftware zu erstellen. Die meisten Tutorials zur Bereitstellungsautomatisierung, die ich gefunden habe (mit MDT oder Sysprep), scheinen jedoch auf Bereitstellungen in größerem Maßstab ausgerichtet zu sein. Ich habe MDT ausprobiert, aber es scheint ziemlich schwierig zu sein, benutzerdefinierte Software in das Image zu installieren (z. B. die Virtualbox Guest Additions). Ich habe auch Sysprep ausprobiert, aber was auch immer ich getan habe, am Ende muss ich einige der Installationsschritte immer noch manuell ausführen.
Was ist eine gute Möglichkeit zum Einrichten (und Verwalten) einer benutzerdefinierten Installationsdiskette und von Skripts, mit denen ich eine unbeaufsichtigte Bereitstellung von Test-VMs relativ schnell ausführen kann?
(Ich verwende derzeit VirtualBox als meine Software. Ich habe Zugriff auf Hyper-V und habe überlegt, es auszuprobieren, bin mir aber nicht sicher, ob es hilft. Meine Probleme scheinen eher mit der unbeaufsichtigten Installation als mit der Erstellung der VM zusammenzuhängen.)
AktualisierenEin Jahr später bin ich einer Lösung noch immer nicht näher gekommen. Ich habe Sysprep ausprobiert, konnte aber keine Möglichkeit finden, das Image mit Windows Update usw. auf dem neuesten Stand zu halten (Sie können Sysprep, soweit ich weiß, nur eine bestimmte Anzahl von Malen erneut ausführen). Ich habe MDT ausprobiert, aber das ist für meine Anforderungen viel zu kompliziert.
Eine alternative Option, die ich in der ursprünglichen Frage nicht wirklich erwähnt habe: Ich könnte einen meiner MSDN-Schlüssel verwenden, um mein Basisimage zu aktivieren und es dann nach Bedarf zu klonen. Funktioniert das? Insbesondere: Kann ich Kopien meiner Basismaschine „auf Anfrage“ klonen, ohne meine Aktivierung ungültig zu machen? Wenn das möglich ist, dann ist es vielleicht besser, einfach eine aktivierte Basismaschine für jede Windows-Version beizubehalten, die ich verwenden möchte. Gibt es bei diesem Ansatz irgendwelche Fallstricke, die ich nicht bedacht habe? Ich würde es hassen, wenn ich dadurch meine Schlüssel ungültig machen würde.
Antwort1
Sie können MDT vermeiden (es ist einfach zu komplex für Ihre Anforderungen) und einen anderen, einfacheren PXE-Server verwenden (z. B.Serva) dann verwenden Sie ImgMgr.exe zum Erstellen/Verwalten des entsprechenden unbeaufsichtigten SkriptsUnattend.xml. (Ich bin mit der Serva-Entwicklung verbunden, aber Sie können dies auch mit einem anderen alternativen PXE-Server tun, wenn Sie möchten)
Antwort2
Ich denke, dass das Erstellen einer Vorlage mit Sysprep Ihre beste Option ist, es ist jedoch etwas zusätzliche Arbeit erforderlich, um eine vollständig unbeaufsichtigte Installation zu erstellen.
Sie können Windows System Image Manager (Teil desWindows Assessment- und Bereitstellungskitdie kostenlos von Microsoft heruntergeladen werden kann), um eine unattend.xml zu erstellen, die viele der Optionen enthalten kann, die Sie normalerweise nach einem Sysprep manuell eingeben müssen, ohne dass eine angepasste unattend.xml verwendet werden muss. Auf diese Weise können Sie bei Bedarf sogar automatisch einer Active Directory-Domäne beitreten.
In der unattend.xml können Sie auch ein Skript angeben, das am Ende ausgeführt wird und alle anderen Aktionen ausführen kann, die in der unattend.xml nicht festgelegt werden können.
Die Erfahrung zeigt, dass fast immer ein zusätzliches Skript am Ende erforderlich ist. Ich finde, dass PowerShell ein sehr leistungsfähiges Tool ist, um diese Aufgabe zu erfüllen.
Auf die gleiche Weise habe ich mehrere unbeaufsichtigte Windows-Installationen erstellt, die nur wenige Klicks benötigen. Um das sysprep-Image für zukünftige Änderungen etwas flexibler zu machen, können Sie das Skript am Ende in zwei Teile aufteilen
- Erster Teil innerhalb des sysprepped-Images und aufgerufen von der Datei unattend.xml, die den notwendigen Zugriff auf das Netzwerk einstellt
- Ein zweiter Teil, der aus dem Netzwerk heruntergeladen und vom ersten Teil ausgeführt wird. Dieser zweite Teil kann nach Bedarf bearbeitet, geändert und erweitert werden, um Ihren sich ändernden Anforderungen gerecht zu werden, ohne dass Sie Ihr Image neu erstellen müssen.
Antwort3
Damals, zu XP-Zeiten, gab es hierfür ein großartiges Tool namens nlite. Es wurde aktualisiert und in ntlite umgewandelt, das diese Slipstream-ISOs mit minimalem Aufwand für Sie erstellt.https://www.ntlite.com
Antwort4
Wenn Sie sich nicht um Updates oder Tests mit verschiedenen Anwendungskonfigurationen kümmern, können Sie einfach mit Sysprep generalisieren und einen Snapshot oder Klon vom ausgeschalteten Computer erstellen. Sie können dann einen neuen Klon erstellen oder diesen Snapshot wiederherstellen, wann immer Sie eine neue Umgebung wünschen.
MDT ist sicherlich komplexer, aber Sie können damit aktuelle Umgebungen zum Testen bereitstellen und eine Bibliothek von Anwendungen verwalten, die Sie während der Bereitstellung auswählen können. Wenn mir beispielsweise jemand mitteilt, dass bei Acrobat Reader 9, Java 1.6u17 und Office 2007 ein Fehler auftritt, kann ich diese aus einer Bibliothek auswählen und sie zusammen mit Windows-Updates installieren lassen, wenn ich mich zum Testen zum ersten Mal beim System anmelde.