Clonezilla를 사용하여 Ubuntu 디스크를 미러링하려고 하는데 오류 메시지가 표시되어 실패합니다.
오류에는 파티션이 겹칠 수 없습니다.
내 디스크가 설정되는 방법과 출력은 다음과 같습니다 lsblk
.
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop1 7:1 0 42,2M 1 loop /snap/snapd/14066
nvme0n1 259:0 0 953,9G 0 disk
├─nvme0n1p5 259:3 0 976M 0 part [SWAP]
└─nvme0n1p1 259:1 0 952,9G 0 part /
이것이 출력이다fdisk -l /dev/nvme0n1
Disk /dev/nvme0n1: 953,9 GiB, 1024209543168 bytes, 2000409264 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6e617337
Device Boot Start End Sectors Size Id Type
/dev/nvme0n1p1 * 2048 1998407679 1998405632 952,9G 83 Linux
/dev/nvme0n1p2 1998409726 2000397734 1988009 970,7M 5 Extended
/dev/nvme0n1p5 1998409728 2000408575 1998848 976M 82 Linux swap / Sola
gparted에는 다음과 같이 표시됩니다.
디스크를 이미지화/저장할 수 있도록 이 오류를 수정하는 방법에 대한 제안 사항이 있습니까?
답변1
다음에서 수정된 답변:MBR 테이블에서 겹치는 파티션을 수정하는 방법. 이것을 시도해 볼 수 있지만 스왑 및 논리 파티션을 삭제하는 것이 더 간단한 해결책이라고 생각합니다.
파티션 테이블 복구
sfdisk
:
Live Ubuntu 디스크를 사용하여 부팅합니다.
디스크 장치의 문제를 확인하세요
/dev/sda
.parted
sudo parted /dev/sda unit s print which should show: Error: Can't have overlapping partitions.
파티션 세부정보는 다음을 통해 확인할 수 있습니다.
sudo fdisk -l -u /dev/sda
귀하의 게시물을 바탕으로 다음 사항을 안내해 드립니다.
Disk /dev/nvme0n1: 953,9 GiB, 1024209543168 bytes, 2000409264 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6e617337
Device Boot Start End Sectors Size Id Type
/dev/nvme0n1p1 * 2048 1998407679 1998405632 952,9G 83 Linux
/dev/nvme0n1p2 1998409726 2000397734 1988009 970,7M 5 Extended
/dev/nvme0n1p5 1998409728 2000408575 1998848 976M 82 Linux swap / Solaris
/dev/nvme0n1p2
겹치는 부분을 확인하세요. 확장 파티션이 스왑 파티션보다 작은 것을 확인할 수 있습니다/dev/nvme0n1p5
.
더 명확하게 말하면 스왑 파티션은 확장 파티션 내부에 있으므로 이상적으로는 확장 파티션 크기보다 작아야 합니다. 하지만 당신의 경우에는스왑 크기가 논리 파티션 크기보다 큽니다.그 자체.
Device Size
/dev/nvme0n1p2 970,7M
/dev/nvme0n1p5 976M
즉, nvme0n1p2의 끝 섹터는 nvme0n1p5의 끝 섹터보다 커야 합니다. 하지만 당신의 경우에는
nvme0n1p2가 종료되었습니다.=2000397734
nvme0n1p5 종료됨=2000408575
여기에 문제가 있습니다.
이제 gparted를 사용하여 스왑 파티션 크기를 줄이는 것만으로 이 문제를 해결할 수 있습니다. (~600MB - 700MB)
또는 명령줄 도구를 사용할 수 있습니다.
sfdisk
SF디스크 사용
- 제안대로문서저것 -"시작 섹터 또는 끝 섹터에 문제가 있는지 알 수 없는 경우 각 파티션의 시작 섹터가 정확하고 끝 섹터에 오류가 있을 수 있다고 가정합니다.", 확장 파티션의 시작 섹터
nvme0n1p2
가 정확하다고 가정합니다. 따라서 우리는 스왑 파티션의 끝 섹터를 변경하려고 합니다nvme0n1p5
.계산하다:
nvme0n1p5 새로운 끝=nvme0n1p2가 종료되었습니다.- 1 = 2000397734 - 1 = 2000397733
nvme0n1p5 새로운 크기= nvme0n1p5 새로운 끝- nvme0n1p5 시작= 2000397733 - 1998409728 =1988005
- 파티션 테이블의 복사본을 파일로 덤프하려면 다음 명령을 사용하십시오
sfdisk
.
sudo sfdisk -d /dev/sda
파티션 테이블 세부정보를 덤프해야 합니다. 이는 파일로 덤프되고 필요한 수정을 거친 후 피드백될 수 있습니다sfdisk
.OP에:sudo sfdisk -d /dev/sda
질문을 편집하고 ]의 출력을 포함하십시오.파티션 테이블의 복사본을 덤프하려면 다음 명령을 사용하십시오.
sudo sfdisk -d /dev/sda > sda-backup.txt
원하는 텍스트 편집기를 사용하여 루트 권한으로 이전 단계에서 생성된 파일을 엽니다. 이 예에서는
nano
.sudo nano sda-backup.txt (`sda-backup.txt` assuming the file is in the current directory, else repalce it with the file's absolute
길. )
nvme0n1p5
새 파티션 테이블 덤프가 다음과 같이 보이도록 ( )의 이전 크기를1998848
수정된 크기( )로 변경합니다.1988005
출력은 op에 의해 추가되지 않습니다.
파일을 저장하고( Ctrl+ O의 경우
nano
) 편집기를 닫습니다( Ctrl+ X의 경우nano
).
다음 명령을 사용하여 수정된 파티션 세부 정보를 파티션 테이블에 피드백합니다
sfdisk
.sudo sfdisk /dev/sda < sda-backup.txt
parted
디스크 장치에서 다음을 실행하여 문제가 해결되었는지 확인하십시오.sudo parted /dev/sda unit s print
9단계에서 파티션 테이블이 복구되었음을 확인하면 다음을 사용할 수 있습니다.고팟또는 장치의 다른 파티션 편집기.
GParted 문서에서는 다음을 사용하여 대안을 제안합니다. 테스트 디스크디스크 장치를 스캔하여 파티션 테이블을 재구축하세요. testdisk 응용 프로그램은 다음에 포함되어 있습니다.GParted 라이브. 따라서 명령줄 방식이 만족스럽지 않다면 다른 방법을 시도해 볼 수 있습니다.
Gparted 사용
unmount your swap partition before continuing
- 현재 상태
- 루트 파티션 크기 조정
- 크기 조정 전 루트 파티션
- 크기가 조정된 루트 파티션
- 루트 파티션 이후에 빈 공간이 생성됨
- 스왑 삭제
- 논리 파티션 삭제
- 루트 파티션을 제외한 모든 파티션이 삭제되었습니다.
- 새 논리 파티션 생성
- 파티션 앞에 여유 공간을 남겨두고(겹치지 않도록) 파티션 유형을 다음과 같이 선택합니다.
Extended partition
- 이제 이렇게 보일 것입니다
- 스왑 파티션 생성
- 파티션을 나눈 후 여유 공간을 초과하지 않도록 여유 공간을 남겨두고 파일 시스템을 다음과 같이 선택하십시오.
linux swap
- 이제 이렇게 보일 것입니다
- 새로 교환된 UUID를 복사하여 다음으로 바꿉니다.
/etc/fstab