Merge "Replace sfdisk partitioning with parted"
This commit is contained in:
commit
6e29b45d90
@ -11,36 +11,17 @@ source $_LIB/die
|
||||
|
||||
# Create 2 partitions for PPC, one for PReP boot and other for root
|
||||
if [[ "$ARCH" =~ "ppc" ]] ; then
|
||||
sudo sfdisk --force $IMAGE_BLOCK_DEVICE << EOF
|
||||
0,8,41 *
|
||||
,,L
|
||||
;
|
||||
EOF
|
||||
sudo parted -a optimal -s $IMAGE_BLOCK_DEVICE \
|
||||
mklabel msdos \
|
||||
mkpart primary 0 8cyl \
|
||||
set 1 boot on \
|
||||
set 1 prep on \
|
||||
mkpart primary 9cyl 100%
|
||||
else
|
||||
# sfdisk changed around 2.26 and was largely rewritten. The old
|
||||
# version defaults to c/h/s and interprets arguments as cylinders.
|
||||
# The new version defaults to sectors.
|
||||
#
|
||||
# Luckily, the old version has a -uS flag (ignored by the new
|
||||
# version) to interpret arguments as sectors. However, it
|
||||
# incorrectly calculates the c/h/s offset when finding free space,
|
||||
# and gets upset [1], requiring the use of --force.
|
||||
#
|
||||
# TODO: switch this to parted, or something saner (is there such a
|
||||
# thing when talking about partitioning?)
|
||||
#
|
||||
# The below command creates a partition that starts at 1MiB --
|
||||
# which is the standard place to start a partition these days --
|
||||
# and fills up the disk. The zeros are to ignore the other 3
|
||||
# primary partitions (probably not needed, but left for safety).
|
||||
#
|
||||
# [1] https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/1481158
|
||||
sudo sfdisk -uS --force $IMAGE_BLOCK_DEVICE << EOF
|
||||
2048 + L *
|
||||
0 0;
|
||||
0 0;
|
||||
0 0;
|
||||
EOF
|
||||
sudo parted -a optimal -s $IMAGE_BLOCK_DEVICE \
|
||||
mklabel msdos \
|
||||
mkpart primary 1MiB 100% \
|
||||
set 1 boot on
|
||||
fi
|
||||
|
||||
sudo partprobe $IMAGE_BLOCK_DEVICE
|
||||
|
Loading…
Reference in New Issue
Block a user