public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Michael Soegtrop <MSoegtrop@yahoo.de>
To: Ken Brown <kbrown@cornell.edu>,
	cygwin@cygwin.com, L A Walsh <cygwin@tlinx.org>
Subject: Re: Strange paths in NTFS reparse points created by Cygwin Setup for e.g. TTF fonts
Date: Sun, 8 Nov 2020 15:40:39 +0100	[thread overview]
Message-ID: <addcfc69-6844-845d-3bae-5aab8d752b9d@yahoo.de> (raw)
In-Reply-To: <bb3e651e-bedf-5c17-f3e3-48d8cc98b6fd@cornell.edu>

Hi Ken, L A Walsh,

 > But you can change this if you don't like it, as I said in my reply 
to your earlier message about this:

I don't know if I like it yet - I am still in the process of 
understanding what is going on.

I maintain the Windows build of a large open source project and we also 
deliver scripts to setup cygwin on our user's machines. I need to 
understand what is going on before I make changes to settings. I am 
afraid that using non standard settings in the end will lead to more 
confusion than good - especially if people have several cygwin 
installations. Also I need to be able to support our users in case they 
have issues with this.

The interesting point is that in our CI we do several 100 cygwin 
installations (sometimes more than 1000) per month. For 95%..99% the 
removal with "rm -rf" from another cygwin installation works well, in 
about 1%..5% of the case about 250 symlinks / reparse points remain. 
This happens all on the same machines with identical scripts.

With my manual installations of cygwin it is about the same ratio. I had 
two cases where removing a cygwin installation from Windows explorer 
with "shift+delete" did not work cause of these about 250 symlinks - I 
would say I did roughly 100 installations in this time frame.

What I don't understand is why it does work sometimes and sometimes not. 
I always use the same scripts to install and remove cygwin on the same 
machines and then do pretty much the same thing with this cygwin (build 
our open source software) before I delete it.

It is unlikely that the issue is that the target files are open as L A 
Welsh suggested because always either all symlinks or none at all 
remain. The number is always the same (with recent versions afair 258).

@ L A Walsh: you wrote "1) if you try to delete the file in cygwin"

Why shouldn't I be able to remove symlinks with rm -rf from within a 
cygwin? As far as I understand the standard behavior of "rm" is to 
remove the symlink and not its target. What I do when I remove a cygwin 
installation in our CI is an "rm -rf" from a different cygwin 
installation. As I said in most cases this works but rarely it doesn't.

In case it doesn't work the symlinks are quite hard to get rid of. 
FSUTIL REPARSEPOINT DELETE is the only method which works I found so 
far. Even after a reboot, resetting the ACLs in various ways, ... no 
usual method to remove these files works.

I understand that the contents / path of the symlink is as expected, so 
I am looking out for other oddities which could explain this behavior.

Best regards,

Michael


  reply	other threads:[~2020-11-08 14:40 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <245e2446-8c1e-cbaa-a4ad-215d7e766274.ref@yahoo.de>
2020-11-05 21:41 ` Michael Soegtrop
2020-11-05 22:39   ` Ken Brown
2020-11-08 14:40     ` Michael Soegtrop [this message]
2020-11-08 16:38       ` Ken Brown
2020-11-09  2:14       ` L A Walsh
2020-11-06  5:31   ` L A Walsh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=addcfc69-6844-845d-3bae-5aab8d752b9d@yahoo.de \
    --to=msoegtrop@yahoo.de \
    --cc=cygwin@cygwin.com \
    --cc=cygwin@tlinx.org \
    --cc=kbrown@cornell.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).