UDF의 파티션 ID / 파일 시스템 유형은 무엇입니까? 파일을 처리하지 않으며 Linux에서는

UDF 형식의 CD / DVD / Blu-Ray에서 cfdisk를 사용하여 확인하는 것이 쉽지는 않지만 그 중 어느 것도 가지고 있지 않습니다.

Linux와 Windows 컴퓨터간에 데이터를 공유하기 위해 USB 하드 드라이브에 UDF 형식 파티션을 만들었습니다 (FAT는 4GB 파일을 처리하지 않으며 Linux에서는 NTFS 액세스 권한 지원이 안정적이지 않습니다). 파일 시스템 유형 ID가 ’83′( ‘Linux’)로 설정되어 있으므로 Windows에서 파티션을 마운트하지 않습니다. 나는 매우 광범위하게 보았고 거기에 몇 개의 숫자를 넣어야합니까?

(추적 : ” 하드 드라이브를 UDF로 포맷 하려면 어떤 도구를 사용해야합니까? “)



답변

답은 파티션 유형 06 (FAT16)입니다. 이유를 묻지 말고 Microsoft에 문의하십시오.


답변

UDF에 대한 파티션 테이블 이없고 할당 된 파티션 ID가 없음 이 밝혀졌습니다 . 이 파일 시스템은 Windows가 인식 할 수 있도록 전체 디스크를 확장해야합니다. 하드 드라이브를 UDF로 포맷하면 기존 파티션 테이블을 건드리지 않습니다 (주의하십시오-오래된 정보가 포함되어 있으며이를 사용하여 드라이브를 마운트하면 데이터가 손상됩니다!).

호기심으로-UDF 2.5 이상은 메타 데이터에 대해 별도의 파티션 (디스크 당 하나 또는 두 개)을 만듭니다. 그러나 이러한 파티션은 표준 DOS 파티션 테이블에도 표시되지 않습니다.


답변

짧은 대답 : UDF 파티션에 MBR id 0x07 을 사용하는 것이 좋습니다 .


긴 대답 :

Linux는 MBR 파티션 ID를 신경 쓰지 않으며 무시합니다 (*).

Windows 2000 이상은 IsRecognizedPartition (PartitionType) 이 true 인 경우에만 PartitionPart 가있는 일부 파티션에 드라이브 문자를 할당 할 수 있습니다 . 또한 비 FT 파티션의 경우 IsFTPartition (PartitionType) 이 false 인 경우를 유지해야합니다 (그렇지 않으면 파티션이 일반 FAT / NTFS / UDF / …가 아닌 FT로 감지 됨).

조건 IsRecognizedPartition (PartitionType) &&! IsFTPartition (PartitionType) 은 MBR 파티션 ID 0x01, 0x04, 0x06, 0x07, 0x0B, 0x0C, 0x0E (**)에 적용됩니다. 이는 MBR 파티션 ID 중 하나 인 경우 Windows 2000 (및 새로운)이 UDF 파티션을 인식하고 사용할 수 있음을 의미합니다. 다른 제한 사항이 없을 수 있으며 지원되는 파일 시스템은 해당 MBR ID가있는 파티션을 승인합니다. 이는 해당 MBR ID가 파일 시스템 감지에 사용되지 않음을 의미합니다.

그러나 특정 PartitionType을 사용해야 할 경우 Microsoft에서 권장 하는 사항 이 있습니다.

  • 0x01-FAT12 주 파티션 또는 논리 드라이브 (볼륨에서 32,680 개 미만)
  • 0x04-FAT16 파티션 또는 논리 드라이브 (32,680–65,535 섹터 또는 16MB–33MB)
  • 0x06-BIGDOS FAT16 파티션 또는 논리 드라이브 (33MB–4GB)
  • 0x07-설치 가능한 파일 시스템 (NTFS 파티션 또는 논리 드라이브)
  • 0x0B-FAT32 파티션 또는 논리 드라이브
  • 0x0C-BIOS INT 13h 확장을 사용하는 FAT32 파티션 또는 논리 드라이브 (***)
  • 0x0E-BIOS INT 13h 확장을 사용하는 BIGDOS FAT16 파티션 또는 논리 드라이브 (***)

또한 Microsoft의 의미 :

  • 0x01-12 비트 FAT 항목이있는 파티션을 지정합니다.
  • 0x04-16 비트 FAT 항목이있는 파티션을 지정합니다.
  • 0x06-MS-DOS V4 대용량 파티션을 지정합니다.
  • 0x07-IFS 파티션을 지정합니다.
  • 0x0B-FAT32 파티션을 지정합니다.
  • 0x0C-Windows 95/98 : 확장 INT 13 서비스를 사용하는 파티션을 지정합니다.

Wikipedia에서 몇 가지 권장 사항을 찾을 수 있습니다.

  • 0x01-CHS / LBA-DOS 2.0 이상-첫 번째 실제 32MB 디스크의 기본 파티션으로 FAT12 … (대신 0x06 사용)
  • 0x04-CHS / LBA-DOS 3.0 이상-65536 섹터 미만의 FAT16 (32MB) … (대신 0x06 사용)
  • 0x06-CHS / LBA-DOS 3.31+-65536 이상의 섹터가있는 FAT16B 첫 번째 실제 8GB의 디스크에 있어야합니다 (대신 0x0E를 사용하십시오). 첫 번째 실제 32MB의 디스크에 상주하지 않는 경우 기본 파티션의 FAT12 및 FAT16 볼륨에도 사용됩니다.
  • 0x07-CHS / LBA-OS / 2 1.2 이상, Windows NT / CE-IFS / HPFS / NTFS / exFAT / QNX
  • 0x0B-CHS / LBA-DOS 7.1+-CHS 주소 지정이 포함 된 FAT32
  • 0x0C-LBA-DOS 7.1 이상-LBA가 포함 된 FAT32
  • 0x0E-LBA-DOS 7.0 이상-LBA가 포함 된 FAT16B

