Im Dokument von Apple mit dem Titel "Device File Access Guide for Storage Devices" ist ein Beispiel, wie man mit dem POSIX-Befehl open ein Device-File einer CD-ROM öffnet. Ich habe versucht, damit das Device der Boot-Partition zu öffnen, funktioniert aber leider nicht.
In der Shell gebe ich mount ein, raus kommt:
/dev/disk0s2 on / (hfs, local, journaled)
In C schreibe ich dann:
fileDescriptor = open( "/dev/disk0s2", O_RDONLY );
Das geht natürlich nur mit entsprechenden Rechten, ich führe mein Programm als root aus. Es kommt trotzdem eine -1 zurück, errno ist EBUSY (device or file busy).
Gibt es einen Trick, um die Boot-Partition trotzdem öffnen zu können? Schliesslich gibt es eine Menge Programme, die eine Harddisk z.B. nach verlorenen Files scannen, die müssen doch bestimmt auch direkt auf das Device zugreifen. Wenn's geht, möchte ich lieber nicht eine andere API z.B. IOKit verwenden müssen, sondern möglichst mit POSIX-Befehlen auskommen.
Any ideas???
In der Shell gebe ich mount ein, raus kommt:
/dev/disk0s2 on / (hfs, local, journaled)
In C schreibe ich dann:
fileDescriptor = open( "/dev/disk0s2", O_RDONLY );
Das geht natürlich nur mit entsprechenden Rechten, ich führe mein Programm als root aus. Es kommt trotzdem eine -1 zurück, errno ist EBUSY (device or file busy).
Gibt es einen Trick, um die Boot-Partition trotzdem öffnen zu können? Schliesslich gibt es eine Menge Programme, die eine Harddisk z.B. nach verlorenen Files scannen, die müssen doch bestimmt auch direkt auf das Device zugreifen. Wenn's geht, möchte ich lieber nicht eine andere API z.B. IOKit verwenden müssen, sondern möglichst mit POSIX-Befehlen auskommen.
Any ideas???