Parted diz que não está alinhado, mas deveria estar correto

Parted diz que não está alinhado, mas deveria estar correto
Model: ATA Samsung SSD 850 (scsi)
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start        End            Size           File system  Name  Flags
 1      24576B       1048575B       1024000B                          bios_grub
 2      1048576B     537919487B     536870912B     fat32              boot, esp
 3      537919488B   1611661311B    1073741824B    zfs
 4      1611661312B  500107845119B  498496183808B  zfs

parted /dev/sda align-check optimal 1
> 1 not aligned
parted /dev/sda align-check optimal 2
> 2 aligned
parted /dev/sda align-check optimal 3
> 3 aligned
parted /dev/sda align-check optimal 4
> 4 aligned

O tamanho do setor diz 512B, mas internamente estou supondo 4096B porque é um SSD, de qualquer forma, deve ser divisível 24576 / 512 = 48,. 24576 / 4096 = 6Existe alguma razão pela qual parted diz que não está alinhado.

Estou ciente de que esta configuração atual não deve ter nenhum efeito no desempenho, pois ela só é lida (se é lida) na inicialização, mas estou apenas curioso para saber por que é relatada como está.

Para referência, o layout da partição é aquele sugerido pelo Debian ZFS no Root (https://openzfs.github.io/openzfs-docs/Getting%20Started/Debian/Debian%20Buster%20Root%20on%20ZFS.html)

Responder1

Tente align-check minimal 1, deve estar tudo bem com isso.

Independentemente do que a parte considerariaótimopara o seu hardware, a otimização do layout da partição para memória flash deve levar em consideração que os chips são organizados emPáginas eapagar blocos.

Você simplesmente não pode simplesmente substituir umpágina. O processador que controla o dispositivo deve primeiro apagá-lo e o apagamento só é possível em unidades muito maiores que o tamanho da página.

Quando o tamanho da página do seu dispositivo provavelmente estiver na faixa de 2 KB a 32 KB, oapagar blocoo tamanho normalmente estará entre 128 KB e 2 MB (64 vezes mais), dependendo da capacidade do disco. 4 MB não é incomum na categoria de GB.

** Todas as operações no drive só podem acontecer nestas unidades **

=> Esqueça o tamanho da página, abra as fichas técnicas do seu dispositivo específico, encontre o tamanho doapagar blocosem seguida, alinhe suas partições de acordo.

Tome cuidado: foi uma época em que a Samsung brincava com muitosurpreendentevalores e não particularmente ansioso para divulgar esta informação.

Responder2

Está "não alinhado", mas também não importa para a bios_grubpartição. O Grub armazena apenas alguns kilobytes de dados, que são lidos uma vez durante a inicialização. Alinhar ou não, não fará diferença na prática.

Versões recentes partedpodem ser mais detalhadas sobre a mensagem de alinhamento:

# parted --version
parted (GNU parted) 3.3
Copyright (C) 2019 Free Software Foundation, Inc.
...
# parted /dev/loop0 align-check optimal 1
1 not aligned: 48s % 2048s != 0s

Portanto, “não está alinhado” em termos de alinhamento MiB. Também pode não estar alinhado, considerando que os SSDs podem usar páginas de 4K, 8K, 16K internamente, portanto, 6*4K é um valor um pouco estranho para alinhar.

O objetivo ao criar a partição dessa forma não é o alinhamento, mas sim maximizar o uso do espaço. Embora seja difícil encontrar um caso de uso em que o Grub realmente precise de mais do que apenas alguns setores.

Se você quiser "consertar" de qualquer maneira, você pode colocar a bios_grubpartição no deslocamento de 1 MiB e fazer com que a boot, esppartição comece em 2 MiB, deixando a área atualmente ocupada bios_grubcomo espaço livre não particionado.

Mas não haverá alteração na funcionalidade ou no desempenho. Não há problema em ignorar e deixar como está.

informação relacionada