Mounten Sie eine HFSPlus-Festplatte mit Lese-/Schreibberechtigungen in Linux

Mounten Sie eine HFSPlus-Festplatte mit Lese-/Schreibberechtigungen in Linux

Mir ist bewusst, dass diese Frage ähnlich ist wiediese Frage, aber ich hoffe, in einem der Kommentare vondiese Antwort auf diese Frage.

Ich habe die Festplatte eines alten MacbookPro ausgebaut und versuche, sie auf meiner Elementary OS-Box zu mounten, wo sie automatisch schreibgeschützt gemountet wird. Ich möchte schreibgeschützten Zugriff auf diese Festplatte erhalten.

Befolgen Sie die in der oben verlinkten Antwort beschriebenen Schritte, nachdem Sie

sudo mount -t hfsplus -o remount,force,rw /dev/sdc2 /media/myharddrive

Ich bekomme

mount: warning: /media/myharddrive seems to be mounted read-only.

Dies wurde in einem Kommentar zu dieser Frage vermerkt, hat jedoch nicht genug Aufmerksamkeit erregt, um eine Antwort zu rechtfertigen.Wie kommt es, dass es immer noch schreibgeschützt ist? Ist das nicht das, was es forcesicherstellt?

Folgendes kann relevant sein oder auch nicht:

Ich lief auch sudo fsck.hfsplus -f /dev/sdc2hinter demBlogbeitrag, auf den in der Antwort verwiesen wirdund fügte das -fFlag hinzu, nachdem fsckich keine Überprüfung eines Journalsystems durchführen wollte. Dies lief gut bis

** /dev/sdc2 ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. Orphaned indirect node iNode28863935 ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** Repairing volume. ** Rechecking volume. ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** The volume myharddrive was repaired successfully. *** glibc detected *** fsck.hfsplus: munmap_chunk(): invalid pointer: 0x00000000022f9e30 ***

gefolgt von einem Backtrace und einer Speicherzuordnung. Der fsckAufruf scheint keine Auswirkung auf mein Laufwerk gehabt zu haben, weder positiv noch negativ.

Irgendwelche Hinweise, wie ich Lese-/Schreibzugriff auf mein Laufwerk bekomme,ohne OSX zu booten, wäre sehr dankbar.

BEARBEITEN Michael Kjörlings Kommentare undAntwortmein grundsätzliches Problem mit dem Zugriff auf meine Daten gelöst. Die oben fettgedruckten Fragen wurden jedoch noch nicht beantwortet, daher habe ich die Frage bearbeitet, um dieses Problem hervorzuheben und die Frage für zukünftige Benutzer offen zu lassen.

Antwort1

Wie wir in den Kommentaren erfahren haben, liegen hier zwei mögliche Probleme vor:

  1. Sie versuchen, die Kopie als normaler Benutzer auszuführen. Dies kann dazu führen, dass das Lesen der Quelldateien fehlschlägt, da Sie keine Leseberechtigung dafür haben. Dies lässt sich leicht beheben, indem Sie den Kopiervorgang sudogenauso ausführen, wie Sie das Mounten durchgeführt haben.
  2. Sie erhalten die Meldung, cp: omitting directory Documents/wenn Sie versuchen, den Kopiervorgang auszuführen sudo. Das ist überhaupt kein Berechtigungsproblem und kann behoben werden, indem Sie einfach angeben, cpdass Unterverzeichnisse eingeschlossen werden sollen.

Wenn Sie diese beiden kombinieren, sollten Sie in der Lage sein, Ihre Dateien mit einem Befehl wie zu kopieren sudo cp -av /media/myharddrive /somewhere/else, wobei /somewhere/else existiert und beschreibbar ist.

Der -vParameter ist nicht unbedingt erforderlich, aber nach einer halben oder ganzen Stunde des Wartens werden Sie es vielleicht zu schätzen wissen, wenn die Dateien beim Kopieren aufgelistet werden. Beachten Sie, dass bei einer sehr großen Anzahl kleiner Dateien die Bildschirmaktualisierungen den Durchsatz des Kopiervorgangs verringern können. Minimieren Sie in diesem Fall einfach das Fenster und überprüfen Sie es gelegentlich.

-aweist cp an, im „Archivierungsmodus“ zu arbeiten und dabei so viel wie möglich von den zu kopierenden Dateien, einschließlich Unterverzeichnissen, beizubehalten. Oder Sie können -rangeben, dass nur die Verzeichnisstruktur beibehalten werden soll.

Auf diese Weise sollten Sie die Dateien an einen geeigneteren Speicherort kopieren können, wo Sie freier mit ihnen arbeiten können, ohne durch die schreibgeschützte Beschränkung der HFS+-Dateisystemunterstützung eingeschränkt zu sein.

Antwort2

Ich denke, Ihr Problem besteht im Wesentlichen darin, wie Sie das Journaling deaktivieren können, ohne OSX zu verwenden.

Dies erfordert die binäre Bearbeitung (Hacking) des Disk-Headers, wodurch wahrscheinlich der vom Journal belegte Speicherplatz verloren geht.

Hier sind Hinweise auf zwei ziemlich ähnliche C-Programme, die genau das tun sollen:

