cygwin: ls -i가 UNC 경로에 있는 파일에 대해 잘못된 inode 번호를 보고함

cygwin: ls -i가 UNC 경로에 있는 파일에 대해 잘못된 inode 번호를 보고함

버전에 따라 변경되지 않은 파일을 저장하기 위해 하드 링크를 사용하는 QNAP NAS에 다중 버전 백업이 있습니다.

백업 대상은 eSATA를 통해 QNAP에 연결된 외부 EXT4 디스크입니다.

ls -issh를 통해 QNAP 쉘을 사용하여 하드 링크된 파일의 inode를 나열하면 각 하드 링크된 파일에 대해 동일한 inode 번호를 얻습니다. 예를 들어 특정 파일 A의 경우 11961450(0xB6846A)입니다.

Windows 시스템에서 cygwin 쉘을 사용하여 동일한 작업을 수행하고 SMB를 통해 원격 파일 시스템에 액세스하면 각 하드 링크 파일이 ls -i서로 다른 inode를 보고하고 inode 번호가 매우 큽니다. 동일한 파일에 대해 AI는 한 디렉터리에서 inode 번호 10167322761950234564(0x8D19962EE6C987C4)를 가져오고 다른 디렉터리에서는 inode 번호 6110607626948733827(0x54CD3D42E6126B83)을 가져옵니다.

그런데, 내부 QNAP 디스크에서 파일 inode를 확인할 때 SSH를 통해 확인하든 Cygwin을 통해 QNAP 셸에서 확인하든 항상 올바르게 보고됩니다.

문제는 cygwin을 사용할 때 이 불일치를 해결하고 올바른 inode 번호를 얻을 수 있는 방법이 있습니까?입니다. 그리고 누구의 책임입니까? SMB 서버(QNAP), SMB 클라이언트(Windows), Cygwin 등?

관련 정보