Microsoft® Windows® 기반 운영 체제에서는 대부분의 개체(예: 파일 및 디렉터리) 이름에서 대/소문자를 유지하지만 대/소문자를 구분하지는 않습니다. 즉, 이러한 개체의 이름을 지정할 때 대문자와 소문자를 사용할 수 있지만 Windows에서 대/소문자만을 기준으로 이름을 구분하지 않습니다. 예를 들어 sample.txt와 Sample.txt라는 두 파일을 같은 디렉터리에 저장할 수 없습니다. Windows에서는 파일을 식별하기 위해 두 이름을 동일한 것으로 간주하기 때문입니다.

UNIX 기반 응용 프로그램용 하위 시스템 및 대/소문자 구분

반면 UNIX 기반 운영 체제에서는 완전히 대/소문자를 구분하므로 개체 이름에 사용된 문자의 대/소문자만 다른 경우에도 UNIX 기반 운영 체제를 실행하는 컴퓨터에서 개체 이름을 구분합니다. 따라서 대부분의 UNIX 기반 컴퓨터에서는 sample.txt와 Sample.txt를 같은 디렉터리에 저장할 수 있으며 UNIX 운영 체제에서 파일에 대한 작업을 수행할 때 두 파일을 구분합니다. 예를 들어 rm S*.txt 명령을 실행하면 Sample.txt는 삭제되지만 sample.txt는 삭제되지 않습니다.

일반적으로 UNIX 기반 응용 프로그램용 하위 시스템에서는 일반적인 UNIX 동작을 구현하기 위해 파일 이름을 사용하여 작업할 때 대/소문자를 구분합니다. 따라서 보안 문제가 발생할 수 있으며 특히 Windows의 대/소문자를 구분하지 않는 규칙에 익숙한 Windows 사용자의 경우는 더욱 그렇습니다. 예를 들어 edit.exe의 한 버전이 트로이 목마 유형의 악성 프로그램에 감염된 경우 EDIT.EXE라는 이름으로 edit.exe와 같은 디렉터리에 저장할 수 있습니다. 사용자가 Windows 명령 프롬프트에서 edit를 입력하면 트로이 목마 버전(EDIT.EXE)이 표준 버전 대신 실행될 수 있습니다. 대/소문자 구분을 사용하는 경우 Windows 사용자는 이러한 가능성을 인식하고 있어야 합니다.

대/소문자 구분 기본값 복원

Microsoft Windows Server® 2008 R2, Windows® 7, Windows Server® 2008, Windows Vista®, Windows Server® 2003 및 Windows XP 운영 체제에서 Win32 하위 시스템이 아닌 다른 하위 시스템의 기본 동작은 대/소문자를 유지하지만 대/소문자를 구분하지는 않는 것입니다. 이전 버전의 Windows에서는 이러한 하위 시스템이 기본적으로 완전히 대/소문자를 구분했습니다. 표준 UNIX 동작을 지원하려면 UNIX 기반 응용 프로그램용 하위 시스템을 위한 유틸리티 및 SDK(소프트웨어 개발 키트) 다운로드 패키지의 일부인 기본 유틸리티를 설치할 때 비 Win32 하위 시스템에 대한 기본 Windows Server 2003 및 Windows XP 동작을 변경할 수 있습니다. 대/소문자 구분을 사용하도록 설정한 다음 기본 유틸리티를 제거하면 설치 프로그램에서 비Win32 하위 시스템의 대/소문자를 구분하지 않는 기본 동작을 복원합니다.

대/소문자 구분 설정 변경에 대한 자세한 내용은 파일 및 폴더 이름의 대/소문자 구분 구성(https://go.microsoft.com/fwlink/?LinkID=53334(페이지는 영문일 수 있음))을 참조하십시오.