This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems on case-sensitive file systems


Am 22.10.2014 16:00, schrieb Corinna Vinschen:
On Oct 22 09:01, Thomas Wolff wrote:
I'm facing a number of issues with case-sensitivity which I've collected:

There is a documented limitation on case-sensitivity using drive letter
paths,
also mentioned in https://sourceware.org/ml/cygwin/2013-08/msg00090.html
(last item). I vaguely remember seeing a reason for this limitation in some
mail but can't find it again. I think it would be good to remove this
limitation because it breaks user expectations when working on
case-sensitive drives.
The user expectation when using DOS paths is caseinsensitivity in the
first place.  But, as usual, there's no way to do this right, since
somebody will have another POV.  My stance is, don't use DOS paths when
using Cygwin.  At leats don't use DOS paths if you have any expectations
about special POSIX path handling on Cygwin.
I use an application that uses Windows or mixed paths, I cannot influence it. So while I understand your POV, it would still be helpful to have path interpretation fully-featured. (If you point me to a place in winsup, I might even try to do something myself.)

According to documentation, the posix mount flag is enforced to be the same
for all mounts below /cygdrive; is there a strong reason?
Yes.  The flags are shared between all cygdrive paths.  If you need
something else, don;'t use the cygdrive path, but another, manually
added mount point.  Note that this:

  none /cygdrive cygdrive binary,posix=0,user 0 0
  D: /cygdrive/d ntfs binary,nouser,posix=1,noumount 0 0

does NOT work.  The manual paths must not overlap with the cygdrive
paths.
I know and I did use a different path (maybe too similar to get recognized...). But it does not seem to work properly:
I have now this in /etc/fstab:
C: /mnt/c ntfs binary,nouser,posix=1,noumount 0 0
T: /mnt/t smbfs binary,user,posix=1,noumount,auto 0 0
which has no effect at all. Neither are these mounts set automatically when starting cygwin, nor can I refer to them by 'mount /mnt/t' ("mount: can't find /mnt/t in /etc/fstab or in /etc/fstab.d/$USER") or 'mount -a' (no effect).
The only thing that works is manual mounting:
mount -o posix=1 C: /mnt/c
mount -o posix=1,exec T: /mnt/t
But: while case-sensitivity now works in /mnt/c, it still does not in /mnt/t. As a minor side-effect, the mount points in /cygdrive of these two drives now disappear from the list shown by 'mount' although they are still available as duplicate mounts.
------
Thomas

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]