Mit müden Augen hat geschrieben: ↑19 Mai 2022 18:03
Sagt mal ihr Nerds, kann man udisk2 oder wem-auch-immer beibringen bei extern angestöpselten Festplatten/USB-Sticks mit ext4 und Co den Besitzer vom Dateisystem zu ignorieren, so dass $mmA die Platte nicht nur per Klick in PCManfm mounten kann sondern auch tatsächlich darauf schreiben? Für "alte"
Dateisysteme wie FAT funktioniert das weil die keinen Besitzer im Dateisystem speichern, aber bei ext4 ist das anders. Das Problem ist eigentlich der Besitzer vom mountpoint, aber der (Ordner unter /media/$mmA) wird erst beim Einstöpseln automatisch erzeugt und dann wieder gelöscht, also nix mit
ein einziges Mal chown. Klar, könnte ich jedes Mal machen, aber dazu muss ich ja erst wieder root werden und genau das will ich vermeiden. Der Versuch udisks2 per config-Datei eine fixe UID mitzuteilen ist mit einem "error ... not allowed" gescheitert, das geht offensichtlich für ext4 nicht.
Im aktuellen Fall habe ich den USB-Stick einfach neu formatiert und mkfs.ext4 meine UID mitgegeben, aber das kann ja nicht die Lösung sein, vor allem wenn ich mal fremde Sticks/Platten mit ext4 habe.
Ich meine unter Deb10 hatte ich das Problem nicht oder waren da alle meine externen Datenträger noch als FAT formatiert?
???
Irgendwie widersprichst du dir da, oder?
"Das Problem ist eigentlich der Besitzer vom mountpoint, aber der (Ordner unter /media/$mmA) wird erst beim Einstöpseln automatisch erzeugt "
würde heißen, dass du nur im Mountpoint das Problem hast, aber nicht auf dem Rest der Platte, sprich du brauchst nur eine Lösung für das Top-Level-Directory.
"und Co den Besitzer vom Dateisystem zu ignorieren, so dass $mmA die Platte nicht nur per Klick in PCManfm mounten kann sondern auch tatsächlich darauf schreiben?"
hingegen insinuiert, dass du das Problem überall hast, ergo: Gerne auf
alles im Tree unter "
/media/$mmA/my_fancy_ext4_usb_dönerbratdevice/*" rekursiv Schreibzugriff hättest, wie bereits jetzt unter "
Omega-3-FAT"-Devices wegen der speziellen FAT-Filesystem-Eigenschaften. (Oder vielmehr: Dem Fehlen ebenjener Eigenschaft.)
Which of both is it?
Allgemein, so 3 Ideen:
1. Das ist auch nur Rumgerate meinerseits, aber (
wenn ich dich richtig verstanden habe) vielleicht
irgendeine Magie mit bindfs hinterher draufwerfen, automatisch als Script, sofern möglich? Das Tool "inotifywait" kann glaub ich pfadbasiert-feingranular auf Filesystem-Events reagieren, das wär also evtl. eine Automatiklösung, wenn es on demand das als Befehl feuert, was in dem verlinkten Posting da steht. (Hint: Gemeint ist
nicht der abgehakte Beitrag, sondern der darüber vom User "Catskul".)
2. Evtl. Default ACLs setzen für "
/media/$mmA" - so dass alle neu erzeugten Ordner automatisch schreibbar sind durch dich?
(IIRC.)
Danach müsste jeder neu erzeugte Ordner der Form "
/media/$mmA/my_fancy_ext4_usb_dönerbratdevice" von dir les-, schreib-, betret- und nach etwas Grillzeit auch essbar sein.
Caveats:
2.a Ich weiß aber nicht, ob nach dem Mounten die ACL noch "funktioniert", und nicht durch das Dateisystem, das reingemounted wird, temporär "überschrieben" (bzw. überdeckt) wird, insbesondere
2.a.i - wenn die reingemountete ext4-Partition nicht per tune2fs ACLs aktiviert hat, aber sogar wenn
2.a.ii - wenn die reingemountete ext4-Partition per tune2fs ACLs doch aktiviert hat.
Ich befürchte es fast irgendwie...
Außerdem interessant, im Fall 2.a.ii: Ob vom internen Filesystem irgendwas an ACL-Gedöns automatisch ans externe Filesystem des Dönerbratgeräts weitervererbt werden kann, oder ob dazwischen durch das Mounten quasi automatisch eine Sperre ist, die das Vererben unmöglich macht.
2.b Falls 2.a.ii zutrifft und die Vererbung über Laufwerks-/Partitionsgrenzen hinweg möglich ist, wird es wohl so sein, dass du damit "aus Versehen" neu angelegten Ordner auf
my_fancy_ext4_usb_dönerbratdevice automatisch per ACL rights geben kannst und auch wirst (auch rekursiv, bei jeder künftigen Erzeugung eines Objekts
.../$FU/$BAR in einem Ordner
$FU, sofern Ordner
$FU bereits die gesetzte ACL-Eigenschaft hat, weil "default"-Zeug sich [logischerweise] vererbt), die du ihnen eventuell gar nicht geben willst.
Das wäre dann ein Security-Problem, und außerdem "pollutest" du dir die externen Dönerbratgeräte mit ACLs voll, die du da evtl. nicht haben willst, weiß nicht, ob du damit leben kannst.
3. Bleiben wir bei "inotifywait" ... theoretisch müsste es ja den Job übernehmen könnten, neuen Ordnern (im konkreten Fall: im Directory "
/media/$mmA/" natürlich) Rechte zu geben, sobald ebendort ein neuer Ordner erstellt wird.
Vielleicht kannst du dir damit irgendwas basteln, was der ACL-Lösung ähnelt, aber actually
funzt?
(Falls die ACL-Lösung nicht funzt.)
Aber ehrlich: Das klingt alles so dirty & hack-ish, was ich hier propose... ich
hoffe, es kennt sich noch jemand tieferergehend mit Debian aus und es fällt ihm oder ihr noch eine bessere auf seinem oder ihrem Wissen beruhende Lösung ein
.
PS, Edith sagt: Vielleicht hilft auch das hier irgendwie weiter?
https://unix.stackexchange.com/question ... ny-linux-m