가져오는 데 문제가 있습니다.이별 3.2유효한 파티션 구성표를 수락하세요.이별 2.3(jessie와 wheezy를 사용하여 Debian에서 테스트했습니다.)
이별 3.2볼륨 끝까지의 파티션(1024MiB 크기의 볼륨에 1024MiB로 표시됨)은 허용되지 않으며 대신 오류가 발생합니다.
오류: 위치 1024MiB가 장치 /dev/loop0 외부에 있습니다.
다음은 재현할 수 있는 작은 스크립트입니다(GPT를 사용할 때도 발생함).
#!/bin/bash -x
truncate disk.raw --size="1024M"
device_path="$(losetup -f --show disk.raw)"
parted --script --align none $device_path -- mklabel msdos
parted --script --align none $device_path -- unit mib print free
parted --script --align none $device_path -- mkpart primary 0MiB 1024MiB
losetup -d $device_path
rm disk.raw
parted 2.3 출력 사용
+ truncate disk.raw --size=1024M
++ losetup -f --show disk.raw
+ device_path=/dev/loop0
+ parted --script --align none /dev/loop0 -- mklabel msdos
+ parted --script --align none /dev/loop0 -- unit mib print free
Model: (file)
Disk /dev/loop0: 1024MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
0.02MiB 1024MiB 1024MiB Free Space
+ parted --script --align none /dev/loop0 -- mkpart primary 0MiB 1024MiB
+ losetup -d /dev/loop0
+ rm disk.raw
parted 3.2 출력 사용
+ truncate disk.raw --size=1024M
++ losetup -f --show disk.raw
+ device_path=/dev/loop0
+ parted --script --align none /dev/loop0 -- mklabel msdos
+ parted --script --align none /dev/loop0 -- unit mib print free
Model: Loopback device (loopback)
Disk /dev/loop0: 1024MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
0.03MiB 1024MiB 1024MiB Free Space
+ parted --script --align none /dev/loop0 -- mkpart primary 0MiB 1024MiB
Error: The location 1024MiB is outside of the device /dev/loop0.
+ losetup -d /dev/loop0
+ rm disk.raw
보시다시피 3.2는 파티션이 시작되는 위치가 약간 다르지만 mkpart
허용만 [start] [end]
하고 허용하지 않으므로 영향을 미치지 않습니다 [start] [size]
.
물론 마지막 파티션을 줄이거나 볼륨을 늘리는 등의 해결 방법이 있지만 더 깊이 파고들어 이해하고 싶습니다.왜가끔은 이런 경우도 있습니다.
답변1
음, 기술적으로 크기가 1024MiB에 불과하고 궁극적으로 포괄적이라고 생각한다면 1024MiB는 외부입니다...
unit s
한번 시도해 보십시오 print free
. 그러면 해당 섹터에서 사용 가능한 것이 정확히 무엇인지 표시되고 최대 크기의 파티션을 생성할 수 있습니다. unit mib
너무 많은 반올림이 수행되어 올바르게 표시되지 않을 수 있습니다.
또는 정렬로 인해 여전히 일부 여유 섹터가 남을 수 있지만 ;를 100%
사용할 수도 있습니다 .[end]
또한 GPT 파티션 구성표를 사용하면 보조 GPT 헤더가 있기 때문에 끝까지 갈 수 없습니다.
다른 이유로 끝에 약간의 공간을 남겨 두는 것도 의미가 있습니다. 모든 드라이브가 정확히 같은 크기는 아니며 현재 msdos 파티션을 사용하고 있더라도 어느 시점에서는 GPT로 변환할 수 있기를 원할 수 있습니다. 미래에.