Ich kann nicht garantieren, dass diese Programme die Festplatte nicht zerstören. Ich schlage daher vor, dass Sie dies mit einem Sicherungsimage der Festplatte ausprobieren.

Dieser Beitrag könnte nützlich sein: Wie kann ich ein Disk-Image mounten?.

Antwort3

Ich hatte das gleiche Problem oft und was ich bisher gelernt habe: Ein erfolgreicher fsck ist unerlässlich. Da dies auf Ihrem Computer nicht funktioniert, denke ich, dass dies Ihr Ansatz zur Behebung sein sollte:

  • welche Version von hfsprogs / fsck.hfsplus haben Sie installiert?
  • auf meinem Rechner (mit Debian)installierte es von der Quelle(unter Verwendung der Downloads aus einer anderen Quelle)

    wget "http"://"gentoo.osuosl.org/distfiles/diskdev_cmds-332.14.tar.gz"

    wget "http"://"gentoo.osuosl.org/distfiles/diskdev_cmds-332.14_p1.patch.bz2"

    tar xzf diskdev_cmds-332.14.tar.gz

    bunzip2 -c diskdev_cmds-332.14_p1.patch.bz2 | Patch -p0

    cd diskdev_cmds-332.14

    make -f Makefile.lnx

    cp fsck_hfs.tproj/fsck_hfs /sbin/fsck.hfsplus

    cp newfs_hfs.tproj/newfs_hfs /sbin/mkfs.hfsplus

    ln -s /sbin/fsck.hfsplus /sbin/fsck.hfs

    ln -s /sbin/mkfs.hfsplus /sbin/mkfs.hfs

Auf diese Weise hat fsck bei mir jetzt immer mit meiner HFS+-Festplatte funktioniert.

Antwort4

Wenn Sie eine Möglichkeit haben, in Mac zu bootenUmfeldDies sollte behoben werden, indem das Journaling ordnungsgemäß deaktiviert wird. Das istUmfeld, nicht das eigentliche macOS, mit anderen Worten: Wenn sich die Festplatte nicht mehr im Mac befindet, der Mac aber bootet, legen Sie die Festplatte in ein externes Gehäuse (oder installieren Sie es neu) und booten Sie über die Internetwiederherstellung: Halten Sie diese Taste Rwährend und nach dem Einschalten eines Intel-Mac gedrückt.

Wenn Ihr Gerät neuer ist, tut es mir leid, so ein Idiot zu sein, aber Sie haben sich das gewissermaßen selbst eingebrockt, indem Sie weiterhin bei Apple gekauft haben, nachdem Sie miterlebt haben, welchen Weg das Unternehmen eingeschlagen hat.

Pflegen Sie die Festplatte mithilfe des Festplatten-Dienstprogramms oder diskutil(auf das Terminal kann über eines der Menüs oben zugegriffen werden) und deaktivieren Sie anschließend das Journaling.Journaling deaktivierensollte in derDateiMenü vonFestplattendienstprogrammund es ist wahrscheinlich versteckt. Drücken Sie, um es anzuzeigen.

Oder im Terminal, diskutil listum IhreScheibe Volumen, und stellen Sie dann sicher, dass das Volume ausgehängt ist:

  • diskutil unmountDisk disk1s7oder die gesamte Festplatte wird ausgehängt
  • diskutil unmountDisk disk1oder
  • diskutil unmountDisk /dev/disk1aber nicht ausgeworfen;
  • diskutil eject <any-of-the-above>oder Sie müssen es erneut verbinden. Und vermeiden Sie das Journaling:
  • diskutil disableJournal disk1s7oder
  • diskutil disableJournal force disk1s7 …aber natürlich mit Ihren Daten.

Wenn Sie sich für ein neues Dateisystem entscheiden, verwenden SieNTFSwenn Sie Windows verwenden, andernfalls verwenden Sieext4. ZFS ist mittlerweile in den meisten Betriebssystemen integriert, ebenso wie APFS aus irgendeinem Grund. Btrfs ist auch gut und benutzerfreundlich, aber die Lösung eines Problems ist einfacher ext4und es ist, anders als ZFS und Btrfs, portierbar, während die anderen das Importieren von Pools und zusätzlichen Support erfordern und Metadatenfehler das Ganze ruinieren können.

Alternativ sollten Sie in dieser Umgebung vollen Zugriff auf die Festplatte haben. Und Sie scheinen die CLI ohne größere Probleme zu umgehen, daher hätte ich an Ihrer Stelle sowieso ein Backup für Plan A, das darin besteht, – unter Verwendung einer zweiten Festplatte in einem anderen Gehäuse – die Dateien von der ersten zu kopieren, bevor versucht wird, die erste zu ändern.

Achten Sie beim Booten im Installations- oder Wiederherstellungsmodus oder in einer anderen Form, die nicht das Standard-MacOS ist, auf die Struktur des Dateisystems. Es ist eine Weile her, seit ich im Wiederherstellungsmodus gebootet habe, aber ich glaube, es /bezieht sich auf das Dateisystem der Live-Umgebung, während sich Ihre eigentliche Festplatte in/Volumes/<your-volume-name>

