NTFS 볼륨의 디스크 공간 문제를 찾고 고치는 방법


이 문서의 Microsoft Windows 2000 버전에 대한 내용은 다음 기술 자료 문서를 참조하십시오.
303079 NTFS 볼륨의 디스크 공간 문제를 찾고 고치는 방법

요약


이 문서에서는 NTFS 파일 시스템의 디스크 공간 할당을 검사하여 잘못된 파일과 폴더를 찾거나 Windows Server 2003 기반 컴퓨터에서 볼륨 손상을 찾는 방법을 설명합니다.

NTFS에서 지원되는 여러 가지 기능에 의해 사용 가능한 디스크 공간을 손실된 것으로 보고되거나 잘못 보고될 수도 있습니다. 예를 들어 NTFS 볼륨이 이유 없이 갑자기 가득 찼는데 관리자가 그 원인을 알 수 없거나 잘못된 폴더와 파일을 찾을 수 없는 경우가 있습니다. 이 문제는 아주 큰 파일이나 아주 많은 수의 소규모 파일이 몰래 복사된 NTFS 볼륨에 악의적으로 또는 무단으로 액세스할 경우에 발생할 수 있습니다. 이러한 파일에는 NTFS 권한이 제거되었거나 제한되어 있습니다. 이 문제는 컴퓨터 오류나 정전이 발생하여 볼륨이 손상된 경우에도 발생할 수 있습니다.

NTFS 볼륨의 디스크 공간 할당은 다음 이유 중 하나로 인해 잘못 보고될 수 있습니다.
  • NTFS 볼륨의 클러스터 크기가 저장할 평균 크기의 파일에 비해 너무 큽니다.
  • Windows 탐색기나 Windows 명령 프롬프트를 사용할 때 파일 속성, NTFS 권한 등으로 인해 파일 또는 폴더를 표시하거나 액세스할 수 없습니다.
  • 폴더 경로가 255자를 초과합니다.
  • 폴더나 파일에 잘못된 파일 이름이나 예약된 파일 이름이 포함되어 있습니다.
  • 마스터 파일 테이블 같은 NTFS 메타파일이 크기가 증가되고 할당을 해제할 수 없습니다.
  • 파일이나 폴더에 대체 데이터 스트림이 포함되어 있습니다.
  • NTFS 손상으로 인해 사용 가능한 공간을 사용 중인 것으로 보고합니다.
  • 그 밖의 다른 NTFS 기능으로 인해 파일 할당 혼동이 발생할 수 있습니다.
맨 위로

추가 정보


다음 정보는 NTFS 볼륨이 디스크 공간을 사용하는 방법을 최적화, 복구 또는 이해하는 데 도움이 될 수 있습니다.

클러스터 크기가 너무 큰 경우

디스크 공간은 마스터 파일 테이블(MFT), 폴더 색인 등과 같은 내부 NTFS 메타파일이 포함된 파일과 폴더에 의해서만 소모될 수 있습니다 이러한 파일과 폴더는 여러 개의 클러스터를 사용하여 모든 파일 공간 할당을 소모합니다. 클러스터는 연속 섹터의 집합을 말합니다. 클러스터 크기는 볼륨을 포맷할 때 파티션 크기에 의해서 결정됩니다.
클러스터에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
140365 FAT 및 NTFS의 기본 클러스터 크기
파일을 만드는 경우 초기 파일 크기에 따라 최소 크기의 단일 클러스터 디스크 공간이 소모됩니다. 나중에 파일에 데이터를 추가하면 NTFS가 클러스터 크기의 배수로 파일의 할당을 늘립니다.

