Ermöglichen eines Lese- / Schreibzugriffs einer Gruppe auf ein Verzeichnis

39

Ich habe zwei Benutzer, Benutzer1 und Benutzer2, die beide Mitglieder der Gruppe A sind. Benutzer2 hat einen Ordner in seinem Ausgangsverzeichnis, der als Ordner A bezeichnet wird. Wie würden sie dies tun, wenn sie Lese-, Schreib- und Ausführungsberechtigungen für alle Mitglieder der Gruppe A zulassen möchten?

Was ist, wenn folderA viele Dateien und zusätzliche Ordner enthält, für die ebenfalls Lese-, Schreib- und Ausführungsberechtigungen erforderlich sind?

Informationen zu Gruppen sind im gesamten Web ein wenig „fleckig“. Ich stelle meine Frage hier in der Hoffnung, dass jemand eine klare Antwort veröffentlicht, die auch anderen helfen könnte.

Vielen Dank!

WxPilot
quelle

Antworten:

55

OrdnerA muss zuerst Teil von GruppeA sein - der Eigentümer oder der Stamm des Ordners kann diesen Vorgang ausführen

chgrp groupA ./folderA

Dann benötigt groupA die rwx-Berechtigungen des Ordners

chmod g+rwx ./folderA

Es gibt Optionen in den Befehlen chgrp und chmod, die bei Bedarf in das Verzeichnis zurückgeschrieben werden können.

Charles Green
quelle
Hinweis: Sie sollten sicherstellen, dass Sie auch auf Zwischenverzeichnisse zugreifen können (+ x ist möglicherweise ausreichend).
jfs
2

Meine eigenen Erfahrungen in diesem Bereich hier. Originelle Anleitung . Getestet unter Ubuntu 18.04.

Erlaube das Schreiben in den Systemordner

Erteilen Sie die Schreibberechtigung für den /etc/nginx/Ordner.

# Check 'webmasters' group doen't exist
cat /etc/group | grep webmasters
# Create 'webmasters' group
sudo addgroup webmasters
# Add users to 'webmasters' group
sudo usermod -a -G webmasters username
sudo usermod -a -G webmasters vozman
sudo usermod -a -G webmasters romanroskach

# Group assignment changes won't take effect
# until the users log out and back in.

# Create directory
sudo mkdir /etc/nginx/
# Check directory permissions
ls -al /etc | grep nginx
drwxr-xr-x   2 root root     4096 Dec  5 18:30 nginx

# Change group owner of the directory
sudo chgrp -R webmasters /etc/nginx/
# Check that the group owner is changed
ls -al /etc | grep nginx
drwxr-xr-x   2 root webmasters   4096 Dec  5 18:30 nginx

# Give write permission to the group
sudo chmod -R g+w /etc/nginx/
# Check
ls -al /etc | grep nginx
drwxrwxr-x   2 root webmasters   4096 Dec  5 18:30 nginx

# Try to create file
sudo -u username touch /etc/nginx/test.txt  # should work
sudo -u username touch /etc/test.txt  # Permission denied

Erteilen Sie die Schreibberechtigung für den /etc/systemd/system/Ordner.

# List ACLs
getfacl /etc/systemd/system

getfacl: Removing leading '/' from absolute path names
# file: etc/systemd/system
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# Add 'webmasters' group to an ACL
sudo setfacl -m g:webmasters:rwx /etc/systemd/system

# Check
getfacl /etc/systemd/system

getfacl: Removing leading '/' from absolute path names
# file: etc/systemd/system
# owner: root
# group: root
user::rwx
group::r-x
group:webmasters:rwx
mask::rwx
other::r-x

sudo -u username touch /etc/systemd/system/test.txt  # should work
sudo -u username touch /etc/systemd/test.txt  # Permission denied
FooBar167
quelle