1TB MBR SSD에서 4TB GPT SSD로 복제하는 방법은 무엇입니까?

1TB MBR SSD에서 4TB GPT SSD로 복제하는 방법은 무엇입니까?

1TB 하드 드라이브가 장착된 Raspberry Pi가 있습니다. 용량이 꽉 차서 교체할 새 4TB 하드 드라이브를 구입했습니다.

그런 다음 "Macurim Reflect"라는 소프트웨어를 사용하여 이전 1TB SSD와 모든 데이터를 새로운 4TB HDD에 복제했습니다. 그런 다음 파이가 크기 조정을 인식하도록 다음 Linux 명령을 실행했습니다.

sudo growpart /dev/sda 1
sudo resize2fs /dev/sda1

이 방법은 작동하지만 시스템 크기를 2TB로만 조정합니다. 그러다가 2TB가 로 포맷된 드라이브의 한계 MBR이고 GPT더 큰 드라이브는 포맷해야 한다는 것을 알게 되었습니다.AWS Ubuntu에서 2TB 이상으로 파티션을 확장할 수 없습니다.)

참고: 위 문장 외에 MBR이나 GPT가 실제로 무엇을 의미하는지 전혀 모르겠습니다.

4TB 드라이브의 전체 크기를 즐기고 싶지만 현재 1TB의 데이터를 잃고 싶지 않습니다.

나는 이것을 실행하려고합니다 :

umbrel@umbrel:~ $ sudo gdisk /dev/sda1
[sudo] password for umbrel:
GPT fdisk (gdisk) version 1.0.3

Partition table scan:
  MBR: not present
  BSD: not present
  APM: not present
  GPT: not present

Creating new GPT entries.

Command (? for help): ?
b   back up GPT data to a file
c   change a partition's name
d   delete a partition
i   show detailed information on a partition
l   list known partition types
n   add a new partition
o   create a new empty GUID partition table (GPT)
p   print the partition table
q   quit without saving changes
r   recovery and transformation options (experts only)
s   sort partitions
t   change a partition's type code
v   verify disk
w   write table to disk and exit
x   extra functionality (experts only)
?   print this menu

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): ^C

그러나 나는 이 경고에 불안해져서 THIS WILL OVERWRITE EXISTING PARTITIONS프로세스를 종료했습니다.

어떻게 해야 합니까? 아무것도 잃지 않고 전체 4TB 스토리지 용량을 즐기려면 어떤 구체적인 명령을 실행할 수 있습니까?


편집: fdisk -l /dev/sda출력:

umbrel@umbrel:~ $ sudo fdisk -l /dev/sda
[sudo] password for umbrel:
Disk /dev/sda: 3.7 TiB, 4000787030016 bytes, 7814037168 sectors
Disk model: 500SSD1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 627B1CC3-E53B-4D77-85C7-A111816F4628

Device     Start        End    Sectors Size Type
/dev/sda1   2048 4294967295 4294965248   2T Linux filesystem

답변1

1.) Linux에 4TB 디스크를 추가하세요. 지금 컴퓨터에 두 개의 하드 드라이브가 있다고 가정합니다. /dev/sda 및 /dev/sdb

2.) fdisk /dev/sdb <= 4TB 디스크여야 합니다.

3.) g 새로운 빈 GPT 파티션 테이블을 생성합니다

아름다운. 이제 gpt 디스크가 생겼습니다. 하지만 이것은 Disklabe 유형일 뿐이며 파티션이 아닙니다. 이제 디스크를 파티션해야 합니다.

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

4.) n 새 파티션 추가

5.) Enter 키를 누릅니다.

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

그러나 이것만으로는 충분하지 않습니다. BIOS 모드로 부팅하면 운영 체제는 이전 디스크의 시작 부분에 MBR을 저장합니다. 이는 GPT 디스크에는 적용되지 않습니다. 부팅 모드를 UEFI로 변경해야 합니다. 하지만 시작 방법을 변경하면 GRUB를 수정해야 합니다.

BIOS 부팅을 유지하기로 결정한 경우 다음 지침을 따르십시오.

BIOS 부팅 방법을 유지하는 쉬운 방법이 있습니다. 4TB 디스크에 큰 파티션을 생성하기 전에 먼저 작은 파티션을 생성하세요. 1MB보다 커야 합니다. 유형을 "BIOS Boot"로 변경합니다.

준비가 되면 데이터용 추가 파티션을 만드세요.

이제 컴퓨터에 두 개의 파티션이 있어야 합니다.GPT 라벨이 붙은 디스크.

a.) 4TB 디스크의 첫 번째 파티션으로 100MB BIOS 부팅 파티션.

b.) 4TB 디스크의 두 번째 파티션으로 3999GB Linux 파티션.

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

6.) 구성에 익숙하다면 "w"를 누르는 것을 잊지 마세요.

이것은 단지 파티션일 뿐입니다. 최소한 Linux 파티션에 파일 시스템을 생성해야 합니다.

$ sudo mkfs.xfs /dev/sdb2
meta-data=/dev/sdb2              isize=512    agcount=4, agsize=124607 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=0 inobtcount=0
data     =                       bsize=4096   blocks=498427, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
Discarding blocks...Done.

아직 끝나지 않았습니다. 새 디스크의 BIOS 부팅 파티션이 비어 있기 때문입니다. 그래서 그것을 고쳐야합니다.

1.) 기존 디스크 데이터 전체를 새 디스크에 복사합니다.

$ mkdir /mnt/4TB
$ cp -av /* /mnt/4TB

1.) 이것은국제 표준화기구.

2.) 디스크에서 부팅하고 지침을 따릅니다.

모든 것이 순조롭게 진행되면 GRUB가 복구되고 데이터 손실 없이 새 디스크에서 기존 OS를 부팅할 수 있습니다.

관련 정보