Hallo, * On Thu, Sep 15, 2005 at 01:35 PM (+0200), Andre Tann wrote:
Kann mir jemand bitte folgendes Erklären:
Es heißt in der smb.conf:
create mask (S) When a file is created, the necessary permissions are calculated according to the mapping from DOS modes to UNIX permissions, and the resulting UNIX mode is then bit-wise 'AND'ed with this parameter. This parameter may be thought of as a bit-wise MASK for the UNIX modes of a file. Any bit not set here will be removed from the modes set on a file when it is created.
Jetzt setze ich create mask = 0770, und lege eine Datei via Samba an. Die hat aber jetzt nur 0760. Wo bleibt mein fehlendes Bit hängen? Liegt das am Mapping DOS => Unix, und wenn ja, wo kann ich das modifizieren?
Ich hatte es so in Erinnerung, dass hier die unter Unix gesetzte "umask" mitspielt und als Default genommen wird. Der Parameter "create mask" (ist identisch mit "create mode") kann dann wegen der AND-Verknüpfung allen- falls davon dann noch Rechte wegnehmen, aber keine zugeben. Evtl. spielt aber hier nicht nur oder (möglicherweise bei aktuellen Samba-Versionen) nicht mehr die "umask" mit rein, sondern ein Mapping der DOS-Attribute auf Unix-Permissions. Wie dem auch sei - der Parameter "create mask" kann nur Rechte weg- nehmen. Dir wird vermutl. der Parameter "force create mode" helfen, da dieser per OR-Verknüpfung draufgerechnet wird. Wenn Du also den "force create mode" auch auf "0770" setzt, dann sollte das das Gewünschte leisten. Für Verzeichnisse gibt's dann analoge Parameter - diese hier gelten nämlich IIRC nur für Dateien. Gruß, Steffen