나는 다음과 같은 하드 드라이브를 가지고 있습니다
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Disk identifier: 0xfa6bd800
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 821247 409600 7 HPFS/NTFS/exFAT
/dev/sda2 821248 210991103 105084928 7 HPFS/NTFS/exFAT
/dev/sda3 210991104 317941759 53475328 83 Linux
/dev/sda4 420343806 625141759 102398977 5 Extended
/dev/sda5 435689472 507955096 36132812+ 83 Linux
/dev/sda6 507955200 566546431 29295616 83 Linux
/dev/sda7 566548480 625141759 29296640 83 Linux
/dev/sda8 420345856 435687423 7670784 82 Linux swap / Solaris
최근에 Windows에서 파티션을 복원했습니다. 할당되지 않은 공간을 사용하기 위해 "확장 파티션" /dev/sda4를 왼쪽으로 확장하고 싶습니다. /dev/sda4가 420343806에서 317941760(/dev/sda3의 끝)까지 확장될 수 있음을 알 수 있습니다. gparted에서 이 작업을 시도했지만 실패했습니다.
GParted 0.12.1 --enable-libparted-dmraid
Libparted 2.3
Move /dev/sda4 to the left and grow it from 97.66 GiB to 126.95 GiB 00:00:00 ( ERROR )
calibrate /dev/sda4 00:00:00 ( SUCCESS )
path: /dev/sda4
start: 420,343,806
end: 625,141,759
size: 204,797,954 (97.66 GiB)
move partition to the left and grow it from 97.66 GiB to 126.95 GiB 00:00:00 ( ERROR )
old start: 420,343,806
old end: 625,141,759
old size: 204,797,954 (97.66 GiB)
requested start: 358,901,760
requested end: 625,139,711
requested size: 266,237,952 (126.95 GiB)
libparted messages ( INFO )
Unable to satisfy all constraints on the partition.
Can't have overlapping partitions.
그래서 파티션 확장을 위해 fdisk를 사용해 보았습니다.
나는 이것이 다음 단계라고 생각합니다. 1. /dev/sda4를 삭제합니다. 2. 317941760에서 625141759까지 새로운 확장 파티션을 생성합니다. 3. /dev/sda4의 resize2fs
하지만 이렇게 하면 논리 파티션이나 데이터가 손실됩니까? 아니면 다른 길로 가야 할까요?
답변1
gparted가 이것을 할 수 있는지 모르겠습니다. 대부분의 파티셔너는 확장 파티션을 삭제/재생성할 때 sda5-x를 제거합니다.
sfdisk를 사용해 볼 수 있습니다.
# sfdisk -d /dev/sda > sda.original
그러면 아래와 같이 파티션 레이아웃 덤프가 생성됩니다.
# /dev/sda의 파티션 테이블 단위: 부서 /dev/sda1: 시작=2048, 크기=4194304, ID=c /dev/sda2: 시작=4198400, 크기=2097152, ID=83, 부팅 가능 /dev/sda3: 시작=6297600, 크기=20971520, ID=83 /dev/sda4: 시작=27271168, 크기=3844096, ID=f /dev/sda5: 시작=27273216, 크기=1918976, ID=83 /dev/sda6: 시작=29194240, 크기=1918976, ID=83
이 덤프의 복사본을 만들고 원하는 대로 수정하세요.
# cp sda.original sda.modified # nanosda.modification
따라서 귀하의 경우 /dev/sda4를 420343806에서 317941760으로 확장하려면 sda.modified 파일에서 /dev/sda4 항목의 start= 번호를 바꾸십시오.
수정이 완료되면 로드할 수 있습니다.
# sfdisk /dev/sda < sda.modified
문제가 발생하면 편집 내용을 조정하거나 원래 상태로 되돌릴 수 있습니다.
# sfdisk /dev/sda < sda.original
sfdisk를 사용하는 방법입니다.
분리된 경우 크기 조정이 작동하지 않으면 다음을 사용하여 파티션 오프셋과 크기를 매우 주의 깊게 기록해야 합니다.
#parted /dev/sda 장치 b 무료 인쇄 > sda.parted
그러면 다음과 같은 파일이 생성됩니다.
모델: 범용 저장 장치(scsi) 디스크/개발자/sda: 15931539456B 섹터 크기(논리적/물리적): 512B/512B 파티션 테이블: msdos 디스크 플래그: 번호 시작 끝 크기 유형 파일 시스템 플래그 32256B 1048575B 1016320B 사용 가능한 공간 1 1048576B 2148532223B 2147483648B 1차 지방 32 lba 2148532224B 2149580799B 1048576B 사용 가능한 공간 2 2149580800B 3223322623B 1073741824B 기본 ext2 부팅 3223322624B 3224371199B 1048576B 사용 가능한 공간 3 3224371200B 13961789439B 10737418240B 메인 ext2 13961789440B 13962838015B 1048576B 사용 가능한 공간 4 13962838016B 15931015167B 1968177152B 확장 lba 5 13963886592B 14946402303B 982515712B 논리적 ext2 6 14947450880B 15929966591B 982515712B 논리적 ext2 15929966592B 15931015167B 1048576B 사용 가능한 공간 15931015168B 15931539455B 524288B 사용 가능한 공간
섹터와 같은 다른 단위를 선택할 수 있습니다. 이 경우 해석할 여지가 전혀 없기 때문에 바이트를 선호합니다. 미디어에 따라 파티셔닝 소프트웨어는 때때로 섹터 크기 등에 대해 다른 견해를 갖습니다.
정확한 파티션 오프셋, 크기 및 유형을 알고 있으면 parted에서 간단히 mklabel(파티션 테이블 재설정)을 수행하고 처음부터 새 파티션을 다시 만들고, 유지하려는 파티션을 다시 만들고, 변경하려는 파티션을 변경할 수 있습니다.
이러한 옵션 중 어느 것도 파티션의 파일 시스템을 수정하거나 크기를 조정하는 데 아무런 영향을 미치지 않습니다. 따라서 이 해결 방법은 이 문제를 직접 처리할 수 있거나 여유 공간에 새로운 빈 파티션을 생성하려는 경우에만 작동합니다.