XP-Installation "gabeln" |
Version de0.92 2005-01-24
|
0 Inhalt
0 - Inhalt1 - Intro
2 - Startszenario
3 - XP Vorbereiten
4 - Debian installieren
5 - ntfsclone
6 - NTFS-Bootsektor anpassen
7 - Bootmanager grub einrichten
8 - BOOT.INIs anpassen
9 - Letzte Schritte
1 Intro |
Zurück zum Inhalt |
Das angestrebte Ergebnis ist eine frische XP-Installation - mittels ntfsclone -
in zwei weitere Partitionen auf derselben Platte zu klonen und diese
Installationen dann auf spezielle Aufgaben (z.B. eine zum Daddeln und eine
für technische Spielereien) zu auszurichten.
Von diesen können dann - im sauberen Urzustand - Images gesichert werden die dann
- bei späterem Bedarf - bequem über "verschmutzte" XPs drübergebügelt werden können.
Da ich selbst keine komplette Doku dazu finden konnte fasse ich hier kurz, die
Schritte für dieses spezifisches Vorhaben zusammen.
Beim zusammensuchen der Informationen haben mir
Anton Altaparmakov
im
Forum von
2 Startszenario |
Zurück zum Inhalt |
In diesem Szenario wird von einem System mit nur einer Festplatte ausgegangen in deren erster Partition (hier 20GB groß) ein WinXP installiert wurde. Das schränkt automatisch die Anzahl der möglichen Klone auf 2 ein, da XP darauf besteht in einer primären Partition zu residieren. Die letzte der vier möglichen Primären wird hier für eine erweiterte Partition verwendet in der ein kleines Helfer-Linux untergebracht wird. Hier ist es mit 30GB allerdings nicht soo klein soll aber später auch als Lagerstätte für die gesicherten Images der XPen dienen. Den Rest-Platz kann man dann für Datenpartitionen oder andere Betriebssystem verwenden die weniger allürenhafte Ansprüche haben als XP.
3 XP Vorbereiten |
Zurück zum Inhalt |
Eine weitere "Nickeligkeit" mit der XP aufwartet ist das es sich die seine "Umgebung"
"merkt". Damit ist nicht nur die ungefähre Hardwareausstattung des jeweiligen Rechners
gemeint sonder auch dessen Konfiguration. Im Registry-Key
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
werden die Partitionen gespeichert
die in XPs Nachbarschaft "rumliegen".
Dabei werden auch versteckte Partitionen registriert!
Klont man nun einfach XP und bootet das so erstellte
System findet dieses in seiner Registry eine Umgebungsbeschreibung vor die mit der
tatsächlichen nicht übereinstimmt. Darauf reagiert XP verstimmt und gibt
sich "verwirrt".
Auf meinem System konnte man sich zwar anmelden wurde von XP aber statt mit dem
Desktop mit der Abmeldungs-Meldung belohnt. Anschließen fror das System ein.
Aber dies kann man leicht umgehen indem man regedit
an wirft und die Werte
im entsprechendem Registry-Key
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
kurzerhand löscht.
Beim nächsten Reboot wird sich XP dann erneut "umsehen" und seine Registry dann,an
die inzwischen von uns veränderten, Gegebenheiten anpassen.
4 Debian Installieren |
Zurück zum Inhalt |
Als Helfer-Linux, mit dem XP bearbeitet werden wird, soll hier Debian zum Einsatz kommen.
Es gibt sicherlich noch jede Menge anderer Lösungen. Zum Beispiel mit proprietärer
Software oder anderen Linuxen. Debian bietet sich zum einem an weil es flux und einfach
installiert ist und zum anderen meine Lieblingsdistribution ist.
Also gilt es sich die Installer-CD - z.B. die
Netinst-Version - zu besorgen, diese
zu Booten und bis zur Partitionierung standardmäßig vorzugehen.
Dabei wird man wohl auch ohne die
Debian-Installationsanleitung
auskommen können.
Bei der Partitionierung angelangt werden zwei primäre für die
Klone angelegt und im Debian-Menü mit "Nicht verwenden" markiert.
Es macht natürlich Sinn die Partitionen in einer Größe anzulegen, die dazu
geeignet ist, die zu klonenden Installation auch aufzunehmen!
Die tatsächich benötigte Größe hängt vom verwendeten Platz auf der Original-Partition ab.
Wenn man die neuen Partitionen mit der selben Größe anlegt wie die alte
ist man auf der sicheren Seite.
Den Rest der Platte kann/muß man dann für logische Partitionen verwenden.
Eine wird direkt für Debian verbraucht.
Bei der Paketauswahl kann natürlich auf unnötigen Schnick-Schnack, wie z.B. eine
grafische Benutzerschnittstelle, verzichtet werden.
5 ntfsclone |
Zurück zum Inhalt |
Ist die Installation abgeschlossen wird von der Konsole aus erst einmal
das eigentliche Werkzeug - die ntfsprogs - sowie ein Hexadezimal-Editor an Bord geholt.
Debian typisch, als root, mit apt-get install ntfsprogs hexedit
Als nächstes kann man dann den Klonvorgang an werfen. Dabei sollte darauf geachtet werden
das beim Aufruf von ntfsclone
die Reihenfolge der Parameter beachtet wird!
ntfsclone --overwrite /dev/ziel /dev/quelle
ntfsclone --overwrite /dev/hda2 /dev/hda1
und, "etwas" später
ntfsclone --overwrite /dev/hda3 /dev/hda1
6 NTFS-Bootsektor anpassen |
Zurück zum Inhalt |
Nun müssen noch die NTFS-Bootsektoren der geklonten Partitionen modifiziert werden.
Da XP gerne in der ersten Partition residiert müssen die vorausgehenden
"Übersprungen", mit einem Offset maskiert werden.
Dafür müssen wir erst feststellen wo diese beginnen.
fdisk -ul /dev/hda
gibt z.B.:
Device Boot Start End Blocks Id System /dev/hda1 * 63 40965749 20482843+ 7 HPFS/NTFS /dev/hda2 40965750 81979694 20506972+ 7 HPFS/NTFS /dev/hda3 81979695 122993639 20506972+ 7 HPFS/NTFS /dev/hda4 122993640 181582694 29294527+ 5 Extended /dev/hda5 122993703 181582694 29294496 83 LinuxDen Wert in der Start-Spalte der geklonten Partitionen muss noch ins Hexadezimalformat gewandelt werden. Das geschieht mit dem Kommando
printf "0x%llx\n" 40965750Als Ergebnis sollte
0x2711676ausgegeben werden.
printf "%x" 40965750tut's auch, sieht aber weniger schön aus.
Der hexadezimale Wert
2711676muss nun noch weiter verarbeitet werden. Die einzelnen Ziffern müssen, nach dem Muster
0xABCDEFGH => GH EF CD AB
Für
2711676ergibt dies
76167102
Wenn 4 paare verdreht werden sollen aber nur 7 Ziffern zu Verfügung stehen wird links um eine Null ergänzt die im hexadezimalen dort genauso wertneutral ist wie im vertrauterem dezimalen Zahlensystem.
Nun gilt es den so gewonnenen Wert noch in den Bootsektor der entsprechenden Partition - hier hda2 - zu schreiben. Dies geschieht mit
hexedit /dev/hda2
Dort werden an der Position
0x1cdie vier Ziffernpärchen
76 16 71 02eingefügt und dann mit <STRG>-X Abgespeichert.
Für hda3 wird analog vorgegangen.
7 Bootmanager grub einrichten |
Zurück zum Inhalt |
In diesem Szenario soll die Ursprüngliche XP-Partition die anderen beiden
sehen können. Dies ist, zumindest einmalig, sogar nötig.
Beim erstmaligen Starten der beiden geklonten XPs dürfen die anderen (XP-) Partitionen,
nicht sichtbar sein da XP sonst bei der Vergabe der Laufwerksbuchstaben durcheinander
kommt. Später, nachdem XP den entsprechenden Registry-Eintrag erstellt hat, können diese
wieder sichtbar gemacht werden.
Das ist leicht durch das Anpassen von /boot/grub/menu.lst
zu erreichen.
Hier nur die XP-relevanten Einträge - für den Erststart - am Ende.
title Master-XP auf hda1 unhide (hd0,0) unhide (hd0,1) unhide (hd0,2) root (hd0,0) savedefault makeactive chainloader +1 title Geklontes XP auf hda2 hide (hd0,0) unhide (hd0,1) hide (hd0,2) root (hd0,1) savedefault makeactive chainloader +1 title Geklontes XP auf hda3 hide (hd0,0) hide (hd0,1) unhide (hd0,2) root (hd0,2) savedefault makeactive chainloader +1
8 BOOT.INIs anpassen |
Zurück zum Inhalt |
Ein Letztes ist noch zu erledigen. In den BOOT.INIs der geklonten XPs wird noch immer
die erste Partition als zu bootende angegeben. Das würde XP natürlich nicht akzeptieren
und mit einer AUTOCHECK PROGRAMM NOT FOUND - SKIPPING AUTOCHECK
-Fehlermeldung
quittiert.
Daher muss zunächst noch einmal das Ur-XP gebootet werden um von dort aus die
BOOT.INIs der geklonten Partitionen zu bearbeiten. Dort muss die
Partitionsnummer geändert werden. Für hda2 so:
[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS [operating systems] multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP auf hda2" /fastdetect /NoExecute=OptIn
9 Letzte Schritte |
Zurück zum Inhalt |
Als abschließende Maßnahme können die beiden Klone gebootet werden damit die XPs ihre Registries aktualisieren können. Dann kann schon mit dem Zuschneiden auf die speziellen Aufgaben begonnen werden.