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: ar 'unable to rename... Invalid cross-device link'


(I hope this gets through (and only once), gmane has been misbehaving all day...)

Corinna Vinschen wrote:
On Feb 7 11:55, Corinna Vinschen wrote:
On Feb 6 16:38, Matthew Woehlke wrote:
...anyone have any guesses why rename() can't rename files in the same directory, if the directory is an NFS mount? This causes 'ar' to fail with the error:

ar: unable to rename 'libcloudobj.a' reason: Invalid cross-device link

I see this in strace with both 'ar' and 'mv':

46 371094 [main] ar 2588 rename: -1 = rename (h:\<...path...>\src\objects\stWBl4pj, h:\<...path...>\src\objects\libcloudobj.a)

This seems to happen when the file already exists, but rename() only fails on NFS mounts (not local drives). Is this a problem with 'ar', or Cygwin's rename()?
Since you're one of the few running NFS, you should also debug the
situation further.  Apparently the Cygwin rename function fails, but
from your one-liner strace snippet there's no hint at all what happens.
The error should have been mentioned a couple of lines before.  You
should also mention if you use a release version of Cygwin or a
developer snapshot.  You know http://cygwin.com/problems.html, don't
you?

I just installed SFU NFS for testing and, here it comes:


"I can not reproduce rename failing on an NFS share."

Maybe it's something with your permissions.
http://cygwin.com/acronyms/#SHTDI2(*)

Thanks for trying. Sorry about forgetting the version info, although (and I forgot to mention this too, more apologies...) 'ren' in cmd.com also fails, which is why I am pretty sure the problem is that for some unknown reason, rename() (meaning Windows' API) fails on NFS if the target already exists, at least under whatever combinations of permissions I have... with error 17 (ERROR_NOT_SAME_DEVICE) of all things (which Cygwin translates to 18=EXDEV). I think the real question is 'should ar and/or Cygwin work around this apparent Windows bug'?


D'oh! And I have more information... it only fails on Win2k3 (which means SUA, not SFU). I just tried on my XP machine and 'ar' succeeds.

getfacl doesn't have much to say:
$ getfacl.exe .
# file: .
# owner: mwoehlke
# group: None
user::rwx
group::r-x
other:r-x
mask:rwx

Cygwin version is 1.5.24(0.156/4/2) (are any of the other package versions really relevant?)

--
Matthew
We interrupt this e-mail to bring you a lame signature attempting to be witty.


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


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