(Linux) Order für gemeinsame Dateien

wurstmuffin

Lt. Commander
Registriert
Nov. 2005
Beiträge
1.864
Hallo Zusammen,

ich möchte gern einen Ordner für zwei Benutzer erstellen, in dem die Benutzer die Dateien gegenseitig lesen/schreiben/löschen können.
Wie mache ich das?

Hintergrund
Ich habe viele Bilder und Videos (geteilt), die ich nicht doppelt haben möchte (da jeder die bei sich sync'en würde). Daher habe ich einen Ordner angelegt, für mich und meine Frau, und dort werden unsere gemeinsame Sachen abgelegt.
Das Problem ist aber, dass ich ihre Dateien nicht editieren/löschen kann und sie meine nicht. Sehen und öffnen geht natürlich.
Sämtliche Anleitungen zeigen wie ich einen Oder erstelle, uns beide in eine neue Gruppe hinzufüge, der Gruppe die Rechte auf einen Ordner gebe und GID setze.
Leider geht es bei mir am Ende nicht auf.
 
Ich habe den Ordner angelegt, dann Dateien da rein kopiert, dann chmod - R 2775 auf den Oder angewandt. So können wir beide die bestehenden Dateien und Oder anpassen. Aber wenn wir neue Dateien anlegen, dann können wir diese gegenseitig nicht mehr verändern. Ich kann nur meine neuen Dateien ändern und meine Frau kann nur ihre neue Dateien ändern :/

Das GID Bit ist schon gesetzt (chmod 2775 <groupname>). Genauer oder expliziter wäre ja

sudo chmod g+s /home/sharedFolder.

Wenn wir da dann Dateien und Ordner erstellen, dann wird die Gruppe ja vererbt, aber die Schreibrechte erhalten und jeweils der Nutzer, der die Datei angelegt hat.
Ergänzung ()

Mit ein wenig Googlen habe ich das so verstanden, dass das GID Bit nur dafür sorgt, dass die Ordnergruppe vererbt wird, nicht aber die Schreibrechte und so sieht es bei mir auch aus.

Hier ein Ordner. Dies mal habe ich bei chown nur die Gruppe angegeben. Bei anderen Ordern hatte ich auch mich als User mit aufgenommen.

1644055638760.png


1644055800351.png


Wenn ich nun eine Testdatei anlege, dann sehen die Rechte so aus
1644055864506.png

Ergänzung ()

AlphaKaninchen schrieb:
Du erstellst eine Gruppe gibst der Gruppe x7x auf den ordner und fügst beide User der Gruppe hinzu. Allerdings muss man dann auchfestlegen, dass der Ordner dies auch auf neue Dateien anwendet...
Ich habe genau genommen folgendes gemacht:

  • Eine Gruppe angelegt
  • Uns beide hinzugefügt
  • Einen Ordner angelegt
  • chown -R <user>:<group> <folder> ausgeführt
  • chmod -R 2775 <folder> ausgefürt
Die 2 vor 775 setzt die GID.

Bei dem shareTest Ordner habe ich mal ausprobiert den User bei chown auszulassen.
Ergänzung ()

uWt-oMG-UMD-YfK schrieb:
So wie es sich ließt hast du zwar die Schreib-/Leserechte auf den Ordner gesetzt der alle Dateien beinhaltet aber die Dateien selber haben eigene ACLs. Mit einem:

Code:
sudo chmod +s /home/sharedFolder

solltest du das fixen können. Source: https://www.geeksforgeeks.org/how-to-create-a-shared-folder-between-two-local-user-in-linux/
Oder muss auch die SID gesetzt sein?
 
Zuletzt bearbeitet:
Eine vielleicht unorthodoxe Methode: zusätzliche NTFS-Partitionen errichten.
Die kann jedes Linux aus dem Stand lesen und schreiben (und Windows sowieso). Das heißt, diese Partitionen werden nicht explizit einem OS zugeordnet; sind quasi extern, selbst wenn sie auf demselben Datenträger residieren.

Ich persönlich mache das seit Jahren auf diese Weise, weil ich meist verschiedene Linuxe (und zusätzlich noch Windows 10) auf demselben Rechner(n) installiert habe.
 
Aber wieso dann NTFS und nicht direkt ExFAT? Wo es keine Rechteverwaltung gibt, kann es auch keine Probleme damit geben.
 
  • Gefällt mir
Reaktionen: 7vor10
Gibt es keine Möglichkeit das nativ mit Ext4 zu nutzen?
Klappt es bei euch?

Edit: Ich habe es noch mal ausprobiert, dies mal mit "+s", aber es klappt noch nicht ganz. Ich kann Dateien und Order anderer User umbenennen, aber zB keine Textdatei editieren. Sehr seltsam das ganze.
 
Zuletzt bearbeitet:
wurstmuffin schrieb:
Gibt es keine Möglichkeit das nativ mit Ext4 zu nutzen?
Doch, das sollte schon gehen.
Verstehe ich das richtig das der Zugriff auf den Ordner richtig funktioniert, aber die Berechtigungen für angelegte Dateien nicht stimmt?
Also so das ein regelmässiges chmod -R oder eine umask-Änderung das Problem umgehen würde?
 
Zuletzt bearbeitet: (chmod statt chown)
  • Gefällt mir
Reaktionen: wurstmuffin
Liest sich aus dem Link, als bräuchte ich eine "lokale Maske" und kann das mit ACL machen. Nicht das ich das schon jetzt verstehe :confused_alt:
Ich werde das morgen ausprobieren. Auf ACL bin ich auch mal gestoßen 🤔
Ergänzung ()

Dassie schrieb:
Doch, das sollte schon gehen.
Verstehe ich das richtig das der Zugriff auf den Ordner richtig funktioniert, aber die Berechtigungen für angelegte Dateien nicht stimmt?
Also so das ein regelmässiges chmod -R oder eine umask-Änderung das Problem umgehen würde?
Genau, alle neue Daten haben nur Schreibrechte beim Ersteller. Muss mir anschauen, was eine umask ist.

In Dolphin kann man in Permissions Nutzer hinzufügen, dann wir auch eine umask angelegt. Hatte das ausprobiert, aber es hatte nicht wirklich funktioniert. Vllt. habe ich es falsch probiert.
 
Hallo Zusammen, entschuldigt bitte die späte Antwort, war gesundheitlich verhindert und bin jetzt erst dazu gekommen ACL auszuprobieren.

Es hat überraschend geklappt, vielen vielen Dank :schluck:

Folgendes hat geklappt (aus dem Link von @Mickey Cohen), natürlich "foo" mit den Namen meiner Ordner ersetzt:

Code:
/mnt/acl$ setfacl -d --set u::rwx,g::rwx,o::- foo
/mnt/acl$ getfacl foo
# file: foo
# owner: faheem
# group: staff
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::---

Ich habe gesehen, dass ich mit dem File Browser (Dolphin) auch Masken setzen kann, aber das hat nicht geklappt. Wohl aber eher, weil ich nicht weiß wie ich das hätte genau machen sollen.

So sieht es danach in den "Advanced Permission" von dem Ordner in Dolphin:
Screenshot_20220418_132752.png
 
Zurück
Oben