현재 클러스터 크기와 볼륨 통계를 확인하려면 명령 프롬프트에서 읽기 전용 chkdsk 명령을 실행하십시오. 이렇게 하려면 다음 단계를 수행하십시오.
  1. 시작, 실행을 차례로 누르고 cmd를 입력한 다음 확인을 누릅니다.
  2. 명령 프롬프트에서 다음 명령을 입력합니다.
    chkdsk
    d:
    여기서 d: 는 검사할 드라이브 문자입니다.
  3. 확인을 누릅니다.
  4. 출력된 결과를 확인합니다. 예는 다음과 같습니다.
    4096543 KB total disk space. <--- Total formatted disk capacity. 
    2906360 KB in 19901 files. <--- Space used by user file data.
    6344 KB in 1301 indexes. <--- Space used by NTFS indexes.
    0 KB in bad sectors. <--- Space lost to bad sectors.
    49379 KB in use by the system. <--- Includes MFT and other NTFS metafiles.
    22544 KB occupied by the log file. <--- NTFS Log file - (Can be adjusted using chkdsk /L:size)
    1134460 KB available on disk. <--- Available FREE disk space

    4096 bytes in each allocation unit. <--- Cluster Size. (4K)
    1024135 total allocation units on disk. <--- Total Clusters on disk.
    283615 allocation units available on disk. <--- Available free clusters.
    참고: 정확한 바이트 크기를 알려면 KB 단위로 보고된 각 값에 1024를 곱하십시오. 예를 들어 2906360 x 1024 = 2,976,112,640 바이트입니다.
이 정보를 사용하여 사용 중인 디스크 공간과 기본 클러스터 크기를 확인할 수 있습니다. 이 크기가 최적의 클러스터 크기인지 확인하려면 디스크에서 낭비되고 있는 공간을 확인해야 합니다. 이렇게 하려면 다음 단계를 수행하십시오.
  1. 시작, 내 컴퓨터를 차례로 누른 다음 해당 볼륨의 드라이브 문자(예: D)를 두 번 눌러 볼륨을 열고 루트를 포함하는 폴더와 파일을 표시합니다.
  2. 파일이나 폴더를 누른 다음 편집 메뉴에서 모두 선택을 누릅니다.
  3. 모든 파일과 폴더가 선택된 상태에서 파일이나 폴더를 마우스 오른쪽 단추로 누르고 속성을 누른 다음 일반 탭을 누릅니다.

    일반 탭에는 전체 볼륨에 있는 파일과 폴더의 총 수를 표시되고 크기디스크 할당 크기 등 두 가지 파일 크기 통계를 제공합니다.
볼륨에 포함된 파일이나 폴더에 대해 NTFS 압축을 사용하지 않을 경우 클러스터 크기가 필요 이상 크기 때문에 크기 값과 디스크 할당 크기 값 사이의 차이가 낭비되는 공간을 나타낼 수 있습니다. 디스크 할당 크기 값이 가능하면 크기 값에 근접하도록 더 작은 클러스터 크기를 사용할 수 있습니다. 디스크 할당 크기와 크기 값 사이의 차이가 크다는 것은 기본 클러스터 크기가 볼륨에 저장할 평균 파일 크기에 비해 너무 크다는 것을 나타냅니다.

사용 중인 클러스터 크기를 변경하려면 볼륨을 다시 포맷해야 합니다. 이렇게 하려면 볼륨을 백업한 다음 format 명령과 적절할 할당을 지정하는 /a 스위치를 사용하여 볼륨을 다시 포맷합니다. 예를 들어
format D: /a:2048
명령을 실행합니다. 이 예제는 2KB 클러스터 크기를 사용합니다.

참고: 또한 NTFS 압축을 사용하여 잘못된 클러스터 크기로 인해 손실된 공간을 다시 확보할 수 있습니다. 그러나 이 경우 성능이 저하될 수 있습니다.

맨 위로

파일 특성 또는 NTFS 권한

Windows 탐색기와 디렉터리 목록 명령 dir /a /s는 모두 사용자가 액세스 권한을 가진 파일과 폴더에 대해서만 전체 파일과 폴더 통계를 표시합니다. 기본적으로 숨김 파일과 보호된 운영 체제 파일은 제외됩니다. 이 문제로 인해 Windows 탐색기 또는 dir 명령이 정확하지 않은 파일과 폴더의 총 수 및 크기 통계를 표시할 수 있습니다.

