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

[gelöst]Dateien erstellen mit Berechtigung 660

andidos

Member
Hallo,

ich betreibe einen Server, auf dem läuft NIS und NFS. Die home Verzeichnisse sind sind auf den Clients per NFS gemountet und auch noch ein paar andere Partitionen auf die Jeder User zugreifen kann. Wenn User A ein Dokument erstellt und es in seinem home Verzeichnis oder irgendwo anders auf der Netzwerkfreigabe speichert wird es immer 644 gespeichert. Es soll aber so sein das die Datei mit 660 gespeichert wird, so das sie alle User aus der selben Gruppe bearbeiten können. Also User A erstellt ein Textdokument und speichert es und speichert es auf dem Server und User b soll es anschließend öffnen und ändern können. Die Berechtigung in den Verzeichnissen steht auf 770 bzw. 660. Wo kann ich einstellen das Dateien mit 660 erstellt bzw gespeichert werden werden?
Habe schon gegoogelt, aber ich finde diese Problematik immer nur im Zusammenhang mit Samba.

Auf den Clients und dem Server läuft Suse 10.3 mit KDE

Vielen Dank für hilfreiche Tipps.
 

pft

Advanced Hacker
Gibst Du in der Shell umask ein sollte folgendes passieren
Code:
~> umask
0022
das führt dann zu den Rechten 0644, denn es stellt wie der Name nahelegt eine Maske auf die Userrechte dar.

Du kannst das ändern duch Eingabe von
Code:
~> umask 0006
Willst Du es dauerhaft ändern kannst Du es in .bashrc, ~.profile (jeweils für den user) oder /etc/profile (einmal für alle) eintragen bzw den vorhanden Eintrag anpassen.

Weitere Möglichkeiten findest Du in "man pam_umask" bzw. in der Benutzerverwaltung von yast unter "Optionen für Experten"
 
A

Anonymous

Gast
pft schrieb:
Weitere Möglichkeiten findest Du in "man pam_umask" bzw. in der Benutzerverwaltung von yast unter "Optionen für Experten"
Auch in unserem Wiki ist da eine (hoffentlich) gute Erklärung dazu zu finden.
http://wiki.linux-club.de/opensuse/Zugriffsrechte#umask

robi
 
OP
A

andidos

Member
Vielen Dank für die schnellen Antworten.
umask hat bei mir tatsächlich 0022 zurück geliefert.
Da ich das dauerhaft für alle User ändern wollte habe ich in der /etc/profile nachgesehen. Dort ist leider folgendes zu lesen:
Code:
# PLEASE DO NOT CHANGE /etc/profile. There are chances that your changes
# will be lost during system upgrades. Instead use /etc/profile.local for
# your local settings, favourite global aliases, VISUAL and EDITOR
# variables, etc ...

# The global umask value is stored in /etc/login.defs and
# will be set by pam_umask.so (see "man pam_umask").
#umask 022

aus pam_umask bin ich leider auch nicht schlau geworden, aber in /etc/login.defs gibt es folgendes:

# Umask which is used by useradd and newusers for creating
# new home directories.
#
UMASK	022

Daraus habe ich aber nun geschlossen das dieses UMASK nur beim erstellen von neuen Usern und home-Verzeichnissen wirkt.
Dann habe ich in yast -> Sicherheit und Benutzer -> Benutzer anlegen und bearbeiten -> Optionen für Experten -> Standardeinstellungen für neue Benutzer -> Umask für Homeverzeichnis den wert 022 gegen 006 ersetzt, obwohl dort auch eindeutig steht das es nur für das neuerstellen von Usern und das Homeverzeichnis gilt.
Dies habe ich zuerst am NIS Server getan, erfolglos. Das selbe an der Workstation hat nach den aus- und wieder einloggen den gewünschten Effekt gebracht. Der Eintag in yast hat den Wert in der /etc/login.defs geändert.

Mich wundert nur das solch eine einfache Einstellung so versteckt ist und dazu auch noch falsch dokumentiert. Sogar in der Hilfe die in yast am linken Rand eingeblendet wir erscheint folgendes:

Umask für Home-Verzeichnis
Umask, die zum Erstellen neuer Home-Verzeichnisse verwendet wird.

Also ohne eure Hilfe währe ich da nie drauf gekommen.
 
Oben