Wenn dein Mac nicht mehr bootet oder nicht mehr existiert, kannst du dir einen ausleihen! Ich weiß nicht, warum das sonst niemand vorgeschlagen hat.

Letzte Anstrengungssituation

Was ist, wenn Sie keine Festplatte oder Netzwerkfreigabe haben, auf die Sie die Daten verschieben können?

Wenn Sie dies über die GUI versuchen, schlägt dies höchstwahrscheinlich fehl: Nehmen Sie jeweils nur eine Änderung vor, wenden Sie sie an und haben Sie äußerste Geduld.

Sie können die Festplatte partitionieren und ein HFS-Volume erstellen, ohne Journaling,Zusammengesetzter Datenträgersatz (JBOD)und verschieben Sie so viele Daten wie möglich dorthin, wodurch ein weiterer Block auf der ursprünglichen Volumepartition freigegeben wird und JBOD mit dem neuen Volume erweitert wird. Wiederholen Sie dies, bis Sie fertig sind. Lassen Sie in jedem Volume immer ein wenig Spielraum, *200-400 MB sollten sicher genug sein. Sie können ein Volume möglicherweise nicht wieder vergrößern, aber JBOD hat nur sehr wenige Regeln.

Alternativ undda dies unter Linux möglicherweise nicht erkannt wird, habe ich es dort nie getestet,Vergessen Sie JBOD und nehmen Sie einfach die Daten aus diesem Datenträger, auch wenn dieser nun auf drei Dutzend Datenträger verteilt ist. Das sollte Ihnen ein wenig Spielraum bei der Planung Ihres nächsten Schritts geben.

Vielleicht können Sie es nachträglich mit Linux per JBOD ausführen – ext4 kann direkt in Btrfs konvertiert werden und Btrfs ist flexibler als alles andere auf dem Markt, und das ist der einzige Bereich, in dem es ZFS um Längen übertrifft. Vielleicht eine letzte Migration ( hfsext4)? Das ist riskant, aber es ist zumindest eine weitere Option – Sie hätten nicht so viele, wenn Sie bei macOS geblieben wären (guter Hinweis; ich verwende immer noch macOS, Mojave, aber ich bin voll und ganz darauf vorbereitet, es aufzugeben, wenn meine Macs den Geist aufgeben).

Verwenden des Festplatten-Dienstprogramms mit einer „empfindlichen Festplatte“

Wenn das Festplatten-Dienstprogramm etwas nicht erkennt, zeigt es möglicherweise an, dass Ihre Festplatte beschädigt ist oder so etwas. Wenn Sie zu viel auf einmal tun, kann es die Festplatte selbst beschädigen. Wenn Ihnen die Kreisgrafik zum Partitionieren Ihrer Festplatte angezeigt wird, sind das Hinzufügen von Partitionseinstellungen, die Namen und die Größenänderung alles einzelne Vorgänge. Viele davon führen dazu, dass das Festplatten-Dienstprogramm fehlschlägt, nehme ich an, weil die Festplatte möglicherweise nicht schnell genug reagiert und sie entweder als fehlerhafte Festplatte interpretiert oder ungeduldig wird.sozusagennad macht dumme Sachen, die tatsächlich auf einer fehlerhaften Festplatte enden.

Eine weitere potenziell lebensrettende Maßnahme, die Sie ergreifen müssen, bevor Sie etwas anderes tun, was ich im Nachhinein hätte erwähnen sollen, ist:TerminalFühren Sie aus gpt show -l /dev/disk1, gpt show /dev/disk1kopieren Sie diese Tabellen in eine Textdatei und übertragen Sie sie auf ein Flash-Laufwerk oder machen Sie ein Foto vom Bildschirm, keine Ahnung. Kopieren Sie es direkt in eine Datei: gpt show -l /dev/disk1 > gpt-tables.txt ; gpt show /dev/disk1 >> gpt-tables.txtund übertragen Sie die Datei vom Computer.

Damit können Sie Ihre Partitionstabelle neu erstellen, wenn das Festplattendienstprogramm versagt. Es gibt keine Manpages zu den Notfallstarts, alsohier erfahren Sie, wie es verwendet wird ( gpt).

Fügen Sie Partitionen einzeln hinzu, ändern Sie die Größe nur, wenn sie beim Hinzufügen nicht die erforderliche Größe haben, ändern Sie das Dateisystem, klicken Sie auf das Dropdown-Menü, um die versteckten anzuzeigen. Ändern Sie den Namen des neuen Volumes nicht, Sie können dies auch nach der Erstellung tun, es könnte sonst das ganze Ding fehlschlagen. Nach dem ersten Fehler sind ab dann alle Probleme da, manchmal erholt es sich jedoch nach einem Neustart, aber es ist besser, es nicht zu übertreiben. s Qualitätskontrolle ist gleich um die High Sierra/Mojave herum, beim CEO-Wechsel, gescheitert. Dein Mac ist die stereotype, ziemlich dumme Blondine und wird sich nicht zu *Elle Woods^ entwickeln, nein … sie ist dumm.

verwandte Informationen