[Pkg-samba-maint] Bug#525321: Bug#525321: samba: "force create mode" option no longer works

Nick Nobody me at nikosapi.org
Fri Apr 24 19:57:00 UTC 2009


On Fri, 2009-04-24 at 12:04 +0200, Christian Perrier wrote:
> Quoting Nick Nobody (me at nikosapi.org):
> 
> > > What happens when you copy the file ?
> > > 
> > > I see the same behaviour than the one you see, with 3.3.3. However,
> > > copying the file ends up with the right permissions.
> > > 
> > > I'm not entirely sure that what you see is a bug, actually. After all,
> > > when moving a file, you expect permissions to remain as they are.
> > > 
> > > 
> > 
> > The same thing occurs even if I copy a file.
> 
> It doesn't on my side. Copying a file ends up with the expected
> permissions.
> 
> Which is why I assume that experiencing the problem with "mv" only is
> IMHO maybe not a bug.

If this is isn't a bug, then what's the point of the "force create mode"
option? Whether I'm copying or moving a file to the samba share, I'm
still *creating* a new file on the remote server. All newly created
files should at least have the same permissions as "force create mode".

This seems to be pretty clearly laid-out in the smb.conf man page:

    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.

    The default value of this parameter removes the group and other
    write and execute bits from the UNIX modes.

    Following this Samba will bit-wise ´OR´ the UNIX mode created from
    this parameter with the value of the force create mode parameter
    which is set to 000 by default.

> > I'm pretty sure this is a bug, in the smb.conf manpage it says that the
> > mode given to the "force create mode" gets OR'd with the file's
> > permissions. This guarantees that you'll always have at *least* whatever
> > "force create mode" is set to. The way I understand this is: "create
> > mask" strips away permissions and "force create mode" adds them, no?
> 
> 
> If I could reproduce the bug when copying a file, I would
> agree. However I am not..:-)
> 
> Have you considered checking the "umask" settings which you're using?
> 

Both the server and the client have a default umask of 0022 and I've
tried mounting the share with umask=0000 and that doesn't help.

Another weird thing I've noticed (which is not in 3.0.24-6etch10):

nikosapi at kubuntubox:~$ touch {copy,move}test; chmod 777 {copy,move}test
nikosapi at kubuntubox:~$ cp copytest /mnt/smb/archives/
nikosapi at kubuntubox:~$ mv movetest /mnt/smb/archives/

teh-server:~# ls -l /mnt/md1/archives/{copy,move}test
-rwxr-xr-x 1 samba samba 0 2009-04-24 15:41 /mnt/md1/archives/copytest
-rwxrwxrwx 1 samba samba 0 2009-04-24 15:40 /mnt/md1/archives/movetest

Shouldn't the execute bits be wiped out by my "create mask" (0664)? And
why are the group and others' write bits being removed when copying?

Thanks for your patience,

nick






More information about the Pkg-samba-maint mailing list