[1.7] Setup.exe default ownership of files in fresh install [Admin:None?]

Julio Costa costaju@gmail.com
Fri Apr 17 15:35:00 GMT 2009


On Fri, Apr 17, 2009 at 14:56, Corinna Vinschen wrote:
> On Apr 17 14:22, Julio Costa wrote:
<snip>
>> Like the subject summarizes: After a fresh install of cygwin 1.7 (made
>> with local user Administrator), all folder and files ownerships from
>> cygwin root are: Administrator:None.
>>
<snip>
>> Is this an expected behaviour? Because right now it doesn't seems ok to me...
>
> But it is.  Setup for 1.7 installs the files with POSIX permissions as
> they are stored in the tar archives, rather than using the ugly Windows
> default permissions.  This is exactly what you'd expect on a Linux or
> UNIX box.

That sounds like a good (and logic) thing to do, but...

> Except in some minor cases, the default permissions are
> usually so that you get full access for the owner and read and, where
> necessary, execute permissions.

Once again, that makes sense, but...

> Why is that a problem for sharing the
> data with others?
>

Like I said in my previous mail, this is a "primary suspect" of
something not yet told about :)
I'll start another thread on that later, because there could be a
number of factors that can be contributing to my 'other' problems...

I think that you should be counting, if not for other reasons, with
the "WTF factor".
What I mean is: Anyone installing something with an administrator
account (member of 'Administrators') is expecting to get group-wise
permissions to the Administrators group (or 'root', using your default
translation in passwd to make it POSIX-like).
Currently it is assigned to the 'None' group. That's does not SEEM to
be useful, even if it doesn't break anything at the surface.
The mkpasswd also has the same "problem":

Administrator@vmguest ~
$ mkpasswd -l -u Administrator
Administrator:unused:500:513:U-VMGUEST\Administrator,S-1-5-21-221598610-1224240008-1772044280-500:/home/Administrator:/bin/bash

Administrator@vmguest ~
$ id
uid=500(Administrator) gid=513(None)
groups=0(root),544(Administrators),545(Users),513(None)

Why it does not show gid=544(Administrators) or even gid=0(root)? Is
this something so fundamentally different from POSIX?
There is a similar problem with a domain user:

domainuser@vmguest ~
$ mkpasswd -d -u domainuser
DOMAINUSER:unused:18606:10513:U-DOMAIN\DOMAINUSER,S-1-5-21-682003330-2049763794-1831674531-8606:/home/DOMAINUSER:/bin/bash

domainuser@vmguest ~
$ id
uid=18606(domainuser) gid=10513(Domain Users)
groups=0(root),544(Administrators),545(Users),10513(Domain Users)

Once again, a logic output should be gid=544(Administrators) or even
gid=0(root)...

In the first installations I've made I were logged on with this domain
user, and that proved to be the worst case, because the 'Domain Users'
default group assigned to the cygwin root turned Cygwin not accessible
even by Administrator(!)... see what I mean?

Shouldn't this logic for determining the primary group follow some
other... logic? For example, taking the output of whoami windows
utility, I see that the BUILTIN\Administrators group is (like for the
Administrator example) the only group marked with "Group Owner" in the
attributes... maybe this is a way to choose from?

The bottom line is... although it MAY not be breaking anything,
doesn't seems logic, specially considering the observed behaviour.

___________
Julio Costa



More information about the Cygwin-apps mailing list