I have a multiple-version backup, that uses hard links for files that have not changed from version to version, in my QNAP NAS.
The backup target is an external EXT4 disk connected via eSATA to the QNAP.
When I list the inode of the a hard linked file with
ls -i, by using the QNAP shell via ssh, I get the same inode number for each of the hard linked files, e.g. for a specific file A it is 11961450 (0xB6846A).
When I use cygwin shell in my windows machine to do the same thing, accessing the remote filesystem via SMB, the inode reported from
ls -i is different for each hard linked file and the inode numbers are weirdly huge. For the same file A I get an inode number 10167322761950234564 (0x8D19962EE6C987C4) in one directory and 6110607626948733827 (0x54CD3D42E6126B83) in another.
By the way, when I check the inodes of files in the internal QNAP disks they are always reported correctly no matter if I check them from the QNAP shell via SSH or via Cygwin.
The question is, is there a way to work around this inconsistency and get the correct inode number when using cygwin? Also, who is to blame? SMB server (in QNAP), SMB client (in Windows), Cygwin or something else?