kern/177087: Wrong gid on file creations
Lowell Gilbert
freebsd-bugs-local at be-well.ilk.org
Wed Mar 20 15:40:01 UTC 2013
The following reply was made to PR kern/177087; it has been noted by GNATS.
From: Lowell Gilbert <freebsd-bugs-local at be-well.ilk.org>
To: Tuc <tuc at t-b-o-h.net>
Cc: <freebsd-gnats-submit at freebsd.org>
Subject: Re: kern/177087: Wrong gid on file creations
Date: Wed, 20 Mar 2013 11:34:45 -0400
Tuc <tuc at t-b-o-h.net> writes:
> On 2013-03-18 17:24, Lowell Gilbert wrote:
>> Tuc <tuc at t-b-o-h.net> writes:
>>
>>>>How-To-Repeat:
>>> $ cd /tmp
>>> $ touch foo
>>> $ ls -l foo
>>> -rw-r--r-- 1 tuc wheel 0 Mar 18 20:36 foo
>>> $ grep tuc /etc/passwd
>>> tuc:*:1001:1001:Tuc:/home/tuc:/bin/sh
>>> $ id
>>> uid=1001(tuc) gid=1001(tuc) groups=1001(tuc),0(wheel)
>>> $ cd /var/tmp
>>> $ touch foo
>>> $ ls -l foo
>>> -rw-r--r-- 1 tuc wheel 0 Mar 18 20:37 foo
>>>
>>> root at e-nfs-01:/root # mkdir /foo
>>> root at e-nfs-01:/root # chmod 777 /foo
>>> root at e-nfs-01:/root # exit
>>> logout
>>> $ cd /foo
>>> $ touch foo
>>> $ ls -l foo
>>> -rw-r--r-- 1 tuc wheel 0 Mar 18 20:39 foo
>>
>> What group were you expecting?
>>
>> Those directories normally belong to the wheel group, so new
>> subdirectories will be too.
>
> Expecting the primary group listed on my id. I guess I never realized
> that it used the parents group. I expected it to give the id/group
> that I belong to.
On some systems (SystemV-ish), the euid/egid are used by default, and I
think the sgid bit can be set on the directory to change that to the BSD
style. The BSD behaviour is the only one that POSIX requires.
I believe that ACLs can be used to get the type of permissions you want,
but I don't know the syntax offhand.
> The basis of the reason for my interest is that I'm trying to use
> NAS4Free, and when I create a volume and export it out NFS, every file
> is getting the wheel group there too. I'm expecting it to pick up the
> group of the user like our NetApp does. I tested on Linux, and when I
> do the same things in /foo it creates it with my id/group, not the one
> above. If I was to just use a normal FreeBSD NFS setup, how can I make
> it pick up the user/group of the person creating the file (We are
> using it exported to a farm of CentOS...We wanted FreeBSD due to ZFS).
Normally, for directories where anyone can create their own files or
directories, we use the sticky bit. /tmp is set up this way, for example.
And normally every account has a home directory, owned by them and their
personal group.
More information about the freebsd-bugs
mailing list