> Ingo Schwarze <[email protected]> hat am 28. Mai 2015 um 15:41
> geschrieben:
>
>
> Hi Kenneth,
>
> Kenneth Gober wrote on Thu, May 28, 2015 at 09:19:59AM -0400:
> > On Thu, May 28, 2015 at 8:40 AM, <[email protected]> wrote:
>
> >> i just discovered that on BSD, a file inherits the group permissions
> >> from
> >> the directory it is created in (contrary to Linux, which uses the
> >> default
> >> group of the user).
> >>
> >> But i failed to find more information on that topic in the man pages
> >> (chmod, chgrp, chown, touch, chflags) or the FAQ, just Otto@ replying
> >> on
> >> misc [1].
> >>
> >> Is this expected to be known, or does this information exist
> >> somewhere in
> >> the documentation?
>
> > more specifically, BSD treats directories as if they always have the
> > setgid
> > bit set. I think this is expected to be known, although it does exist
> > in the
> > documentation (but I had to consult wikipedia to find out where):
> >
> > "man 2 open" says:
> >
> > When a new file is created it is given the group of the directory
> > which contains it.
>
> Actually, i consider that the logical place to document it.
> It would be misplaced in section 1 manuals because it doesn't
> depend on which user-level utility creates the file. It would
> be misplaced in section 7 because there is no section 7 manual
> about file ownership (ever though there is one about symbolic links).
>
> In general, if a manual seems to be lacking information (like, you
> are creating a file with cat(1) or vi(1) but the manuals don't tell
> you what the group will be) try to ask your question in a precise
> and general form, here: When i create a new file, which group will
> it have? Then ask yourself: Which library function or system call
> implements that functionality? Here: Which library function is
> used to create new files? apropos(1) may help with that, for example:
>
> $ man -s 3 -k '~create.*file'
> creat(3) - create a new file
> CURLOPT_NEW_FILE_PERMS(3) - permissions for remotely created files
> FcStrCopyFilename(3) - create a complete path from a filename
> posix_spawn_file_actions_destroy, posix_spawn_file_actions_init(3) -
> create and destroy posix_spawn file actions objects
>
> And then creat(3) will point you to open(2), even if you didn't
> know that open(2) is the POSIX standard method for creating new
> files.
>
> So i wouldn't know how to improve the documentation.
>
> Yours,
> Ingo
>
Hi Ingo,
thanks, that makes sense. I must admit that i didn't think about looking
for "create"; if i had, even a simple
apropos create | grep file
would have shown only a small amount of related man pages (in lack of your
man-search-skills).
Thanks to anyone who replied!
Nils