Ich kann eine ext4-Partition erfolgreich mounten, das Problem ist, dass alle Dateien auf der Partition dem Benutzer mit der Benutzer-ID 1000 gehören. Auf einem Computer ist meine Benutzer-ID 1000, auf einem anderen jedoch 1010. Mein Benutzername ist auf beiden Computern gleich , aber mir ist klar, dass das Dateisystem Benutzer-IDs speichert, keine Benutzernamen.
Ich könnte den Dateibesitz wie folgt korrigieren:
find /mnt/example -exec chown -h 1010 {} ;
Aber dann müsste ich die Dateieigentümer wieder zurück auf 1000 korrigieren, wenn ich dieses externe Laufwerk auf einem anderen Rechner einbinde.
Was ich möchte, ist mount
zu geben eine Option, die besagt, dass die Benutzer-ID 1000 auf 1010 abgebildet wird, sodass ich eigentlich keine Dateien ändern muss. Gibt es dafür eine Möglichkeit?
Akzeptierte Antwort:
Sehen Sie sich das bindfs-Paket an. bindfs ist ein FUSE-Dateisystem, das verschiedene Manipulationen von Dateiberechtigungen, Dateibesitz usw. zusätzlich zu bestehenden Dateisystemen ermöglicht.
Sie suchen speziell nach der Option –map von bindfs:
--map=user1/user2:@group1/@group2:..., -o map=...
Given a mapping user1/user2, all files owned by user1 are shown as owned by user2. When user2 creates files, they are chowned to user1 in the underlying directory. When files are chowned to user2, they are chowned to user1 in the underlying directory. Works similarly for groups.
A single user or group may appear no more than once on the left and once on the right of a slash in the list of mappings. Currently, the options --force-user, --force-group, --mirror, --create-for-*, --chown-* and --chgrp-* override the corresponding behavior of this option.
Requires mounting as root.
Um also Ihre Dateien mit der Benutzer-ID 1001 in /mnt/wrong
abzubilden nach /mnt/correct
Führen Sie mit der Benutzer-ID 1234 diesen Befehl aus:
sudo bindfs --map=1001/1234 /mnt/wrong /mnt/correct