Frage

Dies ist eine Fortsetzung meiner Frage über die Super zu lesen.

Lassen Sie uns sagen, dass ich das HFS + Dateisystem in Mac OS X ausrichten möchten Wie könnte ich Sektor 2 der Boot-Diskette lesen? Soweit ich weiß, Unix bietet nur System von Dateien zu lesen ruft, die nie an diesem Ort gespeichert werden.

Ist es erforderlich, diese entweder 1) das Programm Kernel-Modus ausgeführt werden, oder 2) das Programm in Assembly geschrieben werden? Ich würde es vorziehen, eine dieser Einschränkungen zu vermeiden, insbesondere letztere.

War es hilfreich?

Lösung

Unter Linux können Sie von der speziellen Gerätedatei /dev/sda lesen, vorausgesetzt, die Festplatte Sie ist die erste, lesen möchten. Sie müssen root sein, diese Datei zu lesen. Zum Lesen des Sektors 2, suchen Sie nur 2*SECTOR_SIZE zu versetzen und in SECTOR_SIZE Bytes zu lesen.

Ich weiß nicht, ob diese Gerätedatei unter OS X prüfen interessant benannten Dateien unter /dev wie /dev/sda oder /dev/hda verfügbar ist.

Andere Tipps

Ich habe mich dies getan, auf dem Mac finden Sie in meinem Disk-Editor-Tool: http: //apps.tempel .org / iBored

Sie das Laufwerk öffnen würden mit dem / dev / diskN oder / dev / rdiskN (N ist eine Scheibe Indexnummer beginnend mit 0). Dann können Sie verwenden lseek (stellen Sie sicher, dass die 64-Bit-Bereich Version verwenden!) Und Schreib- / Lese fordert die geöffnete Datei.

Verwenden Sie auch die Shell-Befehl "ls / dev / disk *", um zu sehen, welche Laufwerke sind derzeit. Und beachten Sie, dass die Antriebe gibt es auch mit einer „SM“ Erweiterung, wobei M die Partitionsnummer ist. Auf diese Weise könnte auch Partitionen direkt lesen.

Oder könnten Sie einfach das Shell-Tool verwenden „xxd“ oder „dd“ Daten zu lesen und dann ihren Ausgang verwenden. Könnte einfacher sein.

Sie werden nicht in der Lage sein, Ihre Root-Platte und andere interne Festplatten zu lesen, wenn Sie als root ausführen, though. Sie können auch andere Antriebe wie lange zugreifen können, wie sie durch den Benutzer montiert wurden, oder haben ihre Berechtigungen deaktiviert. Aber Sie müssen auch zuerst das Laufwerk des Volumes trennen. Suchen Sie nach dem Aushang Befehl in dem Shell-Befehl "diskutil".

Hope, das hilft.

Update 2017:. Unter OS X 10.11 und später SIP auch Sie verhindern können aus direkt auf die Plattensektoren Zugriff

Ich war auch für das Volumen der / dev / Gerätedatei schlagen vorschlagen gehen, aber Sie könnten Amit Singh kontaktieren wollen, die ein hfsdebug Dienstprogramm und hat wahrscheinlich nur das getan, was Sie tun möchten.

Wie funktionierts in Bezug auf den Berechtigungen? Wäre es nicht von / dev Lesen / ... unsicher sein, da, wenn man weit genug lesen würden Sie in der Lage sein, Dateien zu lesen, für die Sie keinen Zugriff lesen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top