parted 3.2は、1024MiBがデバイスの外側にあることを意味します(サイズは1024MiB)。

parted 3.2は、1024MiBがデバイスの外側にあることを意味します(サイズは1024MiB)。

インポートに問題があります。別れ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に変換できるようにしたい場合があります。未来へ。

関連情報