Linux에서 GPT 전용 파티션 테이블을 구축하는 방법은 무엇입니까?

Linux에서 GPT 전용 파티션 테이블을 구축하는 방법은 무엇입니까?

지금까지 시도한 모든 도구는 처음 4개의 GPT 파티션이 호환되는 MBR 파티션에 미러링되는 이중(GPT 및 MBR) 파티션 테이블만 생성할 수 있습니다.

이것은 내가 원하는 것이 아닙니다. 나는 순수한 GPT 파티션 테이블을 원합니다. 즉, 디스크에 MBR 테이블이 없어 둘 사이에 동기화가 없습니다.

이것이 가능한가?

답변1

편집 문제를 해결하려면:

지금까지 귀하의 질문에 대한 편집 내용을 확인하지 못했습니다. 지금 글을 쓰고 있는 지금, 이 질문은 제가 처음 답변했을 때와는 완전히 다릅니다. 이것거울당신이 설명하는 것은아니요사실 스펙상으로는 꽤 위험하고 추악한 해킹이기 때문에 이렇게 불리고 있습니다.하이브리드 MBR파티션 형식. 이 질문은많은이제는 훨씬 더 의미가 있습니다. 그리고 실제로는 전혀 어리석지 않습니다.

GPT 디스크와 GPT 디스크의 주요 차이점혼합막 생물반응기디스크는 GPT이고 MBR에서는 설명합니다.전체 디스크단일 MBR 파티션으로, 반면혼합막 생물반응기헤징을 시도할 것이다(매우 못생긴)호환성상의 이유로 처음 4개의 파티션이 포함하는 영역만 설명합니다. 이 상황의 문제는하이브리드 MBR호환성을 위한 시도처음부터 GPT 보호 MBR의 목적을 완전히 무효화합니다..

아래에서 언급했듯이,보호 MBR~해야 한다보호하다어리석은 응용 프로그램의 GPT 디스크이지만 일부 디스크가 해당 응용 프로그램에 할당되지 않은 것으로 나타나면 모든 베팅은 취소됩니다.도움이 된다면 하이브리드 MBR을 사용하지 마세요.- Mac의 경우 이는 다음을 의미합니다.Bootcamp기본 구성을 사용하지 마세요.

일반적으로 EFI/GPT 관련 문제에 대한 조언을 구하는 경우아무데도(약간의 우회를 제외하고여기먼저) 하지만Rodsbooks.com.


에헴...

이것(이전에)좀 어리석은 질문입니다. GPT 디스크 없이 GPT 디스크를 파티션하는 방법을 묻는 것 같습니다.보호 MBR. 이 질문에 대한 대답은 할 수 없다는 것입니다. GPT는 디스크 파티션 테이블 형식 표준이고 표준이기 때문입니다.지정하다디스크 헤드에 위치한 보호 MBR입니다. 바라보다?

여기에 이미지 설명을 입력하세요.

당신이 할 수 있는 일은 MBR을 지우거나 덮어쓰는 것입니다.최대GPT 지원 응용 프로그램은 어쨌든 파티션 데이터에 액세스할 수 없지만이유방지하기 위해 사양에 포함되어 있습니다.아니요- 파티션 테이블과의 충돌을 방지하기 위한 GPT 인식 애플리케이션. 이는 전체 디스크가 이미 단일 MBR 유형 파티션임을 보고하는 것만으로 이를 방지하며 이미 공간이 할당되었기 때문에 누구도 디스크에 파일 시스템을 쓰려고 시도해서는 안 됩니다. MBR을 제거하면 이 보호 기능이 제거됩니다.

