ubuntuusers.de

Festplatten-ID in MBR-Datei schreiben

Status: Gelöst | Ubuntu-Version: Xubuntu 12.04 (Precise Pangolin)
Antworten |

Lauscher

Avatar von Lauscher

Anmeldungsdatum:
23. Januar 2012

Beiträge: 541

Wohnort: /..

Hallo!

Ich brauche mal Rat und Hilfe für etwas vermutlich sehr einfaches, wenn man weiß, wie es geht 😛 .

Ich habe eine Datei, die einen MBR enthält, also 512 Byte groß ist. Ich brauche ein einfaches Skript, das eine 4 Byte lange Festplatten-ID an die Position 0x01B8 bzw. 440 schreibt. Mag mir jemand ein solches Skript schreiben? Ich weiß noch viel zu wenig übers Skripten, bin mit dieser eigtl. einfachen Aufgabe überfordert, da ich die nötigen Befehle nicht kenne.

Hintergrund: Im Artikel Dualboot-Windows virtualisieren wird ein virtueller MBR erzeugt mit dem Befehl install-mbr --force ~/WindowsRAW.mbr . Die Festplatten-ID ist dabei gleich 0x00000000. Dies führt gelegentlich zu Fehlern beim Booten von Windows 7. Die benötigte ID erhalte ich mittels sudo fdisk -l, z. B. Festplattenidentifikation: 0xacbdacbd.

Mit dem Programm hexedit kann ich dies problemlos an der richtigen Stelle einsetzen; für den Artikel hätte ich aber lieber ein Skript, das diese Aufgabe übernimmt.

Wikipedia zur Struktur des MBR. Dort heißt die ID "Disk-Signatur"

Danke!

Lauscher

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

Verstehe ich das richtig, dass Du die ID als Hex-codierte Zahl vorliegen hast ?

Dann wäre der 1. Schritt, dass Du von Hex auf binär umcodierst. Das Übliche dafür wäre xxd .
Das Zweite wäre ein gezieltes Kopieren der Bytes. Dafür hat *nix das Standardtool dd .

Zusammen wird das dann wahrscheinlich sowas:

track@lucid:~$ echo "0xacbdacbd"  |  xxd -r  |  dd of=test_mbr bs=1 seek=440 conv=notrunc
4+0 Datensätze ein
4+0 Datensätze aus
4 Bytes (4 B) kopiert, 0,00143863 s, 2,8 kB/s
track@lucid:~$ hd test_mbr
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000001b0  00 00 00 00 00 00 00 00  ac bd ac bd 00 00 00 00  |................|
000001c0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200 

LG,

track

Lauscher

(Themenstarter)
Avatar von Lauscher

Anmeldungsdatum:
23. Januar 2012

Beiträge: 541

Wohnort: /..

Hey, danke! Und das alles nur in einer Zeile! Ich werde es gleich in den Artikel übernehmen.

Viele Grüße, Lauscher

Antworten |