외장 하드 드라이브의 섹터 크기를 어떻게 확인할 수 있습니까?


15

하드 드라이브는하는 512 바이트 4096 바이트 섹터 크기에서 전환 및 Windows XP가 (예 : 추가 소프트웨어없이이 새로운 드라이브를 지원하지 않는 것 같습니다 웨스턴 디지털에서 WDalign를 )

내 질문은 : 이것이 외장 하드 드라이브에 어떤 영향을 미칩니 까? 1TB USB 외장 드라이브를 구매할 예정이며 Windows 7 및 XP 컴퓨터에 연결됩니다. 외장 하드 드라이브의 섹터 크기를 알 수있는 쉬운 방법이 있습니까?


1
OS에서보고 한 하드 드라이브 섹터 크기! = 파일 시스템 할당 단위 (일명 "클러스터") 크기입니다. 예를 들어 NTFS는 4kB 크기의 할당 단위를 사용하지만 오래된 HDD의 경우 8 개의 HDD 섹터로 구성됩니다. en.wikipedia.org/wiki/Allocation_unit
sigint

2
더 많은 정보가 있다고 생각합니다. 스택 오버플로에 대한 대답 은 Windows에서 섹터 크기를 어떻게 결정할 수 있습니까 ? 제안은 명령을 사용하는이fsutil fsinfo ntfsinfo <volume pathname>
비이성적 인 존

답변:


12

wmic partition get BlockSize, StartingOffset, Name, IndexWindows 명령 프롬프트에서 실행하십시오 . 결과는 다음과 같습니다.

BlockSize  Index  Name                   StartingOffset
512        0      Disk #0, Partition #0  1048576
512        1      Disk #0, Partition #1  105906176
512        0      Disk #1, Partition #0  32256

여기서 블록 크기는 드라이브의 섹터 크기입니다. 불행히도 드라이브 문자를 나열하지 않습니다.

또한 기사를 이해 하면서 드라이브는 내부적으로 4kb 섹터를 사용하더라도 512 바이트 섹터를 가지고 있음을 나열합니다. 따라서 드라이브의 사양서를 얻는 것이 유일한 방법 일 수 있습니다.


1
HDD는 실제로 OS에 블록 크기를 잘못보고 할 수 있습니다. 그러나 4K 섹터를 지원하는 Win7 에서이 작업을 시도하면 올바른 블록 크기를보고해야합니다. 적어도 그런 식으로 외장 하드 드라이브에 "WDAlign없이 XP에서는 사용하지 마십시오"스티커를 붙일 수 있습니다. 4k 섹터 드라이브를 가진 모든 동료 주석가들은 당신의 경험을 들으십시오. 감사!
sigint

2
이것이 실제로 작동하지 않는 이유는 스택 오버플로에 대한이 답변 에서 설명 합니다. 해당 wmic명령에 의해보고 된 블록 크기 는 분명히 논리 섹터 크기이며 드라이브 의 물리 섹터 크기 와 일치하지 않을 수 있습니다. SO에 대한 제안은 fsutil명령 을 사용하는 것이 었습니다 .
불합리한 John

이 답변은 잘못되었습니다. wmic partition드라이브가 아닌 파티션에 대해 알려주며, 드라이브가 논리 섹터 당 4096 바이트로 호스트 컴퓨터에 제공되거나 드라이브에 물리 섹터 당 4096 바이트가있는 경우에도 512를 반환합니다.
balazer

8

방금 Windows XP 상자에서 WMIC로 이것을 확인했습니다. 이것은 쿼리입니다.

C:\>wmic DISKDRIVE get bytespersector, caption  
BytesPerSector  Caption  
512             WDC WD1600AAJS-60M0A0  
4096            TrekStor HDD USB Device

최신 도시바 외장 디스크는 4096 바이트로보고됩니다.


wmic DISKDRIVE get bytespersector호스트 컴퓨터에 표시되는 논리 섹터 크기를 알려줍니다. 실제 섹터 크기는 다를 수 있습니다.
balazer

2

나는 당신이 리눅스를 사용하지 않는다는 것을 알고 있지만, 단지 기록을 위해 :

smartctl -i /dev/...

Sector Size:      512 bytes logical/physical

1

명령 프롬프트를 통해이를 수행 할 수 있습니다. CMD (열어 Windows+ r다음 cmd를 입력)와 chkdsk 실행의 드라이브 문자를 : chkdsk c:그것은로 표시됩니다 x bytes in each allocation unit.

대체 텍스트


2
나는 이것이 디스크 자체가 아니라 파일 시스템에 대해 이야기한다고 생각합니다.
Joey

이것은 내가 원하는 정보를 얻는 데 도움이되었습니다. 감사합니다.
dimitarvp

블록 크기를 얻을 수있는 또 다른 방법은 빈 텍스트 파일을 마우스 오른쪽 버튼으로 클릭, 속성보기 저장하고, (4K에 일반적으로 디폴트 창) 값은 "디스크의 크기를"주의
nothingisnecessary

