Stellen Sie sich folgendes Szenario vor: Auf einem Linux-Webserver befinden sich unter
/var/www/unserSeite statische Webseiten, die www-data:www-data gehören. Paul und Lena haben SSH-Zugang zu diesem Server, und beide müssen Dateien in /var/www/unserSeite ändern/erstellen. Wir wollen nicht mit Gruppen oder umasks herumspielen, und wir wollen, dass diese Dateien – die bereits Vorhandenen sowie alle von Paul und Lena erstellten – www-data:www-data gehören.
Gibt es zu diesem Problem eine einfache Lösung?
bindfs is a FUSE filesystem for mounting a directory to another location, similarly to
https://bindfs.org/mount --bind
. The permissions inside the mountpoint can be altered using various rules.
Die Antwort ist also ja und wir beginnen gleich mit der Installation von bindfs:
apt install bindfs
Für das genannte Szenario legen wir noch die Verzeichnisse für Paul und Lena an.
mkdir /home/lena/webseite
mkdir /home/paul/webseite
Jetzt hängen wir das ganze noch in der /etc/fstab entsprechend ein
/var/www/unsereSeite /home/lena/webseite fuse.bindfs create-for-user=www-data,create-for-group=www-data,force-user=lena,force-group=lena 0 0
/var/www/unsereSeite /home/paul/webseite fuse.bindfs create-for-user=www-data,create-for-group=www-data,force-user=paul,force-group=paul 0 0
Mit dem Befehl
mount -a
wird die Datei /etc/fstab neu gelesen und die Einträge entsprechend eingehängt.
Wenn jetzt Lena ihr Verzeichnis webseite auflistet haben dort alle Dateien ihre Rechte lena:lena. Sie hat also die volle Kontrolle über diese Dateien. Das selbe trifft natürlich auch auf Paul zu. Listet man die Dateien im Verzeichnis /var/www/unsereSeite zum Beispiel als Root, dann sieht man, dass die Dateien korrekterweise www-data:www-data zugeordnet sind.
Teilen sich Familienmitglieder einen Laptop auf dem jeder seinen eigenen Accounts hat, so ist bindfs auch sehr hilfreich, um einen gemeinsamen Ordner zum Dateiaustausch zur Verfügung zu stellen.
0 Kommentare