어쨌든 방법은 다음과 같습니다.

  • 이렇게 하면 4G가 생성됩니다../imgNUL로 가득 찬 파일...

    </dev/zero >./img \
    dd ibs=4k obs=4kx1k count=1kx1k
    

    1048576+0 records in
    1024+0 records out
    4294967296 bytes (4.3 GB) copied, 3.38218 s, 1.3 GB/s
    
  • 이렇게 하면 분할된 테이블이 작성됩니다.보호 MBR.

    • 의 각 printf매개변수 뒤에는 ewline이 오고 표준 입력 \n에 기록됩니다 .gdisk
    • gdisk이러한 명령을 대화형으로 입력한 것처럼 해석하고 그에 따라 작업을 수행합니다.GUID 파티션 테이블그것은 우리 머리에 기록되어 있습니다./img문서.
    • 모든 터미널 출력은 다음으로 덤프됩니다.>/dev/null (너무 많기 때문에 이제 결과를 살펴 보겠습니다.).

      printf %s\\n o y n 1 '' +750M ef00 \
                       n 2 '' '' '' ''   \
                   w y | >/dev/null      \
      gdisk ./img      
      
  • 그 결과 첫 번째 2K에 pr수반되는 오프셋이 4열 형식으로 표현됩니다.strings./img.

    <./img dd count=4 |
    strings -1 -td    | 
    pr -w100   -t4
    

    4+0 records in
    4+0 records out
    2048 bytes (2.0 kB) copied, 7.1933e-05 s, 28.5 MB/s
    

        451 *           1033 K           1094 t           1212 n
        510 U           1037 >           1096 e           1214 u
        512 EFI PART    1039 ;@fY        1098 m           1216 x
        524 \           1044 30          1153 =           1218
        529 P           1047 L           1158 rG          1220 f
        531 (           1050 E           1161 y=i         1222 i
        552 "           1065 w           1165 G}          1224 l
        568 V           1080 E           1170 $U.b        1226 e
        573 G           1082 F           1175 N           1228 s
        575 G           1084 I           1178 C           1230 y
        577 y           1086             1180 b           1232 s
        583 G           1088 S           1185 x           1234 t
        602 Ml          1090 y           1208 L           1236 e
       1024 (s*         1092 s           1210 i           1238 m
    

MBR이 어디에서 끝나는지 알 수 있죠? 바이트 512.

  • 처음 512바이트에 512개의 공백을 씁니다../img.

    <>./img >&0 printf %0512s
    

이제 우리 노동의 성과를 살펴보겠습니다.

  • gdisk이것은 대화형 실행입니다../img.

    gdisk ./img
    

    GPT fdisk (gdisk) version 1.0.0
    
    Partition table scan:
      MBR: not present
      BSD: not present
      APM: not present
      GPT: present
    
    Found valid GPT with corrupt MBR; using GPT and will write new
    protective MBR on save.
    

    Command (? for help): p
    

    Disk ./img: 8388608 sectors, 4.0 GiB
    Logical sector size: 512 bytes
    Disk identifier (GUID): 0528394A-9A2C-423B-9FDE-592CB74B17B3
    Partition table holds up to 128 entries
    First usable sector is 34, last usable sector is 8388574
    Partitions will be aligned on 2048-sector boundaries
    Total free space is 2014 sectors (1007.0 KiB)
    
    Number  Start (sector)    End (sector)  Size       Code  Name
       1            2048         1538047   750.0 MiB   EF00  EFI System
       2         1538048         8388574   3.3 GiB     8300  Linux filesystem
    

답변2

상황에 따라 항상 2TB 이상의 파티션을 생성해야 합니다. 당신은 사용해야합니다헤어졌다주문하다.

파티션 명령을 생성하기 전에 디스크 레이블을 GPT로 설정해야 합니다. GPT는 GUID 파티션 테이블 형식(GPT)을 나타냅니다. 아래와 같이 parted의 mklabel 명령을 사용하여 디스크 레이블을 GPT로 설정합니다.

# parted /dev/sdb
GNU Parted 2.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) print
Error: /dev/sdb: unrecognised disk label

(parted) mklabel gpt

(parted) print
Model: Unknown (unknown)
Disk /dev/sdb: 5909GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

2TB 이상의 파티션을 생성하려면 Parted mkpart를 사용하세요.

2TB보다 큰 파티션을 생성하려면 아래와 같이 parted의 mkpart 명령을 사용하십시오. 이 예에서는 약 6TB 크기의 파티션을 생성합니다.

#parted /dev/sdb

(parted) mkpart primary 0GB 5909GB

(parted) print
Model: Unknown (unknown)
Disk /dev/sdb: 5909GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      1049kB  5909GB  5909GB               primary

관련 정보