PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Linux Alternative zu "fdisk /mbr"



taylor
24.01.03, 16:29
Hi!

Ich würde gerne wissen, wie ich das zeitraubende Bootdisk && fdisk /mbr loswerden kann.
Leider ist "dd" ein recht schwieriger Suchbegriff, mit zwei nur Buchstaben findet man einfach zu viel.

Was ich probiert habe:


dd if=/dev/zero of=/dev/hda bs=512 count=1

Das überschreibt mir die Partitionstabelle, was ich nicht möchte.
Mir geht's nur darum, hin und wieder einen Bootmanager wie z.B. Lilo aus dem MBR zu schmeissen.

Gruß,
Taylor

Thomas Mitzkat
24.01.03, 16:33
dd if=/dev/zero of=/dev/hda bs=512 count=1

das hab ich letztens auch mal probiert :ugly: ( alles neu macht der mai ) :rolleyes:

am besten ist es, wenn du von einem unbelasteten mbr eine kopie durch das erstmalige schreiben von lilo hast. z.b. /boot/boot.0300, dann kannst du mit lilo -u /boot/boot.0300 den mbr wieder herstellen.

cirad
24.01.03, 21:35
@taylor:
Öhm ... wenn du die "Partitionierung" überschreibst, ist sie logischerweise auch weg, oder?! :rolleyes:

Du kannst den MBR mit
dd if=/dev/hda1 of=mymbr count=1
speichern und mit
dd if=mymbr if=/dev/hda1
wieder zurückschreiben. Aber sobald du eine der vier primären Partitionen änderst, solltest du davon absehen, den alten MBR zurückzuschreiben.

@Thomas Mitzkat:
Wenn du wirklich nur den MBR überschreibst und noch nicht neu gebootet hast, ist das unnötig. Mit cat /proc/partitions kannst du dir die Partitionen anzeigen lassen und einfach wieder mit fdisk eintragen. Nach einem Reboot sind die Informationen natürlich weg, da hilft dann nur das Gedächtnis. (:

Hilft dir jetzt auch nicht mehr ... nur so als Hinweis fürs nächste mal, wenn du irgendwie die Partitionstabelle himmelst. NICHT neubooten. (:

taylor
24.01.03, 21:53
Original geschrieben von cirad
Öhm ... wenn du die "Partitionierung" überschreibst, ist sie logischerweise auch weg, oder?! :rolleyes:

Natürlich. Das möchte ich aber nicht ;)

Ich will nur Lilo aus dem MBR meiner Platte entfernen.
Die Partitionierung gefällt mir so sehr gut.

(genau das macht doch dieser fdisk /mbr Befehl, oder?)

Ein Backup des MBR machen und zurückspielen kann ich, ansonsten würde ich mich an sowas sicher nicht ran wagen.

Warscheinlich habe ich irgendwo einen Denkfehler. Aber ich finde ihn echt nicht. Was ist denn die Default Blocksize von dd? Meine Manpage gibt mir keine Auskunft darüber.

Gruß,
Taylor

Pasulke
24.01.03, 22:08
Der Bootsektor im MBR umfasst 446 Bytes, der Rest ist für die Partitionstabelle reserviert.
das fand ich hier:

http://home.t-online.de/home/mlootz/mbr.htm

Vielleicht hilft Dir das weiter. Wenn ich Dich richtig verstanden habe, willst Du nur diese 466 Byte bearbeiten. ob das mit dd geht weiß ich nicht.

Thomas Mitzkat
24.01.03, 22:31
schau doch mal, ob du nihct in /boot backups des mbr hast eg "boot.300"

taylor
24.01.03, 22:31
Pasulke, genau sowas hab ich gesucht. Dankeschön!

Wenn ich das richtig auffasse, kann ich mit dd sowas nicht erreichen. Ein Sektor ist die kleinste ansteuerbare Einheit. Entweder ganz oder gar nicht überschreiben.

Schade.

Taylor

taylor
24.01.03, 22:36
Original geschrieben von Thomas Mitzkat
schau doch mal, ob du nihct in /boot backups des mbr hast eg "boot.300"


-rw-r--r-- 1 root root 512 2002-02-21 14:05 boot.0200
-rw-r--r-- 1 root root 512 2001-12-30 20:56 boot.0300
-rw-r--r-- 1 root root 512 2002-02-05 17:24 boot.0301
-rw-r--r-- 1 root root 512 2001-12-30 21:35 boot.0305
-rw-r--r-- 1 root root 512 2002-07-30 23:42 boot.0341

Kann ich irgendwie per Trockenübung rausbekommen, was da drin steht?

oenone
24.01.03, 22:59
guck auf datum und uhrzeit und nimm den ältesten

taylor
24.01.03, 23:05
Original geschrieben von oenone
guck auf datum und uhrzeit und nimm den ältesten
Ich werd' mich hüten! Das ist ja wohl ein Schuss ins Blaue.

cirad
24.01.03, 23:17
>> Öhm ... wenn du die "Partitionierung" überschreibst,
>> ist sie logischerweise auch weg, oder?! :rolleyes:
> Natürlich. Das möchte ich aber nicht
Hmm ... Zitat:
"Was ich probiert habe:
dd if=/dev/zero of=/dev/hda bs=512 count=1"
:rolleyes:

> Ein Sektor ist die kleinste ansteuerbare Einheit.

Also zumindest lesen kann ich auch einzelne Bytes (bs=1).