From: "usa (Usaku NAKAMURA)" Date: 2013-03-19T20:14:14+09:00 Subject: [ruby-core:53542] [ruby-trunk - Bug #8109] FileUtils.mv fails across devices on Windows Issue #8109 has been updated by usa (Usaku NAKAMURA). How reproduce this? I cannot reproduce on Windows 7 (x64). (The target volume is FAT32 on USB memory.) Need network drive, or others? ---------------------------------------- Bug #8109: FileUtils.mv fails across devices on Windows https://bugs.ruby-lang.org/issues/8109#change-37731 Author: mitchellh (Mitchell Hashimoto) Status: Open Priority: Normal Assignee: Category: Target version: ruby -v: 2.0.0-p0 Reproduction code: https://gist.github.com/luislavena/5179408 The issue is that Ruby is using MoveFile under the covers: http://msdn.microsoft.com/en-us/library/windows/desktop/aa365239(v=vs.85).aspx Quote directly from the MoveFile docs: "The one caveat is that the MoveFile function will fail on directory moves when the destination is on a different volume." Instead, MoveFileEx should be used with the MOVEFILE_COPY_ALLOWED flag. This function has existed since XP, and since Ruby 1.9 is XP+, we can safely switch to this: http://msdn.microsoft.com/en-us/library/windows/desktop/aa365240(v=vs.85).aspx The MoveFileEx call with the proper flag will just do the right thing. -- http://bugs.ruby-lang.org/