2 Split Disk
tengel edited this page 2024-09-05 08:27:27 -05:00

Cut a disk in half based on sectors, skipping the first 2048

#!/usr/bin/env bash

DISK="/dev/xvdb"; OFFSET=2048 \
  parted ${DISK} unit s print 2>/dev/null | \
  grep "^Disk ${DISK}" | \
  awk -v OFF=${OFFSET} '{gsub(/s$/,"",$3); \
    printf "STA1=%s\nEND1=%s\nLEN1=%s\nSTA2=%s\nEND2=%s\nLEN2=%s\n",
            OFF,(($3/2)-OFF),((($3/2)-OFF)-OFF),
            ((($3/2)-OFF)+1),$3,($3-((($3/2)-OFF)+1))
  }'

# example output
STA1=2048
END1=78641152
LEN1=78639104
STA2=78641153
END2=157286400
LEN2=78645247