Ich habe einen Linux-Server, der freigegebene Samba-Ordner an einen Windows-Client exportiert. Von einer Linux-Shell aus muss ich das Systemattribut festlegen. Unter Windows würde ich Folgendes ausführen:
attrib +s folder
Wie kann ich dies auf dem Linux-Server machen?
Antwort1
Das Systemattribut ist eine Windows-spezifische Sache. Es gibt kein Linux-Äquivalent.
Samba bietet eine Möglichkeit, Windows-Attribute Berechtigungen zuzuordnen, die unter Linux vorhanden sind.. Dies kann jedoch störend sein, da die Linux-Berechtigungen eine andere Bedeutung haben. Daher werden das System- und das versteckte Attribut standardmäßig nicht zugeordnet.
Um das System und die versteckten Attribute verfügbar zu machen, bearbeiten Sie die Samba-Konfiguration ( /etc/samba/smb.conf
oder ähnlich, der genaue Pfad hängt von Ihrer Distribution ab). Aktivieren Sie die Optionen map system
und map hidden
im [data]
Abschnitt:
[data]
…
map system = yes
map hidden = yes
Dann wird das Systemattribut dem Gruppen-Ausführungsberechtigungsbit ( g+x
) zugeordnet, und das versteckte Attribut wird dem anderen Ausführungsberechtigungsbit ( o+x
) zugeordnet. Das Äquivalent von attrib +s some.file
unter Windows ist also
chmod g+x some.file
auf dem Linux-Server.
Beachten Sie, dass dies bedeutet, dass eine Datei, die Sie unter Linux ausführbar machen ( chmod a+x some.file
), unter Windows ausgeblendet und als Systemdatei gespeichert wird. Stellen Sie also sicher, dass Sie unter Linux normalerweise keine Dateien ausführbar machen.