Actions
Backport #9567
closedFileUtils.mv cannot move to an NFS directory when the source contains a relative symlink
Status:
Closed
Assignee:
-
Description
root@local-gravityapple:/home/www# mkdir /tmp/testing root@local-gravityapple:/home/www# cd /tmp/testing root@local-gravityapple:/tmp/testing# echo "file" > file root@local-gravityapple:/tmp/testing# ln -s file link root@local-gravityapple:/tmp/testing# ls -l total 4 -rw-r--r-- 1 root root 5 Feb 25 19:01 file lrwxrwxrwx 1 root root 4 Feb 25 19:01 link -> file root@local-gravityapple:/tmp/testing# cd - /home/www root@local-gravityapple:/home/www# ruby -rfileutils -e 'FileUtils.mv("/tmp/testing", "/home/www")' /usr/lib/ruby/1.9.1/fileutils.rb:1379:in `utime': No such file or directory - /home/www/testing/link (Errno::ENOENT) from /usr/lib/ruby/1.9.1/fileutils.rb:1379:in `copy_metadata' from /usr/lib/ruby/1.9.1/fileutils.rb:466:in `block in copy_entry' from /usr/lib/ruby/1.9.1/fileutils.rb:1433:in `preorder_traverse' from /usr/lib/ruby/1.9.1/fileutils.rb:462:in `copy_entry' from /usr/lib/ruby/1.9.1/fileutils.rb:521:in `rescue in block in mv' from /usr/lib/ruby/1.9.1/fileutils.rb:518:in `block in mv' from /usr/lib/ruby/1.9.1/fileutils.rb:1515:in `block in fu_each_src_dest' from /usr/lib/ruby/1.9.1/fileutils.rb:1529:in `fu_each_src_dest0' from /usr/lib/ruby/1.9.1/fileutils.rb:1513:in `fu_each_src_dest' from /usr/lib/ruby/1.9.1/fileutils.rb:508:in `mv' from -e:1:in `' root@local-gravityapple:/home/www# ruby --version ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] root@local-gravityapple:/home/www# cat /etc/debian_version 7.0
If the same exercise is done, but the link
symlink is made as using the absolute path (/tmp/testing/file
) then FileUtils.mv
succeeds. This only seems to affect NFS mounts. Moving to a non-NFS mounted location with the relative link works.
It seems that it is copying the link first and then failing while trying to resolve the copied link. The destination location contains the symlink:
root@local-gravityapple:/home/www# ls -l testing/ total 4 lrwxrwxrwx 1 504 dialout 4 Feb 25 19:02 link -> file
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0Like0