Kopieren von externem HFS+ nicht möglich

Kopieren von externem HFS+ nicht möglich

Ich habe tagelang versucht, das herauszufinden, aber ich kann es immer noch nicht. Ich glaube, ich habe jeden Artikel zu diesem Thema gelesen und alles versucht, was es gibt, und ich kann immer noch keine Datei von meinem Mac-formatierten externen HFS+-Laufwerk kopieren. Tut mir leid, wenn ich noch einen Artikel übersehen habe. Ich habe das Journaling deaktiviert und alle HFSPROG-Befehle ausprobiert, die ich finden konnte, aber immer noch bekomme ich Folgendes, wenn ich auf einen Ordner auf dem externen Laufwerk klicke und versuche, ihn in mein Home-Verzeichnis zu kopieren: „Der Ordner xxx kann nicht bearbeitet werden, da Sie keine Berechtigung haben, seinen Inhalt zu lesen.“ Dann habe ich einen Artikel darüber gefunden, wie man dies umgehen kann, indem man Dateien über das Terminal kopiert. Wenn ich versuche, den Befehl sudo cp -r im Terminal mit meinem externen Laufwerkspfad auszuführen, bekomme ich immer die Meldung „Keine solche Datei oder kein solches Verzeichnis“. Hat jemand einen anderen Vorschlag für mich? Vielen Dank im Voraus!

Antwort1

Ich hatte ein ähnliches Problem, als eine alte iMac PPC G5-Hauptplatine kaputt ging. Ich hatte viele Daten auf dieser Festplatte, auf die ich keinen Zugriff mehr hatte, also zog ich die Festplatte heraus und schloss sie an ein externes Festplattengehäuse an. Als ich versuchte, Dateien von der Festplatte auf meine Ubuntu-Box zu kopieren, erhielt ich einen Berechtigungsfehler. Ich versuchte viele verschiedene Dinge, um das Problem zu beheben, aber ohne Erfolg. Leider … Das Folgende sollte Ihnen aus der Patsche helfen.

Öffnen Sie das Terminal und geben Sie ein:

sudo nautilus

Verwendung derBenutzeroberflächeFenster, das sich öffnet. Navigieren Sie zu dem Verzeichnis, in dem sich Ihre Dateien befinden, und kopieren Sie die gewünschten Dateien.unter Verwendung desselben Nautilus-GUI-FenstersNavigieren Sie zu dem Verzeichnis, in das sie kopiert werden sollen, und fügen Sie sie in dieses Verzeichnis ein. Wiederholen Sie den Vorgang.

Antwort2

Die Antwort ist bindfs. Es nimmt ein bereits gemountetes Dateisystem und bietet eine Ansicht davon mit der gewünschten UID:

sudo apt-get install bindfs
mkdir ~/myUIDdiskFoo
sudo bindfs -u $(id -u) -g $(id -g) /media/diskFoo ~/myUIDdiskFoo

Antwort3

Ich weiß, dass mehrere Monate vergangen sind, seit Sie dies gefragt haben, aber ich habe es gerade erfolgreich gemacht und werde es hier für andere posten. Außerdemschalten Sie zuerst das Journaling aus, es ist wichtig, die UID und die GUI gleichzustellen; bei MacOS ist Ihr Benutzer 501/20 und bei Ubuntu 1001/99 oder höher. Seien Sie vorsichtig, denn Sie müssen Ubuntu Benutzer-IDs < 1000 anzeigen lassen – siehe unten –, sonst wird Ihr Benutzer beim nächsten Booten nicht angezeigt!

Die vollständige Anleitung finden Sie unter diesen beiden Links:

Multiplattform-Handbuch, einschließlich MacOs, Linux und Windows

Standardmäßig hat der erste Benutzer in OS X die UID 501. Sie können dies jedoch überprüfen, indem Sie in OS X in die Systemeinstellungen gehen, mit der rechten Maustaste auf Ihren Benutzer klicken und Erweiterte Optionen auswählen. Wenn Ihre Benutzer-ID nicht 501 lautet, ersetzen Sie 501 in den folgenden Terminalbefehlen durch Ihre andere UID.

Starten Sie Linux (in diesem Beispiel verwenden wir Ubuntu) und starten Sie das Terminal. Zuerst fügen wir einen temporären Benutzer hinzu, da wir keinen Benutzer bearbeiten möchten, bei dem wir gerade angemeldet sind. Führen Sie also die folgenden Befehle im Terminal aus und drücken Sie nach jedem Befehl die Eingabetaste:

sudo useradd -d /home/tempuser -m -s /bin/bash -G admin tempuser

sudo passwd tempuser

