Microsoft Windows가 잘못된 파일 또는 폴더에서 데이터를 읽음
Summary: 파일 시스템의 동일한 위치에 철자가 같지만 대/소문자가 다른 개체가 있는 경우 Microsoft Windows는 "잘못된" 파일 또는 폴더에서 데이터를 읽을 수 있습니다.
Symptoms
클라이언트 측 관찰 동작:
- "filename"을 열 때 "FILENAME"에서 콘텐츠 수신("잘못된" 파일에서 데이터 읽기)
- "filename"을 반복해서 열면 "filename" 또는 "FILENAME"의 데이터가 임의로 제공됩니다.
- Microsoft Office에서 파일을 "잘못된 폴더"에 저장(대/소문자가 다른 폴더가 있는 경우)
클라이언트에는 다음과 같은 파일 시스템 위치에 철자가 같지만 대소문자가 다른 오브젝트가 있습니다.
..\DIR-NAME\ ..\Dir-name\ ..\dir-name\
..\FILENAME ..\Filename ..\filename
Microsoft 파일 탐색기는 대/소문자가 다른 개체를 다른 파일/폴더로 올바르게 표시합니다.
철자는 같지만 대소문자가 다른 오브젝트가 있는 위치를 여는 동안 생성된 패킷 추적은 두 오브젝트('FILENAME' 및 'filename')를 모두 포함하는 PowerScale의 SMB(Server Message Block) 응답을 표시합니다. 다른 모든 후속 작업은 클라이언트에서 지정한 정확한 철자 및 대/소문자를 사용하여 개체에서 수행됩니다.
Cause
Microsoft Windows는 대소문자를 구분하지 않지만 Windows에서 사용하는 최신 파일 시스템은 대소문자 구분을 지원합니다.
다음 Microsoft 문서를 참조하십시오.
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx
파일, 경로 및 네임스페이스
이름 지정...
명명 규칙
...
대/소문자를 구분하지 마십시오. 예를 들어, 일부 파일 시스템(예: POSIX 호환 파일 시스템)에서는 서로 다른 것으로 간주할 수 있지만 OSCAR, Oscar 및 oscar라는 이름은 동일한 것으로 간주합니다. NTFS는 대/소문자 구분을 위해 POSIX 의미 체계를 지원하지만 이는 기본 동작이 아닙니다.
Resolution
철자는 같지만 대소문자가 다른 개체를 Microsoft Windows에서 액세스하는 동일한 위치에 두지 마십시오.
Additional Information
Windows는 동일한 위치에 'somefile'과 'SOMEFILE'이라는 파일을 만드는 것을 허용하지 않습니다 - Windows는 "이미 존재합니다"오류를 생성합니다.
그러나 파일 시스템은 다음과 같이 다양한 방식으로 대/소문자가 다른 오브젝트로 끝날 수 있습니다.
- POSIX 호환 운영 체제(예: Linux)
에서 대소문자가 다른 오브젝트 생성 - 서로 다른 시간에 존재했던 'SOMEFILE'과 'somefile'을 모두 포함하는 비 Windows 백업(스냅샷, Tivoli 등)을 사용하여 복원합니다.
Microsoft Office에서 작업할 때 파일 저장 프로세스에는 원본 파일을 삭제하고 임시 파일을 원래 파일 이름으로 저장하는 작업이 포함됩니다. 이 프로세스는 철자가 같지만 대/소문자가 다른 폴더 또는 파일이 있는 경우 예기치 않은 결과를 초래할 수 있습니다.