Ich habe einen Ordner / data (eigentlich eine Partition) für alle Daten, auf die alle Benutzer (in diesem Fall Familienmitglieder) zugreifen sollten. Wir haben alle individuelle Benutzerkonten und sind oft alle jederzeit auf diesem einen PC eingeloggt.
Wie kann ich Berechtigungen einrichten, damit wir alle Zugriff auf Dateien behalten, unabhängig davon, wer sie erstellt, einschließlich neuer Ordner? Wenn ich einen Ordner erstelle, erhält er meinen Benutzer und meine Gruppe, sodass niemand anders darauf schreiben kann.
permissions
shared-folders
steevc
quelle
quelle
chmod -R g+s /parentdir
. Hinweis:chmod -R
Bei Bedarf-R
Flag tochmod
ist sehr selten nützlich, da wir selten Verzeichnisse (die immer eine Ausführungsberechtigung benötigen) und reguläre Dateien (die selten eine Ausführungsberechtigung benötigen) mit denselben Berechtigungen haben möchtenAntworten:
Ein anderer Ansatz ist die Verwendung von Zugriffssteuerungslisten, einer Obermenge von Dateiberechtigungen.
Zunächst müssen wir das acl- Paket installieren :
Vor Ubuntu 14.04 muss die Partition mit der Option bereitgestellt werden , dass
acl
Folgendes funktioniert. Es könnte hinzugefügt werden in/etc/fstab
, wie inoder für ein bereits gemountetes Dateisystem
Als Nächstes sollten Sie eine neue Gruppe erstellen, zu der alle Benutzer hinzugefügt werden, die im Lese- / Schreibmodus auf die Freigabe zugreifen dürfen. Ich nenne es
usershare
. Eine bereits vorhandene Gruppe kann verwendet werden.Jetzt fügen wir die Benutzer
enzotib
undsteevc
zu dieser Gruppe hinzu:(gültig beim nächsten Login).
Dann fügen wir allen Dateien, die sich bereits in befinden , eine ACL mit
rwx
Berechtigungen für die Gruppe hinzuusershare
/media/shared
Schließlich fügen wir eine Standard-ACL mit
rwx
Berechtigungen für die Gruppeusershare
für alle Dateien hinzu, die von nun an innerhalb von erstellt werden/media/shared
Jetzt haben alle Benutzer der
usershare
Gruppe die vollen Berechtigungen für alle Dateien unter/media/shared
. Die Berechtigungen jedes Benutzers in den Home-Verzeichnissen des Benutzers und anderer Benutzer sind nicht betroffen.Ich habe diese Lösung getestet und sie scheint zu funktionieren, aber Vorschläge und Korrekturen sind willkommen.
Anmerkung : Neue Dateien und Verzeichnisse, die im betrachteten Verzeichnis erstellt wurden, haben Schreibrechte für die
usershare
Gruppe, aber Dateien, die in den Ordner kopiert oder verschoben wurden, behalten ihre ursprünglichen Rechte. Wenn der Benutzer meines Wissens nur Schreibzugriff auf neu erstellte Verzeichnisse benötigt, ist dies kein Problem. Andernfalls sollten die Berechtigungen manuell geändert werden. In dieser Antwort erfahren Sie, wie Sie dieses Problem lösen können, indem Sie die umask der Benutzer definieren002
.quelle
usershare
Gruppe auf Ihre Standardberechtigung "rwx" geändert werden ?/etc/fstab
/remount
step nicht benötigt wird, da standardmäßig mit aktivierter Optionext4
gemountet werden sollteacl
.Ordner erstellen.
Beispielsweise:
Wenn Sie Partition , um sie ... wenn ext4 montieren muss alles was Sie brauchen in
/etc/fstab
ISErstelle eine Gruppe myfam.
Fügen Sie dieser Gruppe einige Benutzer hinzu
Nun nimm und gib die Erlaubnis.
Ich denke, Sie sollten anfangen, sich zu ändern
umask
.Standard-Dateisystemberechtigungen und Zugriffsrechte in 12.04
Jetzt am wichtigsten. In dieser Zeile erstellen
setgid
Sie alles , was Sie unter diesem Ordner erstellen, und haben Ihre Benutzer als Eigentümer und Gruppemyfam
. Dadurch konnte das System die primäre Benutzergruppe überschreiben.quelle
Am einfachsten ist es, jeden Benutzer zur Gruppe aller anderen Benutzer hinzuzufügen.
Ändern Sie dann die umask jedes Benutzers von 022 auf 002, dies könnte in erfolgen
/etc/profile
.Bearbeiten
Der erste Schritt könnte durch den folgenden ersetzt werden: Alle Benutzer sollten
users
als primäre Gruppe zur Gruppe gehören .Edi2
Wie @James_Henstridge vorschlug, kann es praktisch sein, das Bit setgid im Hauptverzeichnis zu setzen, damit neu erstellte Dateien und Verzeichnisse unabhängig vom Benutzer dieselbe Gruppe haben. Auf diese Weise können Sie die Einstellung
users
als primäre Gruppe für Benutzer vermeiden .quelle
/data
damit neue Dateien die Gruppeneigentümerschaft übernehmen./data
Ordner kopieren , werden die Berechtigungen nicht vererbt, sodass die alten Dateien mit gw-Berechtigungen nicht von anderen geändert werden können. edit4: Die Einstellungusers
als primäre Gruppe undumask
0002 ist definitiv keine gute Idee, da jeder aus dieser Gruppe Ihre neu erstellten Dateien ändern kann.users
nur die benutzer in die gruppe aufzunehmen, die rw-zugriff auf die freigabe haben dürfen. Es war eine Frage der Bequemlichkeit, es könnte auch eine andere Gruppe dafür geschaffen werden. In Bezug auf Ihre edit3, es ist nicht korrekt, kopierte Datei die Ordnergruppe zu erwerben.users
meine primäre Gruppe ist und mehr Benutzer in dieser Gruppe sind, können sie meine Dateien auch außerhalb des freigegebenen Verzeichnisses ändern; edit3 - Ich habe Berechtigungen geschrieben , NICHT Ordnergruppe.Dies klingt nach einem Job für ACLs. Giles hat auf der SE Unix- und Linux-Site eine sehr gründliche Antwort , die mir geholfen hat, das gleiche Problem zu lösen.
quelle
Ich verstehe nicht, sind alle Linux-Linux, Linux-Windows, Linux - ???, mit Samba ?, SSH ?, Pigeons ?; Auf jeden Fall müssen Sie die anderen Mitglieder mit Ihrem Benutzernamen (Ihrer Gruppe) in die Gruppe aufnehmen, und sie erhalten die gleichen Berechtigungen wie Sie.
quelle
Ich bin auf diese Frage gestoßen, als ich nach Antworten für mein GROUP PERMISSION-Problem gesucht habe. Ich habe die Frage gelesen und es scheint, als würde ich bereits umsetzen, was die Frage zu erreichen versucht.
Also machte ich mir die Mühe, darauf zu antworten.
Ich habe bereits eine Freigabe für alle Benutzer in meinem LAN eingerichtet, die nur gelesen und ausgeführt werden kann, und nur mein Konto hat die Berechtigung, in die freigegebenen Ordner zu schreiben.
Ich habe einen Mehrzweck-Server in meinem LAN, der Ubuntu 12.04 LTS Desktop Edition verwendet. Ich habe eine Mischung Client-Maschinen von Linux und Windows.
Hier ist, wie ich es eingerichtet habe:
1. Auf meinem Server habe ich Benutzerkonten mit dem Namen
admin
undclientone
Das
admin
Konto ist das Konto, das bei der Installation von ubuntu erstellt wurde, und dasclientone
Konto ist das Konto, das über das Menü BENUTZERKONTEN in ubuntu erstellt wurde. Es hat nur eine Standardberechtigung, keine Administratorrechte und wird derusers
Gruppe hinzugefügt . Sie können dies natürlich nur über das Terminal tun. Fügen Sie weitere zusätzliche Benutzerkonten für Ihre Client-Computer hinzu.2.Die freigegebene Partition / der freigegebene Ordner wird in fstab automatisch bereitgestellt, wobei nur die Standardoption verwendet wird.
3. Mein Netzwerk befindet sich in einer Arbeitsgruppenumgebung und in einer
mylan
Arbeitsgruppe.Alle Maschinen in meinem LAN sind so eingestellt, dass sie die
mylan
Arbeitsgruppe verwenden.4.Mein freigegebener Ordner mit dem Namen enthält
shared
bereits Dateien. Also ändere ich den Besitzer und die Gruppe rekursiv mit dem folgenden Befehl.5.Ich setze die Ordner- und Dateiberechtigung auch
/shared
rekursiv mit dem Befehl auf OrdnerGastcomputer in meiner
mylan
Arbeitsgruppe haben mit chmod 750 keinen Zugriff auf die FreigabeSie können verwenden
Alle zukünftigen Benutzerkonten innerhalb der
users
Gruppe haben nur Leserechte.6. Auf meinem Client-Computer (Windows XP) habe ich ein Benutzerkonto mit dem Namen eingerichtet
clientone
. Derselbe Benutzername und dasselbe Passwort wie bei dem auf meinem Ubuntu-Server erstellten. Ein zweites Konto mit dem Namenclienttwo
wird ebenfalls auf dem Ubuntu-Server erstellt und es ist dasselbe Benutzerkonto, das auf meinem zweiten Computer (linuxmint 15) verwendet wird.7. Auf meinem Client-Computer, nachdem
clientone
ich mich mit dem Konto angemeldet habe , gehe ich zu Befehl ausführen und gebe dann ein192.168.10.254
ist die IP-Adresse meines Ubuntu-Servers,/shared
ist der Ordner, der auf meinem Ubuntu-Server freigegeben istWenn Sie zur Eingabe eines Kennworts aufgefordert wurden, geben Sie das Kennwort Ihres Benutzerkontos ein. Und auch Ihr Schlüsselbund-Passwort, wenn KEYRING auf Ihren Linux-Rechnern aktiviert ist.
Dieser funktioniert für mich in meinem eigenen Netzwerk-Setup. Mein Server ist ein Mehrzweckserver, der als Squid-Server, XBMC- und Mediatomb-Server sowie als Amahi-Server dient.
Ich suche noch nach Möglichkeiten, wie ich den Dateifreigabeteil meines Setups verbessern kann. Die obige Anleitung ist keine kugelsichere Lösung. Kaufen Sie sie und probieren Sie sie aus. Ich teste und versuche das ACL-Ding zusammen mit automatisch gemounteten freigegebenen Ordnern. Da Ihre Anforderungen an die Freigabe von Ordnern immer komplizierter werden, garantiert Ihnen die obige Anleitung keinen Erfolg.
Info hinzugefügt:
Ich habe Amahi Server auf meinem Server installiert. Ich habe es auch verwendet, um Benutzerkonten zu erstellen, die Zugriff auf die freigegebenen Ordner haben sollen. Ich habe es auch verwendet, um neue Ordnerfreigaben zu erstellen.
Wenn Sie komplexere Benutzerberechtigungen für verschiedene Benutzer wünschen, ist ACL die richtige Wahl.
quelle
Ich habe Videodateien auf meinem Namen, aber wenn ich mich mit dem Namen meiner Töchter anmelde, kann ihr Konto die Videodateien nicht sehen. Also ging ich zu den Benutzerkonten, entsperrte sie (oben rechts) und änderte dann ihren Kontotyp von "Standard" zu "Administrator" (das ist, was mein Konto ist). Jetzt werden alle Videodateien, wirklich alles, angezeigt wenn unter ihrem Konto angemeldet.
quelle