parted
usa unidades ímpares por padrão, por isso é melhor especificá-lo.
(parted) unit MiB
ou
(parted) mkpart ... 1MiB 1024MiB
Não há necessidade de fazer uma verificação de alinhamento se você souber que sua partição começa em 1MiB
.
O comando set 1 lba on
altera o tipo de partição para o Linux. Isso pode ser um pouco surpreendente, mas é normal que parted
set
altere os tipos de partição (outras opções são raid
, lvm
, ...).
Além desse detalhe, o resultado de suas operações é completamente idêntico. A diferença na saída é meramente um problema óptico.
Pode ser um remanescente do antigo (*) Se você quiser que o parted
que costumava criar os próprios sistemas de arquivos, em vez de partições apenas. ntfs
permaneça, você realmente precisa mkntfs
one.
Seu método interativo:
# dd if=/dev/zero of=MyDrive.img iflag=fullblock bs=1M count=1024 && sync
# parted MyDrive.img
GNU Parted 3.2
Using /dev/shm/MyDrive.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel msdos
Eu criei uma cópia dele neste momento para que possamos verificar e comparar o outro método:
(parted) ^Z
[1]+ Stopped parted MyDrive.img
# cp MyDrive.img MyDrive-Copy.img
# fg
Em diante:
(parted) mkpart primary NTFS 1 1024
(parted) align-check optimal 1
1 aligned
(parted) print
Model: (file)
Disk /dev/shm/MyDrive.img: 1074MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1024MB 1023MB primary ntfs lba
Mostra ntfs
e lba
, mas imprime novamente e desaparece:
# parted MyDrive.img
GNU Parted 3.2
Using /dev/shm/MyDrive.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: (file)
Disk /dev/shm/MyDrive.img: 1074MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1024MB 1023MB primary
Seu segundo método usando comandos de terminal, executados na cópia:
# parted MyDrive-Copy.img mkpart primary NTFS 1 1024
# parted MyDrive-Copy.img align-check optimal 1
1 aligned
# parted MyDrive-Copy.img print
Model: (file)
Disk /dev/shm/MyDrive-Copy.img: 1074MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1024MB 1023MB primary
Existe alguma diferença?
# cmp -l MyDrive.img MyDrive-Copy.img && echo Identical || echo Different
Identical
(Sem o método copy, eles teriam identificadores de disco diferentes, pois é aleatório toda vez que você mkpart
. Com partições GPT, cada partição individual também teria um PARTUID exclusivo, portanto o método não se aplica a outros esquemas de particionamento ou em vez disso, você precisa verificar o que os diferentes bytes representam.)
Então, você faz obter o mesmo resultado, a menos que os comandos sejam diferentes (não houve set
em seu primeiro exemplo).
(*)
Para tornar a confusão perfeita, após mkntfs
na partição, parted
detecta a presença do NTFS e set 1 lba on
não define mais o Linux como tipo de partição. Isso também significa que, com dados aleatórios no disco, você pode obter resultados aleatórios em sua tabela de partições.
Portanto, pode haver um ponto para especificar o NTFS quando você mkpart
depois de tudo. parted
lembra desse tipo para a sessão atual e age de acordo quando seleciona os tipos de partição. Traduzido para o terminal, pode ser melhor fazer tudo em um único comando.
# parted MyDrive.img \
mklabel msdos \
mkpart primary NTFS 1 1024 \
set 1 lba on \
align-check optimal 1 \
print
Model: (file)
Disk /dev/shm/MyDrive.img: 1074MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 1024MB 1023MB primary ntfs lba