이러한 종류의 파일을 전체 통계에 포함시키려면 다음과 같은 방법으로 폴더 옵션을 변경하십시오. 이렇게 하려면 다음 단계를 수행하십시오.
  1. 시작, 내 컴퓨터를 차례로 누른 다음 볼륨의 드라이브 문자(예: D)를 두 번 누릅니다. 이렇게 하면 볼륨이 열리고 루트가 포함된 폴더와 파일이 표시됩니다.
  2. 도구 메뉴에서 폴더 옵션을 누른 다음 보기 탭을 누릅니다.
  3. 숨김 파일 및 폴더 표시 확인란을 선택한 다음 보호된 운영 체제 파일 숨기기 확인란 선택을 취소합니다.
  4. 경고 메시지가 나타나면 를 누른 다음 적용 단추를 누릅니다.
이렇게 하면 Windows 탐색기와 dir /a /s 명령이 사용자가 액세스 권한을 가진 볼륨에 포함된 모든 파일과 폴더를 표시할 수 있습니다.

액세스할 수 없는 폴더와 파일을 확인하려면 다음 단계를 수행하십시오.
  1. 명령 프롬프트에서 dir /a /s 명령의 출력으로부터 텍스트 파일을 만듭니다.

    예는 다음과 같습니다. 명령 프롬프트에서 다음 명령을 입력합니다.
    dir d: /a /s >c:\d-dir.txt
  2. 백업 또는 복원 마법사를 시작합니다. 이렇게 하려면 다음과 같이 합니다.
    1. 시작, 실행을 차례로 누르고 ntbackup을 입력한 다음 확인을 누릅니다.
    2. 고급 모드를 누릅니다.
  3. 도구 메뉴에서 옵션을 누르고 백업 로그 탭을 누르고 자세히를 누른 다음 확인을 누릅니다.
  4. 백업 유틸리티에서 백업 탭을 누른 다음 영향을 받는 전체 볼륨(예: D:)의 확인란을 선택한 다음 백업 시작을 누릅니다.
  5. 백업이 완료되면 백업 보고서를 열고 NTBackup 로그 출력의 폴더를 1단계에서 저장한 d-dir.txt 출력과 비교합니다.
백업은 모든 파일에 액세스할 수 있기 때문에 보고서에는 Windows 탐색기와 dir 명령에서 표시되지 않은 폴더와 파일이 포함되어 있을 수 있습니다. Windows 탐색기를 사용하여 액세스할 수 없는 큰 파일이나 폴더를 찾을 때 볼륨을 백업하지 않고 NTBackup 인터페이스를 사용하여 볼륨을 쉽게 찾을 수 있습니다.

액세스할 수 없는 파일을 찾은 후 Windows 탐색기에서 파일 또는 폴더 속성을 확인하면서 보안 탭을 사용하여 권한을 추가하거나 변경할 수 있습니다. 기본적으로 시스템 볼륨 정보 폴더에는 액세스할 수 없습니다. dir /a /s 명령에서 폴더를 포함하도록 올바른 권한을 추가해야 합니다.

참고:보안 탭이 없는 폴더나 파일이 있을 수 있습니다. 또는 영향을 받는 폴더와 파일에 권한을 다시 지정하지 못할 수 있습니다. 액세스하려고 하면 다음 오류 메시지가 나타날 수 있습니다.

D:\folder_name\을(를) 액세스할 수 없습니다.

액세스가 거부되었습니다.
이러한 폴더가 있을 경우 Microsoft 고객기술지원부에 도움을 요청하십시오. 아래 Microsoft 웹 사이트에서 해당 파일을 직접 다운로드하십시오. 맨 위로

잘못된 파일 이름