할당 단위는 섹터 크기와 관련이 없으며 할당 단위는 X 섹터를 포함해야합니다. MFT / FAT가 장치에 저장하려는 실제 데이터에 비해 너무 크지 않도록 Windows 파일 시스템에서 지원 하는 클러스터 크기입니다. 512 바이트 섹터 디스크에 4k 할당 단위가 표시됩니다.
LawrenceC

1

Windows XP는 물리적 섹터 당 4096 바이트의 최신 드라이브에서 잘 작동합니다. 주요 문제는 파티션이 물리 섹터와 정렬되지 않은 경우 물리 섹터 당 4096 바이트 및 논리 섹터 당 512 바이트 (512 바이트 에뮬레이션 또는 "512e")의 드라이브가 최적의 성능을 발휘하지 못한다는 것입니다. Windows XP의 기본 제공 파티션 도구는 이러한 최신 드라이브에 대한 적절한 정렬을 수행하지 않습니다. 올바른 정렬로 드라이브를 분할하려면 최신 운영 체제에서 또는 최신 타사 도구 또는 하드 드라이브 공급 업체에서 제공 한 도구를 사용하여 분할하십시오. 드라이브가 물리 섹터 당 512 또는 4096 바이트를 사용하는지 여부에 관계없이 권장됩니다.

msinfo32 (Windows XP 이상)를 사용하여 기존 파티션의 정렬을 확인할 수 있습니다.

  • msinfo32.exe> ​​구성 요소> 저장소> 디스크> 파티션 시작 오프셋 (물리적 섹터 크기의 배수 또는 SSD의 경우 1,048,576 바이트의 배수인지 확인)

세 가지 다른 섹터 크기가 있습니다 : 드라이브의 물리 섹터 크기, 드라이브의 논리 섹터 크기 및 호스트 컴퓨터에 제시된 논리 섹터 크기. 드라이브가 섹터 크기 변환을 수행하는 브리지를 통해 연결된 경우 호스트 컴퓨터에 제공되는 논리 섹터 크기는 드라이브의 논리 섹터 크기와 다를 수 있습니다. 외장 USB 드라이브는 종종 인클로저 내부의 드라이브가있는 SATA 인터페이스의 논리 섹터 당 512 바이트에서 호스트 컴퓨터와의 USB 인터페이스의 논리 섹터 당 4096 바이트로 변환합니다. 이 변환을 통해 Windows XP는 2TB 이상의 드라이브를 사용할 수 있습니다 .

Windows 10의 fsutil은 드라이브의 물리 섹터 크기와 호스트 컴퓨터에 제시된 논리 섹터 크기를 알려줍니다.

C:> fsutil fsinfo sectorInfo c:
LogicalBytesPerSector :                                 512
PhysicalBytesPerSectorForAtomicity :                    4096
PhysicalBytesPerSectorForPerformance :                  4096
FileSystemEffectivePhysicalBytesPerSectorForAtomicity : 4096
Device Alignment :                                      Aligned (0x000)
Partition alignment on device :                         Aligned (0x000)

USB 브리지 뒤에있는 SATA 드라이브의 논리적 및 물리적 섹터 크기를 얻으려면 smartctl ( Windows 용 GSmartControl 패키지에 포함)을 사용하여 브리지를 통해 SMART 쿼리를 SATA 드라이브로 전달할 수 있습니다 .

C:\Program Files\GSmartControl> smartctl -a -d sat pd11
smartctl 6.5 2016-05-07 r4318 [i686-w64-mingw32-xp-sp3] (sf-6.5-1)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Green
...
Sector Sizes:     512 bytes logical, 4096 bytes physical

Windows XP의 기본 제공 도구로는 드라이브의 물리적 섹터 크기를 얻을 수 없습니다. 드라이브를 쿼리하려면 smartctl 또는 이와 유사한 도구를 사용해야합니다.

호스트 컴퓨터에 제시된 드라이브의 논리 섹터 크기를 얻으려면 :

  • msinfo32.exe> ​​구성 요소> 저장소> 디스크> 바이트 / 섹터. (Windows XP 이상에서 작동)
  • wmic DISKDRIVE get bytespersector, caption (Windows XP에서만 작동)
  • fsutil fsinfo ntfsinfo c: ( "섹터 당 바이트". Windows XP 이상에서 작동)
  • fsutil fsinfo sectorInfo c: ( "LogicalBytesPerSector". Windows 10 이상에서 작동)

호스트 컴퓨터에 표시되는 논리 섹터 크기를 변경하여 Windows XP 호환성위해 2TB가 넘는 많은 외부 USB Western Digital 드라이브를 구성 할 수 있습니다 .


-1

실제 HDD에는 제조업체에서 정의한 실제 섹터 크기 (최신 스토리지의 경우 512 또는 4096)가 있으며 그 위에 파일 시스템이 논리 섹터 크기를 만듭니다.

둘이 정렬되지 않은 경우 수정하는 데이터가 두 블록에 걸쳐 있으면 두 블록에서 읽고 수정하고 쓰게됩니다.

SSD의 경우 데이터 액세스에서 논리적으로 동일한 방식으로 작동하지만 물리적 섹터는 1024 (플래시 메모리로 인해)이므로 파티션을 적절하게 확인해야합니다 Align=1024.


2
이것은 실제로 저자의 질문을 다루지는 않습니다.
Ramhound
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.