Unter Linux kann man doch prüfen bei zwei Dateien
1. prüfen ob sie im selben MOUNT hängen
Sollte die Ausgabe gleich sein bzgl. des Mount-Pointes, so kann man einen Schritt weitergehen und
2. prüfen ob es sich um die selbe INODE handelt (zumindest bei ext2/3/4 Dateisystemen).
Sollten 1 und 2 zutreffen handelt es sich um die selbe Datei/das selbe Verzeichnis.
Möglicherweise ist Schritt 2 bei anderen Dateisystem (native Linux-Dateisysteme) gleich.
Auf NTFS/FAT bin ich mir nicht sicher ob und wie man da an eindeutige Dateiinformationen kommt.
Bzgl. Code für NTFS:
Ich habe da Funktionen mit denen man Hardlinks/Junctions usw. anlegen kann und auch das Ziel eines Hardlinks/Junction bestimmen kann.
Ich weiß nicht mehr, wo ich ihn gefunden habe, kann also den ursprünglichen Autor nicht nennen (ich war es jedenfalls nicht).
Dateien im Anhang.