잘못된 파일 이름이나 예약된 파일 이름이 포함되어 있는 폴더나 파일도 파일 및 폴더 통계에서 제외될 수 있습니다. NTFS에서는 맨 앞 또는 맨 뒤에 공백이 있는 폴더나 파일이 허용되지만 Win32 하위 시스템에서는 이러한 파일은 유효하지 않습니다. 따라서 Windows 탐색기나 명령 프롬프트에서 이러한 폴더나 파일을 안정적으로 작업할 수 없습니다.
자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
120716 Windows에서 예약된 이름을 가진 파일을 제거하는 방법

이러한 파일이나 폴더 이름을 바꾸거나 삭제하지 못할 수 있습니다. 이름을 바꾸거나 삭제하려고 하면 다음 오류 메시지가 나타날 수 있습니다.
파일 또는 폴더 이름 바꾸기 오류

파일의 이름을 변경할 수 없습니다. 원본 파일이나 디스크에서 읽을 수 없습니다.
또는
파일 또는 폴더 삭제 오류


파일을 삭제할 수 없습니다. 원본 파일이나 디스크에서 읽을 수 없습니다.
삭제하거나 이름을 바꿀 수 없는 폴더 또는 파일이 있는 경우 Microsoft 고객기술지원부에 문의하십시오. 아래 Microsoft 웹 사이트에서 해당 파일을 직접 다운로드하십시오. 맨 위로

NTFS 마스터 파일 테이블(MFT) 확장

NTFS 볼륨을 만들고 포맷하면 NTFS 메타파일이 만들어집니다. 이러한 메타파일 중 하나를 마스터 파일 테이블(MFT)이라고 합니다. 이 파일은 처음 만들어졌을 때는 아주 작지만(약 16KB) 해당 볼륨에 파일과 폴더가 만들어지면 커집니다. 파일이 만들어지면 MFT에 FRS(파일 레코드 세그먼트)로 입력됩니다. FRS는 항상 1024바이트(1KB)입니다. 볼륨에 파일을 추가하면 MFT가 증가됩니다. 그러나 파일을 삭제하면 관련 FRS가 재사용을 위해 해제된 것으로 표시되지만 전체 FRS와 관련 MFT 할당은 그대로 남아 있습니다. 이 때문에 많은 수의 파일을 삭제해도 MFT에서 사용된 공간을 되찾을 수 없습니다.

MFT의 정확한 크기를 확인하려면 기본 제공 디스크 조각 모음을 사용하여 볼륨을 분석하십시오. 결과 보고서는 MFT의 조각 크기와 수에 대한 자세한 정보를 제공합니다.

예를 들어:
Master File Table (MFT) fragmentation
Total MFT size = 26,203 KB
MFT record count = 21,444
Percent MFT in use = 81 %
Total MFT fragments = 4
그러나, 전체 NTFS가 사용 중인 공간(오버헤드)가 어느 정도인지에 대한 자세한 내용을 알려면 chkdsk.exe 명령을 실행한 다음 출력에서 다음 줄을 보십시오.
In use by system. 
현재, 타사 조각 모음 도구만이 사용되지 않은 MFT FRS 레코드를 통합하고 사용되지 않는 MFT 할당 공간을 다시 확보합니다.

맨 위로

대체 데이터 스트림

NTFS에서는 파일과 폴더가 대체 데이터 스트림을 포함할 수 있습니다. 이 기능을 사용하면 여러 데이터 할당을 단일 파일이나 폴더에 연결할 수 있습니다. 파일과 폴더에 대한 대체 데이터 스트림 사용에는 다음과 같은 제한이 있습니다.
  • Windows 탐색기와 dir 명령은 대체 데이터 스트림의 데이터를 파일 크기 또는 볼륨 통계의 일부로 보고하지 않습니다. 대신, 기본 데이터 스트림의 전체 바이트만 표시합니다.
  • chkdsk의 출력은 대체 데이터 스트림을 포함하여 사용자의 데이터 파일에서 사용된 공간을 정확하게 보고합니다.
  • 디스크 할당량은 사용자 데이터 파일의 일부인 모든 데이터 스트림 할당을 정확하게 추적하고 보고합니다.
  • NTBackup은 백업 로그 보고서에서 백업된 바이트 수를 보고합니다. 그러나, 대체 데이터 스트림이 포함되어 있는 파일을 표시하거나 대체 스트림에 데이터를 포함하는 파일의 정확한 파일 크기를 표시하지는 않습니다.
