Frage ACLs Eigentumsrechte, Berechtigungen


Problem: Immer wenn ich eine neue Datei schreibe / eine Datei in meiner ändern www Ordner, Berechtigungen und Besitzer werden für diese Datei zurückgesetzt, wodurch der Server manchmal nicht in der Lage ist, die von mir erstellten Dateien zu lesen. Also muss ich zum Terminal gehen, die Besitzverhältnisse festlegen usw., was sehr mühsam ist.

Meine www Ordner ist über Samba zugänglich.
Immer wenn ich etwas in diesen Ordner schreibe oder modifiziere, bekomme ich die Berechtigungen und den Besitz der Datei zurück auf jay:jay das kann nicht von gelesen werden apache.

Ich habe online nachgesehen und das gesehen Frage. Also habe ich es versucht:

sudo setfacl -Rdm g:apache:rx www
sudo chmod g+s www

Jetzt ist das Ergebnis:

drwxr-sr-x+ 14 jay apache  4096 Aug 15 21:09 www

Aber jetzt, wenn ich etwas versuche wie:

touch somefile.txt

Ich bekomme diese Einstellungen:

-rw-r--r--+ 1 jay apache 0 Aug 15 23:07 somefile.txt

Ich dachte, die Berechtigungen würden die Erlaubnis des Ordners behalten, nicht?

In Bezug auf das Eigentum ist es in Ordnung, aber die Berechtigungen werden nicht eingehalten!

  1. Sagen wir, ich wollte ein 750 chmod automatisch machen für jayschreibe in den Ordner. Wie würde ich darüber gehen?
  2. Ich nehme das kleine an 's' markiert die Setgid? Bedeutet dies, dass alles, was in diesem Ordner geschrieben wurde, die Eigentümerschaft des Ordners besitzt?
  3. Warum beeinflusst es meine Dateien nicht? Ich dachte, die Einstellungen einer neu erstellten Datei wären genauso wie die des übergeordneten Ordners (www) welches ist rwxr-xr-x 

  4. Gibt es eine Möglichkeit, einfach die. Rückgängig zu machen? setfacl? Das ist das kleine herausnehmen '+' in der Berechtigungszeile?

Ich betreibe Ubuntu 12


0
2017-08-15 21:11


Ursprung




Antworten:


  1. Ein Weg wäre, das zu setzen umask Wert zu 0022 zum jay. Was ist "Umask" und wie funktioniert es? Sie können auch die umask in der Samba-Konfiguration. Sehen Wie erzwinge ich den Gruppenbesitz auf die Samba-Freigabe? zum Beispiel.
  2. Es steht tatsächlich für setgid. In einem setgid Der Ordner, die erstellten Dateien und Ordner erben den Gruppenbesitz und die Ordner erben den Ordner setgid Bit.
  3. Einstellungen neu erstellter Dateien werden mit der Taste umask des Benutzers.
  4. Um die ACL zurückzusetzen, wäre es am besten, die ursprüngliche ACL wie von getfacl, schon seit setfacl hat --restore Möglichkeit. Andernfalls können Sie versuchen, alle erweiterten ACLs mit zu entfernen setfacl -b.

Bezüglich sudo und umask: Entsprechend der Arch Wiki:

Sudo verbindet den Umask-Wert des Benutzers mit seiner eigenen Umask (standardmäßig 0022).

Dies sollte in Ordnung sein (da die Umask des Benutzers ist 0022 auch).


2
2017-08-15 21:18



kann umask Wert ist 027 für 750 und 640 Dateierlaubnis. - Lety
@Letizia in der Tat, ich falsch gelesen und dachte OP benötigt Gruppe schreiben. OP scheint kein Problem mit o + rx zu haben, also scheint eine Umask von 022 gut zu sein. - muru
Gibt es eine Möglichkeit, das Setfacl rückgängig zu machen? Ich bin mir dieser Methode nur unsicher, weil ich nicht weiß, was ich tue. Ich habe auch versucht umask 027, und wenn ich eine Datei erstellen, egal was umask ich gebe, ist es mit den gleichen Berechtigungen erstellt. - Ted
@Letizia danke. Aber da auch die -b Option ("Alle erweiterten ACL-Einträge entfernen") - ist das besser zum Zurücksetzen geeignet? Ich bin mir nicht sicher, weshalb ich diese Frage nicht angesprochen habe. - muru
@Ted Ich würde denken, es würde funktionieren, aber die Umask des Zielbenutzers verwenden. Nein, scheint es sudo kann die Umask erben oder die in angegebene Umask verwenden sudoers. - muru