Está correto em princípio, mas você pode considerar reduzi-lo a uma única chamada parted
.
parted --script /device \
mklabel gpt \
mkpart primary 1MiB 100MiB \
mkpart primary 100MiB 200MiB \
...
Seu problema de alinhamento é provavelmente porque você usa MB
em vez de MiB
. Você não deve precisar de um comando align-check
real ao criar partições em MiB
boundaries / em um dispositivo conhecido.