delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
DomainKey-Signature: | a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; q=dns; s= | |
default; b=sylDB1siSUXtLWhCa/wBuNcFtjmLh1QVOWPw64BwLTJ/U4O/pTKyF | |
oWu60GoS+ZcXpl/XQjdFUW6gINVwCw6WEobYNbGJhULShJEzIXUvZXEtXZlR0oBd | |
3U23VcqUx9NtyxsfssZV6ccnoipkbzELcFcqLw9LdlYtMXlJLAzwD8= | |
DKIM-Signature: | v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; s=default; | |
bh=QCS9717pRXCe+9PgOvfPyXqJqi4=; b=U7sAsROWzVMn455hNRHq8CWQAhl4 | |
QzjD+3voUdLXo0DdfchwCHBiX265bqgYpzuuzve3fr6vMnYr5bKCLsp7NNJ4ocha | |
WPK296QyN4CnskkgDZ087iAVEg03H2BaqDGeiRyQpy/ZcN8rRlrStZ5wdEXEDg/g | |
WtBpBvexfjp+8gE= | |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
Authentication-Results: | sourceware.org; auth=none |
X-Spam-SWARE-Status: | No, score=-108.7 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GOOD_FROM_CORINNA_CYGWIN,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 spammy=dear, Dear |
X-HELO: | mout.kundenserver.de |
Date: | Tue, 3 Mar 2020 14:39:25 +0100 |
From: | Corinna Vinschen <corinna-cygwin AT cygwin DOT com> |
To: | cygwin AT cygwin DOT com |
Subject: | Re: Change in logical link behaviour |
Message-ID: | <20200303133925.GA4045@calimero.vinschen.de> |
Reply-To: | cygwin AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
References: | <30792264-c452-7ea2-c83f-f368322387ea AT emrich-ebersheim DOT de> <20200302164851 DOT GS4045 AT calimero DOT vinschen DOT de> <d04228d9-eff9-6dd4-6cfc-80b24bc8fa3b AT emrich-ebersheim DOT de> |
MIME-Version: | 1.0 |
In-Reply-To: | <d04228d9-eff9-6dd4-6cfc-80b24bc8fa3b@emrich-ebersheim.de> |
--1IYcr18XUmgwOrO2 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mar 3 14:17, Rainer Emrich wrote: > Dear Corinna, >=20 > Am 02.03.2020 um 17:48 schrieb Corinna Vinschen: > > On Feb 29 14:10, Rainer Emrich wrote: > >> I try to reliably determine if native Windows symlink are working for a > >> current cygwin environment in a shell script. > >> [...] > >> On cygwin 3.1.4 I get: > >> > >> > >> Directory: D:\cygwin\home\rainer\temp > >> > >> > >> Mode LastWriteTime Length Name > >> ---- ------------- ------ ---- > >> d---- 29.02.2020 13:58 asdfgh-1 > >> > >> So now there is no indication that this is a link. Is this new behavio= ur > >> intended or a bug? > >> > >> I did not try on Windows 10, I'm still on windows 7. > >=20 > > I can't reproduce this behaviour. Keep in mind that, [bla] > I know all the implications. I have to test in an unknown cygwin > environment if it is possible to set native symlinks. > >=20 > > So, on Windows 7 in an elevated shell: > >=20 > > # id -G | grep -Eq '\<544\>' && echo elevated || echo non-elevated > > elevated > > # uname -a > > CYGWIN_NT-6.1 vmbert764 3.1.4(0.340/5/3) 2020-02-19 08:49 x86_64 Cygw= in > > # mkdir qwe > > # cd qwe > > # export CYGWIN=3D"winsymlinks:nativestrict" > > # touch foo > > # ln -s foo bar > > # cmd /c dir /a > > Volume in drive C has no label. > > Volume Serial Number is A8E0-A24E > >=20 > > Directory of C:\cygwin64\home\corinna\qwe > >=20 > > 2020-03-02 17:31 <DIR> . > > 2020-03-02 17:31 <DIR> .. > > 2020-03-02 17:31 <SYMLINK> bar [foo] > > 2020-03-02 17:31 0 foo > > 2 File(s) 0 bytes > > 2 Dir(s) 7.907.352.576 bytes free > >=20 > Yes, this is the same for me, but if you use the powershell >=20 > # powershell "& {Get-Item -Path bar | Select-Object}" >=20 > on cygwin 3.0.7 you get >=20 > Directory: D:\cygwin\home\rainer\temp >=20 > Mode LastWriteTime Length Name > ---- ------------- ------ ---- > -a---l 03.03.2020 14:09 0 bar >=20 > and on cygwin 3.1.4 you get >=20 > Directory: D:\cygwin\home\rainer\temp >=20 > Mode LastWriteTime Length Name > ---- ------------- ------ ---- > -a--- 03.03.2020 14:09 0 bar >=20 >=20 > The only difference is the used cygwin version. So, I don't understand > what has changed. Nothing has changed in terms of symlink handling. Are you saying that `cmd /c dir /a' shows 2020-03-03 14:21 <SYMLINK> bar [foo] but powershell shows -a--- 03.03.2020 14:21 0 bar for the same file? That would be most puzzeling but certainly outside of Cygwin's control. So I created a symlink again on W7 with Cygwin 3.1.4 and `export CYGWIN=3Dwinsymlinks:nativestrict', and tried with cmd *and* powershell (which I usually don't touch) and I see # uname -a CYGWIN_NT-6.1 vmbert764 3.1.4(0.340/5/3) 2020-02-19 08:49 x86_64 Cygwin # setenv CYGWIN winsymlinks:nativestrict # ln -s foo bar # cmd /c dir /a bar Volume in drive C has no label. Volume Serial Number is A8E0-A24E Directory of C:\cygwin64\home\corinna\qwe 03.03.2020 14:30 <SYMLINK> bar [foo] 1 File(s) 0 bytes 0 Dir(s) 7.929.241.600 bytes free # powershell "& {Get-Item -Path bar | Select-Object}" Directory: C:\cygwin64\home\corinna\qwe Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 03.03.2020 14:30 0 bar Aha! So powershell does not show the 'l'. Let's try the same on Windows 10: # uname.ORIG -a CYGWIN_NT-10.0 vmbert10 3.1.5(0.340/5/3) 2020-03-02 18:46 x86_64 Cygwin # setenv CYGWIN winsymlinks:nativestrict # ln -s foo bar # cmd /c dir /a bar Volume in drive C has no label. Volume Serial Number is C65C-2A36 Directory of C:\cygwin64\home\corinna\tmp 2020-03-03 14:33 <SYMLINK> bar [foo] 1 File(s) 0 bytes 0 Dir(s) 23,112,925,184 bytes free # powershell "& {Get-Item -Path bar | Select-Object}" Directory: C:\cygwin64\home\corinna\tmp Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---l 2020-03-03 14:33 0 bar Aha! powershell shows the 'l'. Also, notice how the number of mode bits seem to be only 5 on Windows 7: -a--- ^^^^^ 12345 but *6* on Windows 10: -a---l ^^^^^^ 123456 On Windows 10 it shows 6 mode bits for non-symlinks as well, so the 'l' mode is not just missing on Windows 7 in this specific case, but a generic difference. From my POV, this is just a shortcoming of W7 powershell. Keep in mind that the output of powershell has nothing to do with Cygwin itself. Corinna --=20 Corinna Vinschen Cygwin Maintainer --1IYcr18XUmgwOrO2 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEoVYPmneWZnwT6kwF9TYGna5ET6AFAl5eXgwACgkQ9TYGna5E T6BDyw/+OFNhi2ee5yEMS9xSoT4luy9LrVECpuEtqLzI2BQYC2jamQINqmwZ3b5B ZqqUBssj3CdbgZPi7jJH/5GiT3rMv6oZZDlxG6Aj0pw+nxL2+78dIbGHBUcdpCoO FyDJvmvgoxOmVgil/+domVUWgiik0xoReW7S17EGBhbNgIWxygNI9z1h2sfsdGmA ftwv1JqeThIEakQ8SmqfOX+LPSSthtB8gKr98ULs4pOgNMDOQ+GZCuT/FxjIpEE4 wgN0exUwykKICMKq/ddNF+yBf3n6uYhhhkJUbyLiUCk0G60EYFsfdMzeOrqnMiwy D1K/JW1rzEuaFOIlmAghpjL3k+u7+CR+48c5GrgfKEaDgecSy0tP2sxd13qzG5HO erLwuXBZPaGzFm1r3LbkZJjZMZ66WS4OU9O9EJIMg+Ra5QcWtdC5wsIbnFoN6VkS MbGIyIH9f3hLf2NeZUt8Z55sN4Wc8daiEKo2SCrOpydAm4/5wYM6xiUhANP6gkhH 1OOL/MC/OmkrRqjwE9giskTd69VcU2qBOoEF5OK3hcfe+SKqnSo2YwWC9plxyp5/ W8UbDN+Qkbr8Z7HEEa455WBfy0rI5NxPJP8IaDK/KwNvWFrCTzp63GIZhCBxlxRd rGriy5ar9Z02dM3iuB+dV4ltXjM4JdNE2UyHp/NLKcXLLth6xX0= =ak3d -----END PGP SIGNATURE----- --1IYcr18XUmgwOrO2--
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |