Em algum lugar da máquina, há uma lista de todos os INODEs.
Esse problema é análogo a um catálogo telefônico. É uma lista de nomes e os números de telefone podem ser usados por mais de uma pessoa. Se você quiser pesquisar por número, para ver quem compartilha esse número, levará um longo tempo até que alguém crie um catálogo telefônico de pesquisa inversa.
É melhor criar um banco de dados de pesquisa do reversor, organizado como o catálogo telefônico de pesquisa inversa.
Esse problema pode ser resolvido com dois scripts (eu não sou muito programador ... você provavelmente riria do código que eu escrevo).
SCRIPT1: crie a tabela de pesquisa inversa.
Faça um "find" em todos os arquivos, e faça uma tabela de duas colunas de INODE, FILENAME. Classifique e combine em uma matriz os FILENAMAS que compartilham o mesmo número INODE.
(você pode criar uma árvore binária e tornar rápido o acesso à sua nova lista).
SCRIPT2: pesquisa sua nova lista reversa e extrai o array FILENAMES.
A única desvantagem real é que você não pode fazer isso em tempo real. O INODES sempre muda e, se você precisar de informações atualizadas, precisará gerar novamente sua tabela.