On 21 March 2011 20:39, André Warnier <a...@ice-sa.com> wrote: > Maybe a guess : under Unix/Linux, "move" (mv) is a "rename", and it is not > the same as "copy + delete original". And a "move" (rename) works as long > as the source and target are inside the same filesystem, but not if they are > on different filesystems. > (copy + delete does work in that case). >
Nice one André! I'd completely missed that. Maybe your C application (of which you do not have the source code), tries > to do a "move" internally ? > > Running strace on the process containing the C code would show that up fairly quickly. You'd see rename(2) calls returning EXDEV. If that's the case, changing the symlink to be at origin or mounting a new filesystem at origin would solve this particular problem - but might cause more chaos if there are other moves going on! - Peter