맨 위로

NTFS 파일 시스템 손상

아주 드물기는 하지만 NTFS 메타파일 $MFT 또는 $BITMAP 메타파일이 손상되어 그 결과 디스크 공간이 손실될 수 있습니다. 볼륨에 대해 chkdsk /f 명령을 실행하여 이 문제를 식별하고 해결할 수 있습니다. chkdsk가 완료될 즈음에 $BITMAP을 조정해야 하는 경우 다음 메시지가 나타납니다.
마스터 파일 테이블(MFT)에 있는 비트맵 특성의 오류를 고칩니다. CHKDSK가 빈 공간이 볼륨 비트맵에서 할당된 공간으로 표시된 것을 발견했습니다. Windows에서 파일 시스템을 수정했습니다.
맨 위로

파일 할당 혼동을 발생시키는 그 밖의 다른 NTFS 기능

NTFS에서는 또한 하드 링크와 재분석 지점도 지원하는데, 이를 사용하면 볼륨 탑재 지점과 디렉터리 연결을 만들 수 있습니다. 이러한 추가 NTFS 기능을 사용하면 실제 볼륨에서 소비되고 있는 공간의 양을 확인할 때 혼동이 발생할 수 있습니다.

하드 링크는 해당 볼륨에서 파일 데이터가 있는 위치에 관계 없이 파일에 대한 디렉터리 항목을 말합니다. 모든 파일에는 최소 하나 이상의 하드 링크가 있습니다. NTFS 볼륨에서는 각 파일이 하드 링크를 여러 개 가질 수 있으므로, 한 파일을 여러 폴더에 표시하거나 같은 폴더에 다른 이름으로 여러 번 표시할 수 있습니다. 모든 링크가 같은 파일을 참조하므로 프로그램이 링크 중 아무 것이나 열고 파일을 수정할 수 있습니다. 파일에 대한 링크를 모두 삭제한 후에야 파일이 파일 시스템에서 삭제됩니다. 하드 링크를 만들면 프로그램이 다른 파일 이름과 같은 방법으로 이 링크를 사용할 수 있습니다.

참고: 링크된 파일이 모두 같은 데이터를 공유하지만 실제로는 다른 디스크 공간 양을 사용하더라도 Windows 탐색기와 명령 프롬프트에서 모두 크기가 같은 것으로 표시합니다.

볼륨 탑재 지점과 디렉터리 연결을 사용하면 NTFS 볼륨에 있는 빈 폴더가 다른 볼륨에 있는 루트나 하위 폴더를 가리키게 할 수 있습니다. Windows 탐색기와 dir /s 명령이 재분석 지점을 따라서 대상 볼륨에 있는 파일과 폴더 수를 계산한 다음 호스트 볼륨의 통계에 이들을 포함시킵니다. 이 때문에 사용자가 호스트 볼륨에서 실제 사용량보다 많은 공간이 사용되고 있다고 믿을 수 있습니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
205524 NTFS 연결 지점을 만들고 조작하는 방법


요약하면 chkdsk 출력, NTBackup GUI 또는 백업 로그 및 디스크 할당량 보기를 통해 볼륨에서 사용되는 디스크 공간을 확인할 수 있습니다. 그러나 Windows 탐색기와 dir 명령을 이런 목적으로 사용할 때 몇 가지 제한과 단점이 있습니다.

맨 위로



Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.