X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org EC749385770C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1685247684; bh=fc41FmNtGxdcAYIpH7Fa08I8IXtcouktm//32j4WUuM=; h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=vb4wOmH6iYs81MQmAFf8drxly5oEcf6vh4lQ+FqbZZOOVF2yn8LRvbELsLzHicfPc 2HI7PM8PsaCG6tO7TD8FT1yj75z/Z1IZ9GC8wRiCS5uMkeICWqmSKDoVJtLv8ZQYJW vpWbb3SDLDNIZ95ntyyPV0VoeNBQPpfFHjiaR5LA= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6C8A03858D3C X-Authority-Analysis: v=2.4 cv=VbHkgXl9 c=1 sm=1 tr=0 ts=6472d6b2 a=DxHlV3/gbUaP7LOF0QAmaA==:117 a=DxHlV3/gbUaP7LOF0QAmaA==:17 a=IkcTkHD0fZMA:10 a=k4qw-rNniso6BbSCWIYA:9 a=QEXdDO2ut3YA:10 Message-ID: Date: Sat, 27 May 2023 22:21:05 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: inside /bin/tar: cannot change mode Content-Language: en-CA To: cygwin AT cygwin DOT com References: <51B86F63-E8BC-492B-BC5F-8704B164FB17 AT Denis-Excoffier DOT org> Organization: Inglis In-Reply-To: X-CMAE-Envelope: MS4xfGKq6JTrSmnYpjsI+h8wUayDgqDx/GrS4p1dBoFKwnkyqCIY+te6xa2Ri6Si+zB1F6cHhPzKGlscfzoStdthQTwOvUSE+g70PngHAxfP+M2b3/I/eUuc XJ6C/PBrgQu7N2cz86AnkhyBG2sNCwX+eR1Nq1Nz6vnOmCIexs7AENXMzUISOnNLWxpOcsLethnP3K/u9oBvJWnD6GbgEVdtgs5AgMh3viEK0Ep5OogN5NNf X-Spam-Status: No, score=-3.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, RCVD_IN_DNSWL_LOW, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Brian Inglis via Cygwin Reply-To: cygwin AT cygwin DOT com Cc: Brian Inglis , Denis Excoffier Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: cygwin-bounces+archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 34S4LlYe026098 On 2023-05-26 00:27, Brian Inglis via Cygwin wrote: > On 2023-05-25 22:52, Denis Excoffier wrote: >>> On 2023-05-25 09:52, Brian Inglis via Cygwin wrote: >>> On 2023-05-24 12:18, Denis Excoffier via Cygwin wrote: >>>> I have an error (about symlinks it seems) that i have never met in years: >>>> Cannot change mode. >>>> Apart from this message (and return code != 0), the ?tar extract? is ok. >>>> % uname -a >>>> CYGWIN_NT-10.0-17763 {edited} 3.5.0-0.295.g3bee68248fc8.x86_64 2023-05-01 >>>> 17:58 UTC x86_64 Cygwin >>>> % cd /tmp; rm -rf mytest mytest.tar >>>> % mkdir mytest >>>> % ln -s b mytest/a >>>> % /bin/tar cf /tmp/mytest.tar mytest >>>> % /bin/tar tvf /tmp/mytest.tar >>>> drwxr-xr-x {edited}/{edited} 0 2023-05-24 13:12 mytest/ >>>> lrwxrwxrwx {edited}/{edited} 0 2023-05-24 13:12 mytest/a -> b >>>> % rm -rf mytest >>>> % /bin/tar xf /tmp/mytest.tar >>>> /bin/tar: mytest/a: Cannot change mode to rwxr-xr-x: Not a directory >>>> /bin/tar: Exiting with failure status due to previous errors >>>> % echo $status >>>> 2 >>>> % >>>> /tmp is under ntfs filesystem, all packages are up to date (e.g. /bin/tar >>>> --version is 1.34). > >>> I recently got this during a package update build, when it decided to tar a >>> build directory, which contained only symlinks to files in the src directory, >>> which the tar did not include, which would have created many dangling symlinks. >>> I fixed the issue by adding -h, --dereference to give chf and tar real files. > > Sorry I failed to make my meaning clear. > The issue may be that tar can not apply file permissions to a symlink target > which does not (yet) exist in the filesystem. > >> I don’t catch this. A symlink, dangling or not, is a normal file. In any case, >> the problem is the >> same if the symlink target is a member in the archive. See for example >> % mkdir -p /tmp/mytest2; cd /tmp/mytest2 >> % tar xf cygwin-devel-3.5.0-0.295.g3bee68248fc8.tar.xz >> /bin/tar: usr/lib/libg.a: Cannot change mode to rwxr-xr-x: Not a directory >> /bin/tar: Exiting with failure status due to previous errors > > What is .../libg.a in the tar file; is it a symlink link or target? > >> I add that my symlinks are default ones, i.e. JUNCTIONS. > > What is your CYGWIN=winsymlinks:... setting: native or nativestrict? > > I have no idea how tar is likely to view or handle a Windows junction, > especially if it has not yet been created! > > The *default* symlinks are *sys*: > > "CYGWIN=winsymlinks:{lnk,native,nativestrict,sys} > If set to just winsymlinks or winsymlinks:lnk, Cygwin creates symlinks as > Windows shortcuts with a special header and the R/O attribute set. > If set to winsymlinks:native or winsymlinks:nativestrict, Cygwin creates > symlinks as native Windows symlinks on filesystems and OS versions supporting them. > The difference between winsymlinks:native and winsymlinks:nativestrict is this: > If the filesystem supports native symlinks and Cygwin fails to create a native > symlink for some reason, it will fall back to creating Cygwin default symlinks > with winsymlinks:native, while with winsymlinks:nativestrict the symlink(2) > system call will immediately fail. > If set to winsymlinks:sys, Cygwin creates symlinks as plain files with the > system attribute, containing a magic cookie followed by the path to which the > link points. > Note that this setting has no effect where Cygwin knows that the filesystem only > supports a creating symlinks in a specific way. > For more information on symbolic links, see the section called “Symbolic links”. Problem seems to be Cygwin 3.5.0 - reinstall Cygwin stable 3.4.6 and the problem goes away! See other thread I just started. -- Take care. Thanks, Brian Inglis Calgary, Alberta, Canada La perfection est atteinte Perfection is achieved non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut -- Antoine de Saint-Exupéry -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple