Tout d'abord, je crée une partition correctement alignée dans une nouvelle table GPT en utilisant Parted en spécifiant des pourcentages pour le début et la fin de la partition:
# parted -a optimal /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mktable gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? Y
(parted) mkpart primary 0% 1%
(parted) p
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 2097kB 1049kB primary
(parted) quit
Notez que ce disque utilise le format avancé, mais indique correctement la taille du secteur physique de 4096B
à Parted. Regardons à nouveau, en utilisant les secteurs comme unité:
# parted -a optimal /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit s
(parted) p
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdb: 5860533168s
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 2048s 4095s 2048s primary
(parted) quit
2048s
et non 34s
qui est le premier secteur possible ?34s
n'est pas un secteur de départ correctement aligné si la taille du secteur physique est 4096B
et que la taille de secteur logique (celle spécifiée dans Parted) est 512B
. Un secteur de départ correctement aligné est divisible par 8
(puisque la taille du secteur physique/la taille du secteur logique = 8
). Mais cela signifie que 40s
est le premier secteur de départ correctement aligné, mais il n’est pas utilisé. Pourquoi?Si nous essayons de créer une partition correctement alignée de capacité 100MiB
à partir de 40s
dans une nouvelle table de partitions GPT:
# parted -a optimal /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? Y
(parted) mkpart primary 40s 204839s
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) unit MiB
(parted) p
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdb: 2861588MiB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 0.02MiB 100MiB 100MiB fat32 primary
(parted)
(parted) unit s
(parted) p
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdb: 5860533168s
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 40s 204839s 204800s fat32 primary
(parted)
Warning: The resulting partition is not properly aligned for best performance.
, même si 40s
et 204840s (204839s
+ 1) sont divisibles par 8
. Pourquoi?Parted, c'est simplement être trop conservateur. De nos jours, la pratique habituelle consiste à aligner les partitions sur des limites de 1 Mo (secteur 2048), car cela fonctionne sur les disques au format avancé, sur certains types de configurations RAID nécessitant un alignement et sur la plupart des SSD. Pour un disque au format avancé, tant que l'alignement est sur un multiple de 8, tout va bien, et 2048 est un multiple de 8. L'espace disque perdu est négligeable - 0,0000336% de votre espace disque total, si je l'avais fait les maths à droite et ne rien dactylographier. Alors ne vous inquiétez pas pour ça; utilisez simplement l’alignement 1MiB.