cygwin makes shared folders on vista

joekrahn krahn@niehs.nih.gov
Tue Nov 27 20:01:00 GMT 2007


I have found that Vista tags filesystem objects as "shared" whenever they
contain references to any accounts other than the user. But, they are not
"network shared". Apparently, Cygwin developers do not see this behavior.
Maybe it depends if you use Home or Business versions of Vista, or whether
your machine is managed under a domain controller. See my previous message
and the reply:
http://cygwin.com/ml/cygwin/2007-11/msg00058.html
http://cygwin.com/ml/cygwin/2007-11/msg00069.html

Here is how this Vista shared thing works on my computer, running Vista Home
(Premium?), set with a Workgroup name, but no domain controller. If I create
a file in Windows and then add an Everyone ACL with:
ICACLS foo.txt /grant "Everyone:(R)"

I now have a "shared" tag on that file's icon in Windows Explorer, but it is
not listed as shared when looking up information on "network shared" files.
So, in some contexts, Vista uses the "shared" icon tag to indicate "locally
shared" instead of "network shared". The idea of "locally shared" sort of
makes sense if a system is not part of an NT domain, and is acting in more
of a stand-alone mode. I have looked for documentation on this, but features
that are oriented to home users tend to be poorly documented.

In my previous post to this list, I suggested that Cygwin changes it's
attribute handling to leave out the local/None and Everyone groups
completely, whenever they have no access permissions. In that case, users
with this problem can set umask to 077, and the group+world attributes are
not needed, so those two ACL entries can be left out. Or, maybe it just
needs a different choice for the no-access state. I found that adding an ACL
entry with only the AS (access system security) attribute did NOT give the
file a shared icon tag.

Seeing the shared icon tag everywhere is only a minor nuisance. The major
problem is that manipulating those files from Windows becomes incredibly
slow. I tried to move a large directory tree and got completion estimates of
about 20 hours. Why so slow?? Maybe the indexing service is confused about
the "Everyone" user, and is rebuilding the index for every file moved. In
any case, it is probably a design bug. Maybe if we disable the indexing
service the performance hit will go away.

As a work-around, it would be easy to create a Perl script that recursively
removes the extra file attributes.


E.Baud wrote:
> 
> In fact, as I wrote it in previous message:
> - I'm not concerned about cygwin home/install location, but more with the
> program I wrote (that generates files and subdirectories), compiled with
> gcc/cygwin, and that run over images directories (most of the time under
> Desktop directories). In that case, the setting-up of environment variable
> CYGWIN=nontsec with such C-call:  setenv(CYGWIN, nontsec,1) is not
> efficient !?; So, the only solution I have is to set permanent this
> environment variable (as a vista environment variable), with impact on
> whole cygwin shells...
> 
> moreover,
> - the "shared tags" are annoying, and there's a bug? in vista making the
> deletion of such files, taking too much time
> 
> Emmanuel.
> 

-- 
View this message in context: http://www.nabble.com/cygwin-makes-shared-folders-on-vista-tf4360979.html#a13976216
Sent from the Cygwin list mailing list archive at Nabble.com.


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list