find: Hard Links

 
 2.3.2 Hard Links
 ----------------
 
 Hard links allow more than one name to refer to the same file on a file
 system, i.e., to the same inode.  To find all the names which refer to
 the same file as NAME, use '-samefile NAME'.
 
  -- Test: -samefile NAME
      True if the file is a hard link to the same inode as NAME.  This
      implies that NAME and the file reside on the same file system,
      i.e., they have the same device number.
 
      Unless the '-L' option is also given to follow symbolic links, one
      may confine the search to one file system by using the '-xdev'
      option.  This is useful because hard links cannot point outside a
      single file system, so this can cut down on needless searching.
 
      If the '-L' option is in effect, then dereferencing of symbolic
      links applies both to the NAME argument of the '-samefile' primary
      and to each file examined during the traversal of the directory
      hierarchy.  Therefore, 'find -L -samefile NAME' will find both hard
      links and symbolic links pointing to the file referenced by NAME.
 
    'find' also allows searching for files by inode number.
 
    This can occasionally be useful in diagnosing problems with file
 systems; for example, 'fsck' and 'lsof' tend to print inode numbers.
 Inode numbers also occasionally turn up in log messages for some types
 of software.
 
    You can learn a file's inode number and the number of links to it by
 running 'ls -li', 'stat' or 'find -ls'.
 
    You can search for hard links to inode number NUM by using '-inum
 NUM'.  If there are any file system mount points below the directory
 where you are starting the search, use the '-xdev' option unless you are
 also using the '-L' option.  Using '-xdev' saves needless searching,
 since hard links to a file must be on the same file system.  ⇒
 Filesystems.
 
  -- Test: -inum n
      True if the file has inode number N.  The '+' and '-' qualifiers
      also work, though these are rarely useful.
 
      Please note that the '-inum' primary simply compares the inode
      number against the given N.  This means that a search for a certain
      inode number in several file systems may return several files with
      that inode number, but as each file system has its own device
      number, those files are not necessarily hard links to the same
      file.
 
      Therefore, it is much of the time easier to use '-samefile' rather
      than this option.
 
    'find' also allows searching for files that have a certain number of
 links, with '-links'.
 
    A directory normally has at least two hard links: the entry named in
 its parent directory, and the '.' entry inside of the directory.  If a
 directory has subdirectories, each of those also has a hard link called
 '..' to its parent directory.
 
    The '.' and '..' directory entries are not normally searched unless
 they are mentioned on the 'find' command line.
 
  -- Test: -links n
      File has N hard links.
 
  -- Test: -links +n
      File has more than N hard links.
 
  -- Test: -links -n
      File has fewer than N hard links.