Günther Obermaiers Webseite



User- und Verzeichnisrechte für Familie mit Kindern

hier beschreibe ich anonymisiert und sinngemäss, wie ich bei der Rechtevergabe in unserem Familiennetzwerk aus mehreren PCs und zwei Servern vorgegangen bin

/etc/passwd auf jedem Client und Server im Netz

USER1:x:801:801:VORNAME1 NACHNAME1:/home/USER1:/bin/bash
USER2:x:802:802:VORNAME2 NACHNAME2:/home/USER2:/bin/bash
CHILD1:x:811:811:VORNAME11 NACHNAME11:/home/CHILD1:/bin/bash
CHILD2:x:812:812:VORNAME12 NACHNAME12:/home/CHILD2:/bin/bash
common:x:890:890:Common User:/home/common:/bin/false
/etc/group
cdrom:x:24:USER1,USER2,CHILD1,CHILD2,gast
...
USER1:x:801:USER1,www-data
USER2:x:802:USER2,www-data
CHILD1:x:811:CHILD1,www-data
CHILD2:x:812:CHILD2,www-data
...
child06:x:881:common,www-data,USER1,USER2,CHILD1,CHILD2
child12:x:882:common,www-data,USER1,USER2,CHILD1
adult:x:888:common,www-data,USER1,USER2
common:x:890:common,www-data,USER1,USER2,CHILD1,CHILD2

Verzeichnisstruktur auf dem Server

/home/USER1
/home/USER2
/home/CHILD1
/home/CHILD2
...
/home/common
/home/common/FILME.kinder
/home/common/FILME.familie
/home/common/FILME.divers
/home/common/MP3
/home/common/MP3.kinder
/home/common/...
Rechte für gemeinsamen Order setzen
# chgrp -R common /home/common
# chmod -R 2770 /home/common
# cd /home/common
gewünschte Berechtigungen für die Unterordner
/home/common/FILME.familie	: Jeder
/home/common/MP3.kinder		: Kinder ab 6
/home/common/MP3		: Kinder ab 12
/home/common/FILME.divers	: nur Erwachsene
Rechte und Besitzer entsprechend setzen:
# chgrp -R adult FILME.divers
# chgrp -R child06 MP3.kinder FILME.kinder
# chgrp -R child12 MP3
# chmod 770 *
jetzt wird es spannend. Wenn ein Benutzer in einem gemeinsammen Ordner Dateien oder Verzeichnisse anlegt, sollen diese ihm zwar als User gehören, aber als Gruppe derjenigen, welcher auch das übergeordnete Verzeichnis gehört, so dass jeder Benutzer aus dieser Gruppe die Dateien weiter bearbeiten kann. Dies erreicht man mit der umask Allerdings bin ich nicht sicher, welche der Kombination der Kommandos letztlich den Trick schaffte, da neu angelegte Dateien die umask je nach Anlegen via shell oder X11 aus unterschiedlichen Konfigurationen beziehen. Deshalb mit Fragezeichen
in /etc/login.defs UMASK: 007 einstellen (?)
in /home/USER/.bashrc umask 007 einstellen (?)
in /home/USER/.xprofile umask 007 einstellen (?)
in /home/USER/.profile umask 007

Bei /home/USER übers Netz, also den festen PCs

# cp /etc/xdg/xfce4/xinitrc /home/USER/.config/xfce4/xinitrc
in /home/USER/.config/xfce4/xinitrc add umask 007

Bei Laptops mit lokalem /home Ordner

in /etc/xdg/xfce4/xinitrc add umask 007
# chown USER:USER /home/USER/.profile /home/USER/.config/xfce4/xinitrc
# chmod 700 /home/USER/.profile /home/USER/.config/xfce4/xinitrc