Trouble installing to UNC path and/or mapped network drive

Andreas Wettergren andreas.wettergren@amesto.se
Mon Aug 22 12:40:00 GMT 2016


Hi,
We have a shared Cygwin environment installed to a Windows network share at my workplace, 
and I have been assigned the task to update it (along with installing a Perl program I wrote + dependencies).

However, I’m having problems running the setup program to install to the network path.

Background:

The computer I’m using to launch the setup from is running Windows 7 Professsional (64 - bit).
I’m using setup-x86.exe version 2.874.
Antivirus (Webroot SecureAnywhere) is disabled, but not completely unloaded, during setup.
(I have permissions to disable Webroot via a control applet, but I don’t think I’m allowed to unload it completely)

The current installation age is unknown, but it seems fairly old.
Looking at the file dates in /bin they are from 2012.

I’m sorry, I don’t have the exact error messages at hand at this time, 
but if needed I will rerun the setup again and take more exact notes.

Ok, so on to the actual problems:

First I tried using an UNC path, but this does not work at all, 
the setup program complains that the UNC path is not an absolute path.
(Should this be considered a bug?  If so I will rerun the setup, get the exact error message and report it separately.)

To work around this, I mapped a network “drive” in Windows Explorer.
The drive is mapped so that my target directory is Z:\Cygwin.

I’m running this as a network user that has full read & write access to the target directory and subdirectories.
This user is also a member of the local administrator group.

Running the setup this way seems to work fine, up to a point where it tries to extract/install base-cygwin-3.8-1,
or more specifically the file /etc/postinstall/000-cygwin-post-install.sh

The symptoms begin with an error saying something like “Unable to extract /etc/ -- the file is in use.” plus a suspicion about a corrupt package.
Skipping past this error gives an almost identical error but about “/etc/postinstall”, 
and skipping that gives another about “/etc/postinstall/000-cygwin-post-install.sh”.

There is something in these messages about the file being updated at boot and it gives you the option to continue anyway,
but this does not seem to work, there is no actual progress past this last error message.
The setup progress window just starts to flicker at this point if i try to continue.
I’ve let the setup keep running for quite some time (20-30 minutes) at this point,
just to see if it eventually keeps going, but it seems to be stuck in a loop.

Closing setup at the “flickering” gives me an error message about not being able to write to the log file.
(The path to the log file in this messages seems to be a mix of Windows- and Unix-style paths.
I’m not sure if that is a red herring or a possible hint of the actual problem.)

The downloaded package base-cygwin-3.8-1 is not corrupt, I can unzip it using 7-zip without problems.
I can also write the file 000-cygwin-post-install.sh manually to Z:\Cygwin\etc\postinstall using Windows Explorer.
(The setup fails even if this file is present beforehand)

Some additional info:

I’ve tried to run the setup to an empty network path (no prior cygwin files, just an empty directory) as well, with identical results.
Nothing gets written to this directory.

I’ve also tried to run the install to a local drive on my computer.
This works as expected, no problems.

My symptoms are quite similar to this issue from the archive;
https://cygwin.com/ml/cygwin/2009-11/msg00607.html
but the cause that time seems to have been a broken version of the setup file:
https://cygwin.com/ml/cygwin/2010-01/msg00686.html

I’ve tried to look at what the setup program is doing at the point where it gets stuck using Process Monitor,
but I haven’t seen anything that seems useful so far. 
Setup seems to access a few registry keys over and over, but I see no failures or anything else notable.
Perhaps i should go back and check earlier in the setup progress (I’m not sure I’ve seen what happens at the time of the first error message.)

Finally, this sort of install routine has apparently worked in the past, 
my colleague tells me this is the way he has updated our Cygwin environment before.
It’s possible he did something slightly differently to what I have done this time though.

Is it possible that this style of installation has worked before, but inadvertently been broken in later versions of the setup program?
I suppose this is a bit outside of the normal use case, but I assume it should be at least possible to install Cygwin this way?

Any hints or suggestions would be much appreciated!

Best regards

Andreas Wettergren
Translation Support
Office: +46 31-360 98 30   |   Amesto Translations
 


More information about the Cygwin mailing list