Benutzer-Werkzeuge

Webseiten-Werkzeuge


mw2dw:ds3000-clonzilla-winxp

!!! 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 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 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 M$ Windoof 7

M$ Windoof XP-Installation

Danach einfach

  • Windoof installieren
  • in das Administrator-Konto umloggen (per <Strg>+<Alt>+<Entf> 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“!
  • 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: Datenbank_mit_Client-Informationen

Ruby-Stuff

Analog zu Ruby-Stuff.

POSTRUN

Damit „case“ funktioniert, müssen vorher noch die mbrs beider Images nach /usr/local/lib/sysprep/ kopiert werden:

 cp <PFAD_ZU_DEN_GESPEICHERTEN_CLONZILLA-IMAGES>/<WINDOWS_**XP**_IMAGE>/sda-mbr /usr/local/lib/sysprep/**xp**-mbr.dd
 cp <PFAD_ZU_DEN_GESPEICHERTEN_CLONZILLA-IMAGES>/<WINDOWS_**7**_IMAGE>/sda-mbr /usr/local/lib/sysprep/**7**-mbr.dd

Analog zu 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 M$ Windoof 7

mw2dw/ds3000-clonzilla-winxp.txt · Zuletzt geändert: 2019/09/23 12:08 von Patrick Neumann