ID 목록을 완성하려면 UDF 형식의 하드 디스크 파티션을 지원하지 않는 이전 시스템에 대한 정보가 있습니다.

Windows NT 4.0 및 이전 버전은 MBR ID가 0x01, 0x04, 0x06, 0x07 인 파티션에만 드라이브 문자를 할당 할 수 있습니다.

DOS 기반 Windows (95, 98 및 ME)는 MBR ID가 0x01, 0x04, 0x06, 0x0B, 0x0C, 0x0E 인 MBR ID를 가진 파티션에만 드라이브 문자를 할당 할 수 있습니다. MS-DOS 자체는 MBR ID가 0x01, 0x04, 0x06 인 파티션에만 액세스 할 수 있습니다. 이 시스템은 파일 시스템 감지에 MBR 파티션 ID를 사용합니다. MBR 파티션 ID는 파티션의 파일 시스템과 일치해야합니다.

결론:

파티션 크기 확인 : 0x01 및 0x04는 디스크의 첫 32MB에있는 파티션에만 사용해야합니다. 첫 번째 8GB 디스크에만 0x06. 0x0B는 8GB 디스크에 제한이있는 CHS 주소 지정을위한 것입니다. 따라서 이러한 제한이 없으면 0x07, 0x0C 및 0x0E와 같은 ID 만 있습니다. FAT 파티션에 0x0C 및 0x0E가 사용되므로 0x07 을 선택하는 것이 좋습니다 . IFS (Installable File System) 파티션을 의미하며 위키 백과에 따르면 Microsoft는 UDF에 대한 지원을 Windows 2000 IFS API에 추가했습니다. 0x0C 또는 0x0E를 사용하면 DOS 기반 시스템에서 해당 파티션을 FAT로 표시하고 심지어 UDF로 포맷해도됩니다. MBR ID가 0x07 인 파티션은 해당 시스템에서 숨겨집니다. UDF를 지원하지 않으므로 0x0C 또는 0x0E로 선택하는 것이 좋습니다.

GPT :

GPT 파티션 레이아웃은이 질문에서 벗어 났지만 MBR과 비슷한 문제가 있습니다. UDF에 할당 된 파티션 GUID (MBR id와 동등한 GPT)가 없습니다. Windows XP x64는 UDF를 지원하고 GUID EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (Microsoft Basic Data Partition) 에서만 GPT 데이터 파티션을 인식 할 수 있기 때문에 GPT 에 대한 유일한 선택입니다.

출처 :


(*) 한 가지 예외가 있습니다. MBR ID 0x05, 0x0F 및 0x85는 확장 MBR 파티션 감지에 사용됩니다.
(**)이 두 호출의 정의는 C 매크로로 선언 된 WinIoCtl.h 파일에서 찾을 수 있습니다.
(***) BIOS INT 13h 확장은 CHS 대신 LBA를 사용함을 의미합니다.


답변

내가 다루는 CD와 DVD에는 파티션 테이블이 없습니다. USB 하드 드라이브에서 파티션 테이블을 미디어에 썼습니다. 파티션 테이블을 사용하지 않고 전체 드라이브를 UDF 디스크로 포맷하면 Windows에서 마운트하는 데 아무런 문제가 없습니다.

USB 드라이브의 크기를 말하지 않고 전체 드라이브를 UDF로 전용 화하는 것을 꺼려 할 수 있습니다. fdisk를 사용하여 파티션 유형을 NTFS로 설정하거나 다른 MS ‘지원’유형 중 하나를 설정해보십시오.


답변

나는 같은 문제가 있습니다. 내 USB 하드 디스크는 320GB입니다. 파티션 테이블은 다음과 같습니다 :

Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x44fdfe06

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       27963   224612766    c  W95 FAT32 (LBA)
/dev/sda2           27964       38913    87955875    5  Extended
/dev/sda5           27964       33366    43399566    7  HPFS/NTFS
/dev/sda6           33367       38913    44556246   83  Linux

파티션 sda5는 UDF rev입니다. 1.5 및 shoulb은 Windows XP 이상에서 읽을 수 있습니다. 리눅스는 물론 그것을 잘 읽습니다. 그러나 윈도우는 혼란 스럽다. 파티션을 NTFS로 인식 한 다음 원시 파티션이라고 가정합니다.

pendrive에서 UDF를 사용한 실험에서 시스템이 UDF를 FAT로 착각하는 경향이 있음을 알 수있었습니다. 그들은 UDF를 FAT로 해석합니다. 임의 문자의 디렉토리 구조를 볼 수 있기 때문에 상당히 큰 유사성이어야합니다. 리눅스는 디스크가 손상되었지만 사용을 거부하지 않는다고 말합니다.

USB 드라이브에서는 UDF (적어도 rev 1.5)가 제대로 지원되지 않는다고 생각합니다.


답변