Geben Sie bei entsprechender Aufforderung ein neues Passwort für den temporären Benutzer ein. Starten Sie neu und melden Sie sich als tempuser an. Öffnen Sie dann das Terminal und geben Sie die folgenden Befehle ein. Drücken Sie nach jedem Befehl erneut die Eingabetaste (und ersetzen Sie yourusername durch den Benutzernamen Ihres Linux-Benutzers):

sudo usermod --uid 501 yourusername

sudo chown -R 501:yourusername /home/yourusername

Dadurch wird die UID Ihres Linux-Benutzers auf 501 geändert und die Berechtigungen für Ihren Home-Ordner werden so korrigiert, dass Sie weiterhin Eigentümer dieser sind. Jetzt sollten Sie in der Lage sein, sowohl im Home-Ordner Ihres Mac- als auch Ihres Linux-Benutzers zu lesen und zu schreiben, unabhängig davon, bei welchem ​​Betriebssystem Sie angemeldet sind.

Möglicherweise möchten Sie auch Ihren Anmeldebildschirm reparieren, da Ubuntu standardmäßig keine Benutzer mit einer UID unter 1000 auflistet. Öffnen Sie dazu einfach ein Terminal, führen Sie gksudo gedit /etc/login.defs aus und suchen Sie in der Textdatei nach UID_MIN. Ändern Sie diesen Wert von 1000 auf 501. Beim Neustart wird Ihr Benutzer dann im Anmeldebildschirm aufgeführt.

Zum Beitrag des BenutzersFrobber

Um von der Linux-Seite aus auf OSX-Partitionen zuzugreifen, müssen UID und GID mit der OSX-UID und -GID übereinstimmen. Während der OSX-Installation wird dem ersten Benutzer und OSX-Administrator die UID 501 und die GID 20 zugewiesen. Wenn ein Linux-System installiert wird, beginnen die Benutzer-IDs bei 1000. Wir können unsere Benutzer-IDs ändern, damit sie von der Linux-Seite aus mit den IDs für MacOS übereinstimmen. Um unsere UID und GID auf der Mac-Seite zu überprüfen, melden Sie sich an, öffnen Sie ein Terminal und geben Sie „-id“ ein. Die Antwort zeigt die erforderlichen Informationen an. Die UID und GID können für einen angemeldeten Benutzer nicht geändert werden. Bei Ubuntu müssen wir einen „Temp“-Benutzer mit Administratorrechten erstellen und den Vorgang durchführen, während wir als „Temp“ angemeldet sind.Der Benutzer „Temp“ wechselt mit sudo -i zum Root-Benutzer. Das folgende Verfahren ist für ein System mit Root-Benutzerberechtigungen geschrieben, wobei nano der Editor ist. Hinweis: Wir ändern lediglich die ID-Nummern und sonst nichts.

1. Drücken Sie auf dem Anmeldebildschirm die Tastenkombination Strg+Alt+F1. Beachten Sie, dass wir in den Konsolenmodus gewechselt sind.

2. Melden Sie sich als Root oder Temp-Benutzer an.

Bearbeiten Sie die Datei /etc/login.defs. Geben Sie ein:

nano /etc/login.defs

Suchen Sie den Wert UID_MIN. Ändern Sie ihn von 1000 auf 501. Suchen Sie den Wert GID_MIN und ändern Sie ihn auf 501. Speichern Sie die Datei und beenden Sie sie. Taste – Strg+x. Taste – y. Drücken Sie – Return. Bearbeiten Sie die Datei /etc/group. Geben Sie ein –

nano /etc/group

Suchen Sie die Zeile, die dialout:20username anzeigt; ändern Sie den Wert 20 in 99. Suchen Sie die Zeile, die (username):1000: anzeigt, und ändern Sie sie in (username):20: Speichern Sie die Datei und beenden Sie sie. Taste – Strg-x, um nano zu beenden. Taste – y. Drücken Sie – Return.

Bearbeiten Sie die Datei /etc/passwd. Geben Sie ein:

nano /etc/passwd

Suchen Sie die Zeile, die (Benutzername):1000:1000realer Name),,,,/home/(Benutzername):/bin/bash anzeigt, und ändern Sie sie in (Benutzername):501:20realer Name),,,,/home/(Benutzername):/bin/bash. Speichern Sie die Datei und beenden Sie sie. Taste – Strg+x, um Nano zu beenden. Taste – y. Drücken Sie – Return. Ändern Sie die Dateiberechtigungen des Home-Ordners. Geben Sie ein:

cd /home
chown -R 501:20 (username)

Konsolenmodus beenden. Taste – Strg+Alt+F7 Neustart.

Wenn dies nicht funktioniert und Sie eine Meldung erhalten, dass eine der Dateien nicht geändert werden konnte, sind Sie wahrscheinlich noch irgendwo im System als (Benutzername) angemeldet. Versuchen Sie einen Neustart und melden Sie sich auf dem Anmeldebildschirm als Temp an.

verwandte Informationen