**!!! ACHTUNG - evtl. veraltet - ACHTUNG !!!** Diese Seite wurde zuletzt am 9. Juli 2014 um 10:50 Uhr geändert. ===== Intro ===== M$ Windoof XP (SP3) einfach so zu "imagen" und auf mehr als einem Rechner "deployen" ist nicht wirklich praktikabel (gleicher Hostname, gleiche SSID,...). M$ Windoof XP (SP3) "einfach so" vorher per [[http://www.microsoft.com/downloads/details.aspx?FamilyID=673a1019-8e3e-4be0-ac31-70dd21b5afa7&displaylang=en|sysprep]] "zurückzusetzen" bringt einen, da man bei jedem Client das nervige Setup von Hand nochmal durchgehen muss, auch nicht viiieeel weiter voran. Auch eine individuelle Antwortdatei (sysprep.inf) bringt uns an dieser Stelle nicht einen Schritt näher ans Ziel, wir bewegen uns dabei lediglich auf einer Parallelstraße, da danach alle Rechner zwar unterschiedliche SSIDs aber gleiche Hostnamen,... haben. Wir müssen zwar nichts mehr eingeben, aber "falsche Antworten"... naja! Mit Bordmitteln von M$ Windoof XP wäre hier dann auch bereits schluss, und da ich im Zusammenhang mit [[Netzwerkimaging_Win7|M$ Windoof 7]] bereits genug Zeit verplempert habe, habe ich mich mit einer Aufwertung von M$ Windoof XP mit Ruby und Co. nicht weiter aufgehalten sondern bin gleich analog zu M$ Windoof 7 weiter verfahren. Warum ich das hier schreibe? Ganz einfach: Ich dachte, nach der Orgie mit M$ Windoof 7 sollte das mit M$ Windoof XP etwas schneller von der Hand gehen... WEIT GEFEHLT! Nach der X-ten Neuinstallation und etlichen Runden "trail and error" dachte ich mir, dass ich das Leid keinem anderen (außer meinen ärgsten Feinden wie Bill Gates, Steve Balmer,...) wünsche und das hier einfach mal niederschreibe. So, nochmals genug Dampf abgelassen... hier die Fakten: ===== Festplatte wipen ===== Analog zu [[Netzwerkimaging_Win7#Festplatte_wipen|M$ Windoof 7]] ===== M$ Windoof XP-Installation ===== Danach einfach * Windoof installieren * in das Administrator-Konto umloggen (per ++ auch von der Willkommen-Seite möglich) * alten Benutzer (inkl. Daten) löschen * nach belieben mit Software versehen (z. B. WinFuture-UpdatePack, Firefox, FoxitReader, Microsoft Security Essentials,...), dabei sollte darauf geachtet werden, dass alle Links auf dem Desktop als auch im Startmenü dem "Benutzer" "All Users" "gehören"! * [[http://www.microsoft.com/downloads/details.aspx?FamilyID=673a1019-8e3e-4be0-ac31-70dd21b5afa7&displaylang=en|Sysprep]] für M$ Windoof XP SP3 nach C:\sysprep\ entpacken * [[host_user_group_autologon.bat]] nach C:\WINDOWS\system32\host_user_group_autologon.bat kopieren * [[cmdlines.txt]] nach C:\sysprep\i386\$oem$\cmdlines.txt kopieren * [[sysprep.inf]] nach C:\sysprep\sysprep.inf kopieren * sysprep ausführen: C:\sysprep\sysprep.exe -clean C:\sysprep\sysprep.exe -bmsd C:\sysprep\sysprep.exe -reseal -activated -mini -pnp -reboot (passt alles übrigens wunderbar in eine Batch-Datei, die man dann als Administrator ausführt) ===== Hier nun endlich das "Wunder" ===== ==== Datenbank mit Client-Informationen ==== Ich benutze einfach die Datenbank, welche ich bezüglich M$ Windoof 7 bereits erstellt habe: [[Netzwerkimaging_Win7#Datenbank_mit_Client-Informationen]] ==== Ruby-Stuff ==== Analog zu [[Netzwerkimaging_Win7#Ruby-Stuff]]. ==== POSTRUN ==== Damit "case" funktioniert, müssen vorher noch die mbrs beider Images nach /usr/local/lib/sysprep/ kopiert werden: cp //sda-mbr /usr/local/lib/sysprep/**xp**-mbr.dd cp //sda-mbr /usr/local/lib/sysprep/**7**-mbr.dd Analog zu [[Netzwerkimaging_Win7#POSTRUN]] jedoch mit einer erweiterten /usr/local/sbin/config_sysprep: #!/bin/bash WINVER ====== cmp /usr/local/lib/sysprep/xp-mbr.dd <( dd if=/dev/sda bs=512 count=1 2> /dev/null ) && WINVER="xp" cmp /usr/local/lib/sysprep/7-mbr.dd <( dd if=/dev/sda bs=512 count=1 2> /dev/null ) && WINVER="7" case $WINVER in **xp** ) mkdir /mnt/sda1 ntfs-3g /dev/sda1 /mnt/sda1 /usr/local/sbin/sysprep_**xp**.rb rm /mnt/sda1/WINDOWS/system32/\$winnt\$.inf mv /mnt/sda1/WINDOWS/system32/merged.inf /mnt/sda1/WINDOWS/system32/\$winnt\$.inf rm /mnt/sda1/WINDOWS/system32/host_user_group_autologon.bat mv /mnt/sda1/WINDOWS/system32/merged.bat /mnt/sda1/WINDOWS/system32/host_user_group_autologon.bat sync umount /dev/sda1 ;; **7** ) mkdir /mnt/sda2 ntfs-3g /dev/sda2 /mnt/sda2 /usr/local/sbin/sysprep_**7**.rb rm /mnt/sda2/Windows/Panther/unattend.xml mv /mnt/sda2/Windows/Panther/merged.xml /mnt/sda2/Windows/Panther/unattend.xml sync umount /dev/sda2 ;; esac exit 0 ==== Sysprep nachträglich "configurieren" ==== /usr/local/sbin/sysprep__xp.rb erstellen: #!/usr/bin/ruby # needed gems: sqlite3-ruby, activerecord, macaddr sowie inifile require "rubygems" require "active_record" require "macaddr" ActiveRecord::Base.establish_connection( :adapter => "sqlite3", :database => '/usr/local/lib/sysprep/sysprep.sqlite' ) class Client < ActiveRecord::Base end client = Client.find_by_mac_address( Mac.address.delete( ":-" ).downcase ) input = File.open( "/mnt/sda1/WINDOWS/system32/host_user_group_autologon.bat", "r" ) output = File.new( "/mnt/sda1/WINDOWS/system32/merged.bat", "w" ) input.readlines.each do |line| if line =~ /\[[HOSTNAME\]]/ output.puts line.gsub( /\[[HOSTNAME\]]/, client.hostname ) elsif line =~ /\[[USERNAME\]]/ output.puts line.gsub( /\[[USERNAME\]]/, client.username ) else output.puts line end end output.close input.close exit 0 ===== Verteilen und glücklich sein! ===== Analog zu [[Netzwerkimaging_Win7#Verteilen_und_gl.C3.BCcklich_sein.21|M$ Windoof 7]]