Weisen Sie einem Benutzer in einem bestimmten Verzeichnis unter Linux Lese-/Schreibzugriff zu
In einem früheren Artikel haben wir Ihnen gezeigt, wie Sie unter Linux ein freigegebenes Verzeichnis erstellen. Hier beschreiben wir, wie man einem Benutzer Lese-/Schreibzugriff auf ein bestimmtes Verzeichnis unter Linux gewährt.
Hierfür gibt es zwei mögliche Methoden: Die erste besteht darin, ACLs (Zugriffskontrolllisten) zu verwenden, und die zweite darin, Benutzergruppen zu erstellen, um Dateiberechtigungen zu verwalten, wie unten erläutert.
Für dieses Tutorial verwenden wir das folgende Setup.
Operating system: CentOS 7
Test directory: /shares/project1/reports
Test user: tecmint
Filesystem type: Ext4
Stellen Sie sicher, dass alle Befehle als Root-Benutzer ausgeführt werden, oder verwenden Sie den Befehl sudo mit entsprechenden Rechten.
Beginnen wir mit der Erstellung des Verzeichnisses reports
mit dem Befehl mkdir:
mkdir -p /shares/project1/reports
Verwenden von ACL, um dem Benutzer im Verzeichnis Lese-/Schreibzugriff zu gewähren
Wichtig: Um diese Methode zu verwenden, stellen Sie sicher, dass Ihr Linux-Dateisystemtyp (z. B. Ext3 und Ext4, NTFS, BTRFS) ACLs unterstützt.
1. Überprüfen Sie zunächst wie folgt den aktuellen Dateisystemtyp auf Ihrem System und auch, ob der Kernel ACL unterstützt:
df -T | awk '{print $1,$2,$NF}' | grep "^/dev"
grep -i acl /boot/config*
Im Screenshot unten ist der Dateisystemtyp Ext4 und der Kernel unterstützt POSIX-ACLs, wie durch die Option CONFIG_EXT4_FS_POSIX_ACL=y angegeben.
2. Überprüfen Sie als Nächstes, ob das Dateisystem (Partition) mit der Option ACL gemountet ist oder nicht:
tune2fs -l /dev/sda1 | grep acl
Aus der obigen Ausgabe können wir ersehen, dass die Standard-Mount-Option bereits Unterstützung für ACL bietet. Falls es nicht aktiviert ist, können Sie es für die jeweilige Partition aktivieren (in diesem Fall /dev/sda3):
mount -o remount,acl /
tune2fs -o acl /dev/sda3
3. Jetzt ist es an der Zeit, einem Benutzer tecmint
Lese-/Schreibzugriff auf ein bestimmtes Verzeichnis namens reports
zu erteilen, indem Sie die folgenden Befehle ausführen.
getfacl /shares/project1/reports # Check the default ACL settings for the directory
setfacl -m user:tecmint:rw /shares/project1/reports # Give rw access to user tecmint
getfacl /shares/project1/reports # Check new ACL settings for the directory
Im obigen Screenshot verfügt der Benutzer tecmint
jetzt über Lese-/Schreibberechtigungen (rw) für das Verzeichnis /shares/project1/reports, wie aus der Ausgabe des zweiten hervorgeht getfacl-Befehl.
Weitere Informationen zu ACL-Listen finden Sie in unseren folgenden Leitfäden.
- So verwenden Sie ACLs (Zugriffskontrolllisten) zum Einrichten von Festplattenkontingenten für Benutzer/Gruppen
- So verwenden Sie ACLs (Zugriffskontrolllisten) zum Mounten von Netzwerkfreigaben
Sehen wir uns nun die zweite Methode zum Zuweisen von Lese-/Schreibzugriff auf ein Verzeichnis an.
Verwenden von Gruppen, um Benutzern im Verzeichnis Lese-/Schreibzugriff zu gewähren
1. Wenn der Benutzer bereits über eine Standardbenutzergruppe verfügt (normalerweise mit demselben Namen wie der Benutzername), ändern Sie einfach den Gruppeneigentümer des Verzeichnisses.
chgrp tecmint /shares/project1/reports
Alternativ können Sie wie folgt eine neue Gruppe für mehrere Benutzer erstellen (die Lese-/Schreibberechtigungen für ein bestimmtes Verzeichnis erhalten). Dadurch wird jedoch ein freigegebenes Verzeichnis erstellt:
groupadd projects
2. Fügen Sie dann den Benutzer tecmint
wie folgt zur Gruppe projects
hinzu:
usermod -aG projects tecmint # add user to projects
groups tecmint # check users groups
3. Ändern Sie den Gruppeneigentümer des Verzeichnisses in „Projekte“:
chgrp projects /shares/project1/reports
4. Legen Sie nun den Lese-/Schreibzugriff für die Gruppenmitglieder fest:
chmod -R 0760 /shares/projects/reports
ls -l /shares/projects/ #check new permissions
Das ist es! In diesem Tutorial haben wir Ihnen gezeigt, wie Sie einem Benutzer Lese-/Schreibzugriff auf ein bestimmtes Verzeichnis unter Linux gewähren. Wenn Sie Probleme haben, fragen Sie im Kommentarbereich unten nach.