Home > windows > Cannot open files modified with Cygwin on Windows, clue in ls -l output

Cannot open files modified with Cygwin on Windows, clue in ls -l output

June 15Hits:1

I can no longer open the tabs.html and tabs.js files indicated in the output below (2nd and 3rd out of four). Using cygwin I applied a patch to them.

I believe the clue is in the ls -l output. Specifically, unlike the other files, at the end of what would ordinarily be permissions information if this were *nix instead of Windows/Cygwin.

In the first field the files I can open have the series of dashes ending with a plus-sign: '----------+' but the files I can no longer open don't have the terminating '+'. What does the '+' signify and how can I modify the permissions so that it is restored, bearing in mind this is using Cygwin (on Windows 7) if that makes a difference.

Thanks in advance:

----------+ 1 George None  144 Jun 14 17:10 tabs.css ----------  1 George None 3165 Jun 15 06:26 tabs.html ----------  1 George None 4084 Jun 15 06:26 tabs.js ----------+ 1 George None  252 Jun 14 17:10 tabs-adv.css 


The plus means that the files have an alternative access control method set that does not map to the POSIX permissions. i.e. a Windows ACL or something like that. You need to check the files with the + sign to find out what that is, probably outside of Cygwin. It's likely the files were created or modified by a non-Cygwin aware binary.

You can also use getfacl, setfacl, cacls, xcacls to view or set the non-POSIX mapped permissions.

The other option is to add POSIX permissions as well, so that your Cygwin users can access them, although I'm not sure how they will interact with the additional permissions, but you could try, chmod 640 tabs* to see if it helps.

This is from info ls on Cygwin,

 Following the file mode bits is a single character that specifies
 whether an alternate access method such as an access control list
 applies to the file.  When the character following the file mode
 bits is a space, there is no alternate access method.  When it is
 a printing character, then there is such a method.

 GNU `ls' uses a `.' character to indicate a file with an SELinux
 security context, but no other alternate access method.

 A file with any other combination of alternate access methods is
 marked with a `+' character.

Related Articles

Copyright (C) 2018 ceus-now.com, All Rights Reserved. webmaster#ceus-now.com 14 q. 0.857 s.