Hallo ich möchte ein Programm schreiben, dass eine Datei (loader für ein Betriebssystem) in den Bootsektor einer Partition schreibt. Was muss ich dazu wissen, und wie könnte ich das anstellen?
mfg loddab -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
Dies hängt von deinem Betriebssystem ab, weil Du direkten Zugriff auf das Device (Festplatte/Diskette) brauchst. Im Prinzip bietet Dir jedes Betriebssystem (mehr oder weniger versteckt) eine Funktion an, um direkt auf einen Bestimmten Sektor auf Deinen Datenträger zuzugreifen. Welches Betriebssystem? -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21)
Ich hab vor das unter Linux zu programmieren. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
Weiterhin kann es interessant sein, Sich lilo in Verbindung mit strace mal anzuschauen, denn strace zeigt dir, was lilo für Aufrufe macht, um in den Sektor zu schreiben. -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21)
Ok könntest du vielleicht noch ein paar Worte dazu verlieren, wie ich mit dd eine Datei in den Bootsektor kopieren kann. Die man-Pages haben mir nicht viel weitergehlofen. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
schreibt eingabe.dat an den Anfang von /dev/hda, also in den MBR der Platte. Aber VORSICHT! du kannst dir damit ganz leicht die ganze Platte zerschießen. Wenn du zuviel an den Anfang der Platte schreibt, kann das Dateisystem beschädigt werden und deine Daten wären futsch. Also vorher sichern.
Ansonsten würde ich einfach mal in die LILO-Sourcen kucken, die liegen, soweit ich weiß, auf www.freshmeat.net irgendwo.
Eigentlich hätt ich auch drauf kommen können, dass man als OutputFile /dev/hda angeben kann. Na ja hinterher ist man immer schlauer. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)