find command line included something that
started with a dash or other special character. The find
program tried to interpret this as a test, action or option, but
didn't recognise it. If you intended it to be a test, check what you
specified against the documentation. If, on the other hand, the
string is the name of a file which has been expanded from a wildcard
(for example because you have a * on the command line),
consider using ./* or just . instead.
find moves into a directory
and finds that the device number and inode are different to what it
expected them to be. If the directory find has moved into is
on an NFS filesystem, it will not issue this message, because
automount frequently mounts new filesystems on directories as
you move into them (that is how it knows you want to use the
filesystem). So, if you do see this message, be wary –
automount may not have been responsible. Consider the
possibility that someone else is manipulating the filesystem while
find is running. Some people might do this in order to mislead
find or persuade it to look at one set of files when it thought
it was looking at another set.
find changes directory and ends up
somewhere it didn't expect to be. This happens in one of two
circumstances. Firstly this happens when “automount” does its thing
on a system where find doesn't know how to determine what the
current set of mounted filesystems is
Secondly, this can happen when the device number of a directory
appears to change during a change of current directory, but
find is moving up the filesystem hierarchy rather than down it.
In order to prevent find wandering off into some unexpected
part of the filesystem, we stop it at this point.
find doesn't know how to figure out the current
list of mount points. Ask for help on bug-findutils@gnu.org.
find changes directory and
discovers that the inode number of that directory once it's got there
is different to the inode number that it obtained when it examined the
directory some time previously. This normally means that while
find has been deep in a directory hierarchy doing something
time consuming, somebody has moved the one of the parent directories
to another location in the same filesystem. This may have been done
maliciously, or may not. In any case, find stops at this point
in order to avoid traversing parts of the filesystem that it wasn't
intended to. You can use ls -li or find /path -inum
12345 -o -inum 67893 to find out more about what has happened.
findutils code yourself,
you should keep your copy of the build tree around. The likely
explanation is that your system has a buggy implementation of
fnmatch that looks enough like the GNU version to fool
configure, but which doesn't work properly.
-exec action or a
something similar (-ok and so forth) but the system has run out
of free process slots. This is either because the system is very busy
and the system has reached its maximum process limit, or because you
have a resource limit in place and you've reached it. Check the
system for runaway processes (if ps still works). Some process
slots are normally reserved for use by root.
-exec or similar was killed
with a fatal signal. This is just an advisory message.