특정 거리가 아닌 정확한 크기의 파티션을 만들려면 어떻게 해야 합니까?
나는 시도했다:
parted -a optimal /dev/sdd mkpart primary 0% 0%+1GB
# and...
parted -a optimal /dev/sdd mkpart primary 0% +1GB
소용이 없습니다.
끝 거리 대신 크기를 허용하려면 어떻게 해야 합니까?
답변1
parted
나는 절대적인 것만을 받아들이고 그것을 받아들이지 않는다고 믿습니다 x+y
.
다음을 수행할 수 있습니다. ( +
쉘로 해석됨)
# start=1
# size=512
# parted /dev/loop0 unit mib mkpart primary $start $(($start+$size))
# parted /dev/loop0 unit mib print free
Model: Loopback device (loopback)
Disk /dev/loop0: 1000MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
0.02MiB 1.00MiB 0.98MiB Free Space
1 1.00MiB 513MiB 512MiB primary
513MiB 1000MiB 487MiB Free Space
...더 많은 콘텐츠를 추가하고 싶다면
# start=$(($start+$size+1))
# size=128
# parted /dev/loop0 unit mib mkpart primary $start $(($start+$size))
# parted /dev/loop0 unit mib print free
Model: Loopback device (loopback)
Disk /dev/loop0: 1000MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
0.02MiB 1.00MiB 0.98MiB Free Space
1 1.00MiB 513MiB 512MiB primary
513MiB 514MiB 1.00MiB Free Space
2 514MiB 642MiB 128MiB primary
642MiB 1000MiB 358MiB Free Space
이것은 +1
완전히 선택 사항입니다. 어떤 이유로 파티션 사이에 1MiB의 여유 "버퍼"를 남겨 두는 것이 좋습니다.
백분율을 처리하려는 경우 쉘을 사용하여 쉘에서 장치 크기를 가져올 수도 있으므로 blockdev --getsize64 /dev/device
parted의 모든 수학을 쉘 스크립트로 이동할 수 있습니다. parted
확신이 없었기 때문에 MiB 정렬 파티션을 보장하기 위해 이 작업을 수행했습니다 -a optimal
.