- Ich habe ein Computerlabor, das von einem Dutzend Studenten genutzt wird.
- Jeder Computer mountet eine bestimmte NFS-Freigabe mit einigen darin enthaltenen Verzeichnissen, die für alle Studenten sichtbar sind.
- Einige Studenten benötigen einen Platz im Netzwerk, um die Daten ihres Projekts zu speichern, sodass diese auf allen Laborcomputern verfügbar sind.
- Aus Sicherheits- und Datenschutzgründen möchte ich die Liste der Verzeichnisse im freigegebenen Arbeitsbereich ausblenden, sodass ein bestimmter Student, der den
ls
Befehl ausführt, nur sein eigenes Verzeichnis sehen kann und denkt, es sei das einzige dort. - Ich erinnere mich noch an die Zeit, als ich für einen ISP arbeitete und Sparcs unter Unix verwendete. Wenn ein Benutzer versuchte, den Inhalt des /home-Verzeichnisses aufzulisten, sah er nur seinen eigenen (das war zu der Zeit, als wir ihm Shell-Konten gaben, damit er per Befehl auf seine E-Mails zugreifen konnte
Pine
)...
chmod
Kann mir jemand die entsprechende Befehlssyntax hierfür sagen ?
Antwort1
Angenommen, die persönlichen Ordner befinden sich in /external/nfs/server/share
, sodass der Benutzer alexp
seinen eigenen Ordner hat /external/nfs/server/share/alexp
, der ihm gehört und die Modusbits 0750 ( rwxr-x---
) hat.
Legen Sie fest, dass der übergeordnete Ordner /external/nfs/server/share
einem Administratorkonto und einer Administratorgruppe mit den Modusbits 0751 ( rwxr-x--x
) gehört. Auf diese Weise können die SchülerTraversedas Verzeichnis, um zu ihrem persönlichen Zuhause im Netzwerk zu gelangen, aberkann nicht auflistensein Inhalt. Siehe "Ausführen- vs. Lesen-Bit. Wie funktionieren Verzeichnisberechtigungen in Linux?" unter Unix und Linux SE.