• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Rechte bei neuen Ordnern und Dateien automatisch setzen?

Hallo!

Ich muss des öfteren in einem Ordner als root

chown -R www-data:www-data . && chmod -R g+w .

ausführen, damit alle Nutzer Dateien und Ordner anlegen und auch ändern können.
Vergess ich das mal, gibt's schnell ein Problem ;)

Nun ja, mit setfacl kann man weiteren Nutzern und Gruppen noch Rechte geben, aber das bringt auch nicht viel, wenn eine Datei gelöscht und neu angelegt wird, fehlen da trotzdem die Rechte.

Besser wär's, wenn in einem Ordner, egal unter welchem User, eine Datei oder Ordner angelegt wird, die Gruppe www-data mit Recht g=w vergeben wird.
Oder wenn automatisch die facl-Rechte hinzugefügt werden, damit wär ich auch zufrieden. Will nur nicht mehr ständig chown+chmod ausführen müssen.
 
Hi!
http://wiki.linux-club.de/opensuse/Zugriffsrechte#Spezielle_Rechte vor allem der Abschnitt über das SGID-Bit dürfte dir da weiterhelfen ;)
Ein Stück tiefer in dem verlinkten Artikel steht auch noch einiges zu umask,was dir ebenso dabei hilft die Rechte automatisch zu setzen.

Bis denne,
Tom
 
Danke, TomcatMJ!

In den Projekt-Ordnernführe ich aus:

find <dir> -type d -exec chmod g+s {} \;

Und in den .bashrc der User füge ich hinzu:

umask g+w

Damit sollt's keine Probleme mehr mit den Schreibrechten geben.
 
In einem Fall funktioniert das Übernehmen der Gruppe nicht, und zwar wenn ich 'ne Datei/Ordner mit "mv" in den Projektordner verschiebe.
Doch es geht, wenn ich "cp" bzw. "cp -R" stattdessen verwende.
 
Das wundert mich weniger. Mit mv wird der Inode-Eintrag für die jeweilige Datei im Dateisystembaum auf demselben Dateisystem (=innerhalb ein und desselben Mountpoints/ein und derselben Partition) verschoben, mit cp wird eine Datei(und damit auch der zugehörige Inode in der Dateisystemtabelle) wirklich am Zielort neu angelegt, der dann auch auf einem anderen Dateisystem/einem anderen Mountpoint/einer anderen Partition liegen darf. Das SGID-Bit wirkt jedoch nur auf neu angelegte Dateien/Inodes automatisch, nicht auf bereits woanders existente Inodes.
 
Ich muss noch sagen, dass bei Diensten auch die Umask eingestellt werden muss.

Bei pureftpd muss man unter /etc/pure-ftpd/conf eine Datei "Umask" erstellen, da ungefähr sowas wie

Code:
113 007

eintragen, den Dienst neu starten und auch bei FTP-Verbindungen neu anmelden.
Wusste gar nicht, dass da bei nem Neustart Verbindungen bestehen bleiben ;)

Ich verwende ohnehin nur noch sftp, ist um einiges komfortabler, benötigt keinen extra Daemon, und mit Ssh-Key-Files muss man nicht mehr jedes Mal Login und Passwort eingeben. ;)
 
Oben