特定の距離ではなく正確なサイズのパーティションを作成する


11

特定の距離ではなく正確なサイズのパーティションを作成するにはどうすればよいですか?

私が試してみました:

parted -a optimal /dev/sdd mkpart primary 0% 0%+1GB
# and...
parted -a optimal /dev/sdd mkpart primary 0% +1GB

無駄に。

終了距離ではなくサイズを受け入れるようにするにはどうすればよいですか?


どのようなエラーメッセージが表示されますか?DOESのparted -a optimal /dev/sdd mkpart primary 0GB 10GB作品?
terdon

回答:


7

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/devicepartedからすべての計算をシェルスクリプトに移動できます。私が何についてあまりにもわからないんだないように私は、MIB-整列パーティションを保証するために、これを行うpartedことにより、正確に意味します-a optimal

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.